漏洞分析 | 挖掘 .NET SqlSugar 框架SQL注入
2024-12-6 08:20:0 Author: mp.weixin.qq.com(查看原文) 阅读量:4 收藏

01

阅读须知

此文所节选自国内最专业的 [ .NET 代码审计 ] 体系化学习社区,主要内容有涉及.NET代码审计体系化星球包括但不限于OWASP十大漏洞类型,涉及SQL注入漏洞、文件上传下载漏洞、任意文件操作漏洞、XML外部实体注入漏洞、跨站脚本攻击漏洞、反序列化漏洞、命令执行漏洞、未授权和越权漏洞、第三方组件漏洞等等。

02

基本介绍

SqlSugar 是一款针对国内.NET环境的开源ORM框架,支持多库架构,兼容众多数据库系统,包括MySql、SqlServer、PostgreSQL、Oracle、Sqlite、Firebird、ClickHouse、QuestDB、达梦、南大通用GBase、神通、人大金仓、虚谷、翰高、华为GaussDB以及MsAccess等,同时允许用户自定义适配其他数据库。

03

ORM注入

以下是一个以GetList方法为例的示例代码,展示了攻击者如何向MappingColumn方法SQL注入,具体代码如下所示。

public IActionResult GetData(string name)
{
var list = _db.Queryable<UserInfo>()
.Where(it => it.NickName.Contains(SqlFunc.MappingColumn<string>(name)))
return Ok(list);
}

这段代码是一个.NET Core控制器中的方法,SqlFunc.MappingColumn用于将传入的name参数映射为SQL查询中的列,若开发者在使用此方法时从外部传入参数,则会产生SQL注入漏洞。当我们提交包含注入的负载时,便会返回当前数据库版本号,如图所示。

想要了解更多.NET代码审计的视频或文章,可以移步《.NET 代码审计》星球社区。

04

欢迎加入.NET代码审计星球

.NET代码审计体系化星球包括但不限于OWASP十大漏洞类型,涉及SQL注入漏洞、文件上传下载漏洞、任意文件操作漏洞、XML外部实体注入漏洞、跨站脚本攻击漏洞、反序列化漏洞、命令执行漏洞、未授权和越权漏洞、第三方组件漏洞等等。

1. 学习模式: 代码审计知识星球在线录播视频 +后续漏洞挖掘直播、内部专属交流社区答疑解惑;

2. 优享福利:加入.NET代码审计星球后赠送永久dot.Net安全基础入门星球。

欢迎对.NET代码审计关注和关心的同学加入我们 [dot.Net安全代码审计] ,目前已有近 100+ 位朋友抢先预定。

现在加入星球可享受星球早鸟价,并可领取100元优惠券星球门票后期价格随着内容和质量的不断沉淀会适当提高,扫描下方二维码加入星球,越早加入越好! 期待在这里能遇到有情有义的小伙伴,大家聚在一起做一件有意义的事。


文章来源: https://mp.weixin.qq.com/s?__biz=MzUyOTc3NTQ5MA==&mid=2247497278&idx=1&sn=169a546ae3fc49b099dc54f68b7b5818&chksm=fa5958d3cd2ed1c510f4fb849cc2d2c03a8dc61d0d509b6550405b9e20962197f50ae3809fbc&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh