🌀 鱼油のB10g

✦ 不定期更新技术随想

✦ 分享奇妙发现

📌 近期动态:

探索AI和工具使用...

SQL注入辨别注入点的常见方法

1.通过简单的测试语句判断

方法 1:AND 1=2测试

• 数字型注入:

• 输入:?id=1 AND 1=2

• 如果页面显示不正常(例如没有数据或报错),说明是数字型注入。

• 字符型注入:

• 输入:?id=1 AND 1=2

• 如果页面显示正常,说明是字符型注入。

方法 2:单引号和双引号测试

• 单引号测试:

• 输入:?id=1'

• 如果页面报错,说明是单引号闭合的字符型注入。

• 双引号测试:

• 输入:?id=1"

• 如果页面报错,说明是双引号闭合的字符型注入。

• 无报错:

• 如果两种测试都没有报错,说明可能是数字型注入。

2.通过构造闭合语句判断

方法 1:构造闭合语句

• 单引号闭合:

• 输入:?id=1' --+

• 如果页面正常显示,说明是单引号闭合的字符型注入。

• 双引号闭合:

• 输入:?id=1" --+

• 如果页面正常显示,说明是双引号闭合的字符型注入。

方法 2:测试不同类型的闭合

• 数字型注入:

• 输入:?id=1'

• 如果页面报错,说明是字符型注入。

• 字符型注入:

• 输入:?id=1'

• 如果页面不报错,说明可能是数字型注入。

3.通过布尔盲注判断

方法:布尔盲注测试

• 数字型注入:

• 输入:?id=1 AND 1=2

• 如果页面显示不正常,说明是数字型注入。

• 字符型注入:

• 输入:?id=1' AND 1=2 --+

• 如果页面显示正常,说明是字符型注入。

4.通过时间盲注判断

方法:时间盲注测试

• 数字型注入:

• 输入:?id=1 AND SLEEP(5)

• 如果页面延迟响应,说明是数字型注入。

• 字符型注入:

• 输入:?id=1' AND SLEEP(5) --+

• 如果页面延迟响应,说明是字符型注入。

5.通过联合查询判断

方法:联合查询测试

• 数字型注入:

• 输入:?id=1 UNION SELECT 1,2,3

• 如果页面显示联合查询的结果,说明是数字型注入。

• 字符型注入:

• 输入:?id=1' UNION SELECT 1,2,3 --+

• 如果页面显示联合查询的结果,说明是字符型注入。

总结

• 数字型注入:通常通过AND 1=2SLEEP(5)测试,页面显示不正常或延迟响应。

• 字符型注入:通常通过单引号或双引号闭合测试,页面报错或正常显示。

通过上述方法,你可以快速判断SQL注入点是字符型还是数字型,从而选择合适的注入策略。

posted on 2025-04-05 21:56  鱼油YOU  阅读(184)  评论(0)    收藏  举报