01
阅读须知
此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他方面
02
应用介绍
某信息发布系统也称数字标牌,是指通过大屏幕终端显示设备,发布商业、财经和娱乐信息的多媒体专业视听系统,常被称为除纸张媒体、电台、电视、互联网之外的“第五媒体”。该系统基于Web的全B/S先进架构,支持大用户数、大并发数及权限管理,可以同时连接数千、上万个播放终端。
03
漏洞分析
经过路由转发至Upload方法,此接口存在漏洞的代码如下所示
1private void Upload(HttpRequest request, HttpResponse response)
2{
3 string text = request.Params.Get("remotePath");
4 text = request.MapPath(text);
5 string text2 = request.Params.Get("blockKey");
6 string fourth = "";
7 List<string> list = new List<string>();
8 bool flag = false;
9 try
10 {
11 if (request.Files.Count != 1)
12 {
13 throw new HFException("error file count " + request.Files.Count.ToString());
14 }
15 HttpPostedFile httpPostedFile = request.Files[0];
16 string text3 = Path.GetFileName(httpPostedFile.FileName);
17 text3 = this.FilterBadNameCharacter(text3);
18 string path = request.Params.Get("remotePath").ToLower();
19 httpPostedFile.SaveAs(text4);
20 this.ConvertFile(text4, text);
21 if (base.LogEnable)
22 {
23 StringBuilder stringBuilder2 = new StringBuilder();
24 stringBuilder2.Append(base.Translate("Upload File"));
25 stringBuilder2.Append(" : ");
26 stringBuilder2.Append(request.Params.Get("remotePath") + "/" + text3);
27 base.AddLog(stringBuilder2.ToString());
28 }
29 flag = true;
30 }
31
32}
核心的这段代码是一个上传文件的方法,接受一个 HttpRequest 对象和一个对象作为参数。首先从请求参数中获取远程路径 remotePath,并将其转换为服务器上的物理路径。
然后获取上传的文件对象,接着获取文件名并过滤其中的特殊字符,保存文件到服务器指定路径,并记录日志。
04
漏洞复现
该信息发布系统 QH.aspx 接口存在文件上传漏洞,未经身份验证的远程攻击者可利用此漏洞上传任意后门文件,执行恶意指令,从而获取服务器权限。
有关漏洞详情和具体复现的方法已发表于星球,师傅们可自行查阅资料。
05
欢迎加入知识库
为了更好地应对基于.NET技术栈的风险识别和未知威胁,dotNet安全矩阵星球从创建以来一直聚焦于.NET领域的安全攻防技术,定位于高质量安全攻防星球社区,也得到了许多师傅们的支持和信任,通过星球深度连接入圈的师傅们,一起推动.NET安全高质量的向前发展。只需199元就可以加入我们。
目前dot.Net安全矩阵星球已成为中国.NET安全领域最知名、最活跃的技术知识库之一,从.NET Framework到.NET Core,从Web应用到PC端软件应用,无论您是初学者还是经验丰富的开发人员,都能在这里找到对应的安全指南和最佳实践。
星球汇聚了各行业安全攻防技术大咖,并且每日分享.NET安全技术干货以及交流解答各类技术等问题,社区中发布很多高质量的.NET安全资源,可以说市面上很少见,都是干货。
星球文化始终认为授人以鱼不如授人以渔!加入星球后可以跟星主和嘉宾们一对一提问交流,20+个专题栏目涵盖了点、线、面、体等知识面,助力师傅们快速成长!其中主题包括.NET Tricks、漏洞分析、内存马、代码审计、预编译、反序列化、webshell免杀、命令执行、C#工具库等等。
我们倾力打造专刊、视频等配套学习资源,循序渐进的方式引导加深安全攻防技术提高以及岗位内推等等服务。
我们还有一个会员专属的星球陪伴群,加入的成员可以通过在群里提出问题或参与论的方式来与其他成员交流思想和经验。此外还可以通过星球或者微信群私聊向我们进行提问,以获取帮助迅速解决问题。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...