转载:记一次绕过安某狗的渗透

转载:记一次绕过安某狗的渗透

  • 前言
  • 信息收集
  • 绕过安全狗
  • 注入

前言

偶然得到一个站,记录一下渗透过程

信息收集

正常显示页面,这里我们可以得到的信息有:

1、网站是php的,显而易见。
2、web服务器为IIS7.5,平台为windows,如下。
转载:记一次绕过安某狗的渗透_第1张图片
转载:记一次绕过安某狗的渗透_第2张图片
随便输入fuzz一下,加个单引号
报错了,而且还将单引号转义了,可能存在注入
转载:记一次绕过安某狗的渗透_第3张图片
继续测试注入类型:

payload:' and 'a' = 'a

转载:记一次绕过安某狗的渗透_第4张图片
熟悉的界面

那么现在我们可以确认的是:

1、单引号被转义了,经过测试后双引号和反斜杠也被转义了,但是空格未被转义,猜测后端代码使用了 mysql_real_escape_string() 函数对id参数进行过滤
2、网站使用了安全狗,版本尚未明确

绕过安全狗

安全狗对于关键字过滤的十分严格,大小写、双写、符号都无法绕过
转载:记一次绕过安某狗的渗透_第5张图片
转载:记一次绕过安某狗的渗透_第6张图片
转载:记一次绕过安某狗的渗透_第7张图片
那继续尝试内联包裹关键字绕过
转载:记一次绕过安某狗的渗透_第8张图片
很不幸也被ban了

想到以前大佬有50001这种操作,那继续

payload:order/*!50001*/by/*!50001*/ 16

转载:记一次绕过安某狗的渗透_第9张图片
很不幸又被ban了,看来安全狗版本挺新的。

参考内联50001的原理,我们可以使用其他字符对其进行扰乱。

比如/*!80000aaa*/

转载:记一次绕过安某狗的渗透_第10张图片
成功绕过了安全狗

注入

接下来查询列数:
转载:记一次绕过安某狗的渗透_第11张图片
遍历可回显位置
转载:记一次绕过安某狗的渗透_第12张图片
可见 3和7是可回显的位置
查看当前用户,当前数据库:
转载:记一次绕过安某狗的渗透_第13张图片
转载:记一次绕过安某狗的渗透_第14张图片
继续注入所有数据库名
很高兴的是安全狗只waf掉了select 所以我也不用打那么多的 /!80000aaa/
转载:记一次绕过安某狗的渗透_第15张图片
既然只有两个数据库那就好说了
接下来梭哈即可
查表
转载:记一次绕过安某狗的渗透_第16张图片
查字段
转载:记一次绕过安某狗的渗透_第17张图片
查数据
转载:记一次绕过安某狗的渗透_第18张图片
md5跑一跑看看能不能出来
转载:记一次绕过安某狗的渗透_第19张图片
不得不说 https://www.somd5.com/ 很给力!

你可能感兴趣的:(优质转载,安全)