2022年08月28日,各大安全公司监测到很多主机被.locked后缀的勒索病毒加密,通过加密文件特征分析,确认此次勒索病毒为 TellYouThePass 变种。行业监管机构也第一时间通知各家单位高度重视,提醒警惕加强防范,全面排查相关系统资产,及时备份主机重要文件做好安全防护,严防勒索病毒攻击。经过本地搭建复现环境评估发现某通T+产品存在文件上传0day漏洞,且运行环境高权限风险共同导致的勒索事件。
由于系统采用了预编译模式,上传的aspx文件不能运行,所以漏洞虽然存在,但基本无实际危害,漏洞位于 /CommonPage/UserFileUpload.aspx,核心代码如下
protected void btUpLoad_ServerClick(object sender, EventArgs e)
{
if (this.myFileUpload.HasFile)
{
this.fileHepler.Path = "UserFiles";
bool flag = this.fileHepler.UpLoadUserFile(this.myFileUpload);
if (flag)
{
AjaxUserFileService.ReadFileInfo(ref this.info, Path.Combine(HttpContext.Current.Server.MapPath("~"), this.fileHepler.Path.TrimEnd(new char[]
{
'\\'
}) + "\\" + this.myFileUpload.FileName));
this.info.FileName = this.myFileUpload.FileName;
this.info.FileType = this.info.FileName.Substring(this.info.FileName.IndexOf("."), this.info.FileName.Length - this.info.FileName.IndexOf("."));
this.info.VoucherName = this.voucherName;
this.info.DtoID = ((this.dtoID == string.Empty) ? Guid.NewGuid() : new Guid(this.dtoID));
try
{
this.info.Creater = ((UserInfo)this.Session["UserInfo"]).UserName;
}
catch
{
}
this.info.CreateTime = DateTime.Now;
this.userfileService.UploadFile(this.info);
this.strRunScript = "top.window.returnValue ='OK';window.close();";
return;
}
this.strRunScript = "alert('" + this.fileHepler.MSG + "!');";
}
}
跟进fileHelper.UpLoadUserFile方法发现未作任何扩展名过滤,直接调用PostFile.SaveAs方法保存文件,这样说明可直接上传任意文件,但是关键是不能跨目录上传,因为在箭头指向的UploadFile.FileName属性获取时,用了System.IO.Path.GetFileName方法,此方法只能获取最后一个/开始后的文件名,所以在HTTP包里构造 Content-Disposition: form-data; name="myFileUpload"; filename="../../../x.aspx" 是行不通的。例如笔者上传了dotnetofbypass.aspx,访问后抛出未编译异常
为了更好地应对基于.NET技术栈的风险识别和未知威胁,dotNet安全矩阵星球从创建以来一直聚焦于.NET领域的安全攻防技术,定位于高质量安全攻防星球社区,也得到了许多师傅们的支持和信任,通过星球深度连接入圈的师傅们,一起推动.NET安全高质量的向前发展。
星球汇聚了各行业安全攻防技术大咖,并且每日分享.NET安全技术干货以及交流解答各类技术等问题,社区中发布很多高质量的.NET安全资源,可以说市面上很少见,都是干货。其中主题包括.NET Tricks、漏洞分析、内存马、代码审计、预编译、反序列化、webshell免杀、命令执行、C#工具库及0day等等,后续还会倾力打造专刊、视频等配套学习资源,循序渐进的方式引导加深安全攻防技术提高以及岗位内推等等服务。
我们的运营团队将一如既往地继续为大家做好服务,如果感兴趣的话欢迎参加下方的优惠劵活动加入我们,机不可失噢!原价¥129当前只需¥99, 以后星球价格只会越来越高,对.NET安全关注的师傅们动动手加入我们吧!
dotNet安全矩阵知识星球 — 聚焦于微软.NET安全技术,关注基于.NET衍生出的各种红蓝攻防对抗技术、分享内容不限于 .NET代码审计、 最新的.NET漏洞分析、反序列化漏洞研究、有趣的.NET安全Trick、.NET开源软件分享、. NET生态等热点话题、还可以获得阿里、蚂蚁、字节等大厂内推的机会。