SQL注入原理 手工注入access数据库

SQL注入原理 手工注入access数据库

SQL注入是通过将SQL命令插入到web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意SQL指令的目的。

1.判断网站是否有注入点。

  在以asp?id=xx(任意数字)结尾的连接依次添加:

  • '
  • 1=1
  • 1=2

  若以上结果显示"数据库出错","正常显示","数据库出错"则该网站存在注入点。

2.猜解表名

  在链接末尾添加语句:

and exists(select * from admin)

  若存在表名为admin的表,则上述式返回true,即页面正常显示。

3.猜解列名

  在链接末尾添加语句:

and exists(select admin from admin)

  若admin表中存在名为admin的列,则上述式返回true,即页面正常显示。

  同理,检测表中是否存在名为password的列。

4.猜测字段内容

  • 首先猜测字段长度,在链接末尾添加语句:
and (select top 1 len(admin) from admin)>n

  若页面正常显示,则字段长度大于n。

  • 用同样的方法,猜测第一条记录的第一个字符,在链接末尾添加语句:
and (select top 1 asc(mid(admin,1,1)) from admin)>c

  若页面正常显示,则第一条记录的第一个字符的ASCII码大于c。

  • 同理,可以用二分法快速求得admin字段内容和password字段内容。
原文地址:https://www.cnblogs.com/barrier/p/6794411.html