sql注入笔记一——寻找sql注入点

sql注入笔记一——寻找sql注入点
最新回答
我萌怪我咯

2022-11-14 09:56:42

SQL注入点通常存在于HTTP请求的GET、POST参数中,但需注意Cookie、主机头(Host)、引用站点头(Referer)、用户代理头(User-Agent)等位置也可能被利用。

  • 单引号测试:在参数后添加单引号(如id=1'),若服务器返回数据库错误信息,则可能存在注入点。
  • 逻辑判断

    AND测试:通过构造and '1'='1(正常页面)和and '1'='2(异常页面)对比,若页面不同则存在注入。

    OR测试:使用or '1'='1(永真条件),若返回默认数据(如第一个用户信息),则可能存在注入。

  • 运算符测试

    数字型注入:通过数学运算(如id=3-1返回id=2的数据)验证注入。

    字符型注入:在字符串参数中插入空格或注释(如uname=ad' 'min),若成功绕过登录验证,则可能存在注入。

注意事项

  • 需区分数字型与字符型注入,前者直接处理数值,后者需闭合引号并处理字符串拼接。
  • 攻击者可能篡改HTTP头(如User-Agent、Host)中的数据,诱导服务器执行恶意SQL语句。

示例截图

  • 单引号测试报错:

  • AND逻辑测试:

  • OR逻辑测试:

  • 数字型注入测试:

  • 字符型注入测试: