某.NET仓库管理系统—WMS_APP服务端代码审计二
前言:本文中涉及到的相关技术或工具仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担,如有侵权请联系。
现在有送书链接:权限提升技术:攻防实战与技巧,快来学习~
由于微信公众号推送机制改变了,快来星标不再迷路,谢谢大家!
代码审计 | 某.NET仓库管理系统—WMS_APP服务端代码审计一
1、同样的RCE漏洞
上次通过对KeyValueJson.ashx页面的审计,发现了由于SQL server存储过程函数和参数值用户可控,以及通篇存在的未授权访问漏洞,从而造成了RCE。今天继续从下一个文件MoreOrderHandler.ashx开始。
所以这里同样的造成了RCE漏洞并且是有回显的。
看到这儿已经能明白这个程序的开发人员的思路了,首先会按照功能点将所有的SQL查询语句提前编译为存储过程(可以有效避免SQL注入),然后根据不同的查询功能以存储过程和对应的参数为各方法的参数进行传递。而这些方法也大同小异,都是根据传递来的存储过程和对应参数进行SQL查询操作,只不过有的是分页返回,有的是全部返回,有的只返回一行。
那么按照这个思路,可以查询到其他页面SelectObjectReturnJson.ashx,UpdateDeleteReturnJson.ashx中,存储过程都是用户可以控制的,自然而然也造成了这两处的RCE,但是其他的很多页面,存储过程都是写死的。如果所有的存储过程都能像其他代码中那样不是由用户通过http请求传递,那能够由用户控制的参数也就是存储对象的参数值,至少不会被通过利用SQL sever自带的一些存储过程来实现RCE。
2、SQL注入漏洞
总结
首发Freebuf,作者fishhero授权
原文链接:https://www.freebuf.com/vuls/395042.html
原文始发于微信公众号(不秃头的安全):代码审计 | 某.NET仓库管理系统——WMS_APP服务端代码审计二
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论