Web安全攻防 渗透测试实战指南 学习笔记 (二)

Web安全攻防 渗透测试实战指南   学习笔记 (二)

 

第二章  漏洞环境及实践

 
 
这里的环境就不一一介绍了,在后续实验中如果用到的话,我们再详细讲解搭建过程~
 
 

第三章  常用的渗透测试工具

 
 
 
  • Sqlmap

                              自动化的sql注入工具。
1.主要功能:扫描、发现、利用给定的url的sql注入漏洞,内置许多绕过插件。
 
2.支持的数据库:mysql、oracle、sql server、access、DB2、sqlite、postgresql、Firebird、sybase、sap maxDB。
 
3.采用5种注入技术:
 
[1]基于布尔的盲注:根据返回页面判断条件真假
[2]基于时间的盲注:使用条件语句查看时间延迟语句是否执行(页面返回时间是否增加)
[3]基于报错注入:返回错误信息,或将注入语句的结果返回页面中
[4]联合查询注入:在允许使用union的情况下注入
[5]堆查询注入:同时执行多条语句注入
 
 
4.用法
 
对于简单的sqlmap用法,本人已经在此篇文章中进行说明
 
 
下面讲解进阶的sqlmap用法
 
 
进阶:参数讲解
 
 
1>探测等级: --level 5
 
--level 5 指的是需要执行的测试等级
 
一共有5个等级(1-5) 不加 level 时,默认是1
5级包含的payload最多,会自动破解出cookie、XFF等头部注入,相对应他的速度也比较慢。
 
level=2 http cookie会测试
level=3 http user-agent/referer头会测试
 
在不能确定哪个payload或参数为注入点时,建议使用高的level值。
 
2>当前用户是否为管理权限: --is -dba
 
返回true则为是管理权限,否则不是
 
3>列出数据库管理员角色: --roles
 
注意:只适用于当前数据库是oracle的时候
 
4>HTTP Referer头: --referer
 
当level设置为3时,会尝试referer注入
 
也可以使用referer命令来欺骗 例如:
--referer 域名(https://www.baidu.com)
 
5>运行自定义sql语句:--sql -shell
 
例如:sqlmap.py -u “http://192.168.1.xxx/sql1/union.php?id=1” --sql -shell
 
 
 
6>运行任意操作系统命令: --os -cmd  
                                           --os -shell
 
 
用 --os -shell参数可以模拟一个真实的shell,输入想执行的命令
支持asp、asp.net、jsp、php四种语言
 
7>从数据库服务器中读取文件  --file-read
 
 
8>上传文件到数据库服务器中  --file-write
                                                --file-dest
 
用于写入本地文件到服务器中,当数据库为mysql、postgresql、microsoft sql server,且当前用户有权限使用特定函数时,上传的文件可以是文本也可以是二进制文件。
 
 
 
 
6.sqlmap自带绕过脚本tamper的讲解
 
sqlmap在默认情况下除了使用char()函数防止出现单引号,没有对注入的数据进行修改。
tamper参数对数据做修改来绕过WAF等设备,其中大部分脚本主要用正则模块替换攻击载荷字符编码的方式尝试绕过WAF的检测规则。
 
常用的tamper脚本:
 
 
 
 
 
 
 
 参考资料:

《Web安全攻防 渗透测试实战指南》

猜你喜欢

转载自www.cnblogs.com/0yst3r-2046/p/11012714.html
今日推荐