文章总结: ChromeAlone是一个基于Chromium浏览器的命令与控制框架,在DEFCON33大会上发布,它利用浏览器原生功能替代传统攻击性植入程序。该工具通过ChromeAPI实现持久化,使用WebAssembly进行代码混淆,利用隔离Web应用和扩展作为交付机制,可充当SOCKS代理、窃取浏览器会话、启动可执行文件、进行WebAuthn钓鱼等。防御者应监控可疑浏览器扩展安装和活动、审计WebAuthn异常行为、监视非预期的出站WebSocket/SOCKS流量。
综合评分: 89
文章分类: 渗透测试,WEB安全,红队,漏洞分析,安全工具
ChromeAlone – 一个基于浏览器的 C2 工具,将 Chrome 变成黑客的游乐场
Balaji
TtTeam
2025年8月16日 22:54
海南
翻译自 ChromeAlone – A Browser Based Cobalt Strike Like C2 Tool That Turns Chrome Into a Hacker’s Playground
免责声明:本博客文章仅用于教育和研究目的。提供的所有技术和代码示例旨在帮助防御者理解攻击手法并提高安全态势。请勿使用此信息访问或干扰您不拥有或没有明确测试权限的系统。未经授权的使用可能违反法律和道德准则。作者对因应用所讨论概念而导致的任何误用或损害不承担任何责任。
在 DEF CON 33 大会上,Praetorian Security 的安全研究员 Mike Weber 发布了 ChromeAlone——一个基于 Chromium 浏览器的命令与控制(C2)框架。它能够替代如 Cobalt Strike 或 Meterpreter 这类传统的攻击性植入程序。
曾几何时,网络浏览器不过是 HTTP 请求的封装工具。而今,它们已演变成功能丰富的复杂平台,其复杂程度堪比一个完整的操作系统。这种演进在带来便利的同时,也暴露了巨大的攻击面。
ChromeAlone 是一个开源框架,它巧妙地利用了浏览器的复杂性,通过内置的 Chrome 功能复现了传统命令与控制(C2)植入体的能力,并以此绕过大多数端点检测系统。
ChromeAlone 的独特之处在于其隐蔽性:它完全借助于 Chromium 的原生功能进行伪装,从而避免了端点检测与响应(EDR)解决方案通常会检测的典型恶意软件特征。
ChromeAlone 无需用户交互,即可将恶意组件旁加载到浏览器中,它主要利用了以下技术:
- 原生 Chrome API来实现持久化。
- WebAssembly (WASM)来实现代码混淆和反分析。
- 隔离的 Web 应用(Isolated Web App)和扩展作为其交付机制。
- 滥用浏览器功能以避免在磁盘上留下任何可疑的二进制文件。
其结果是一个功能强大且高度隐蔽的植入体,它能完美融入合法的浏览器活动中——这对那些专注于检测可执行文件而非浏览器扩展或其内部进程的传统杀毒软件和 EDR 系统构成了严峻挑战。
ChromeAlone 的核心能力
根据其项目介绍,ChromeAlone 植入体可以实现以下功能:
- 充当受感染主机的 SOCKS TCP 代理。
- 窃取浏览器会话和已存储的凭据。
- 从 Chrome 内部直接启动可执行文件。
- 针对 WebAuthn 提示进行钓鱼,可用于盗取 YubiKeys、Titan 安全密钥及其他物理认证器的验证信息。
- 无需传统的二进制文件即可实现持久化——完全依赖于 Chrome 的内置功能。
对红队而言,这意味着更强的隐蔽性和灵活性。而对蓝队来说,这意味着防御方需要关注一个新的入侵向量:浏览器本身。
ChromeAlone 操作分步指南
尽管该工具是为研究和授权测试而发布的,但其 README 文件详细说明了完整的部署流程。以下是简化的操作指南。
1. 构建 Docker 镜像
docker build -t chromealone
2. 部署基础设施
ChromeAlone 支持两种部署模式:
选项 A – 全新的 AWS 部署
要求:
-
一个拥有以下权限的 AWS 账户:
-
完整的 EC2 写入权限
-
Route53 DNS 管理权限
-
至少一个已注册域名的托管区域
-
AWS CLI 凭证已存储在
~/.aws/credentials中
命令:
docker run --rm -v $(pwd):/project -v ~/.aws:/root/.aws \chromealone --domain=sendmea.click --appname=UpdateService
--domain必须匹配您在 Route53 中控制的域名。--appname将用于注册表项和文件夹名——建议选择一个看起来无害的名称。
输出文件:
output/client– 基于 Web 的管理控制台output/sideloader.ps1– 用于攻击目标的 PowerShell 安装脚本output/extension– 恶意 Chrome 扩展output/iwa– 恶意隔离 Web 应用(IWA)包output/relay-deployment– Terraform 配置文件及用于 AWS 主机的 SSH 密钥
选项 B – 使用现有部署
如果您已经部署了一台服务器,只需将 ChromeAlone 指向您的 terraform.tfvars文件即可:
docker run --rm -v $(pwd):/project -v ~/.aws:/root/.aws \chromealone --tfvars=/project/path/to/terraform.tfvars --appname=UpdateService
此命令会重新生成侧加载器和恶意扩展,而无需重新部署基础设施。
3. 在目标主机上安装
将 sideloader.ps1复制到目标主机并运行:
powershell.exe -ExecutionPolicy Bypass -File .\sideloader.ps1
可选参数:
-InstallNativeMessagingHost $true→ 执行 shell 命令时需要此参数-ForceRestart $true→ 强制重启 Chrome 浏览器以立即激活
执行过程通常需要 20–30 秒。
4. 操作 ChromeAlone
部署完成后,在浏览器中打开:
output/client/index.html
这个预先配置好的 Web 应用会连接到 BATTLEPLAN中继服务器。
操作员可以通过该控制台执行以下操作:
- 转储浏览历史和 Cookies
- 捕获凭据
- 触发 WebAuthn 提示
- 浏览文件系统
- 执行 shell 命令
5. SOCKS 代理
每个受感染的主机在“代理信息”面板中都有一个唯一的 SOCKS 端口。
使用示例:
proxychains -q socks5 admin:[email protected]:1081 curl http://ifconfig.me
ChromeAlone 的内部工作原理
该项目包含以下几个专用组件:
- BATTLEPLAN– 管理服务器和 AWS 部署脚本
- BLOWTORCH– 用于 SOCKS 代理和 WebSocket 通信的隔离 Web 应用
- DOORKNOB– PowerShell 侧加载器生成器
- HOTWHEELS– 恶意的 Chrome 扩展(基于 WebAssembly 实现功能)
- PAINTBUCKET– WebAuthn 钓鱼脚本
尽管 ChromeAlone 是一个合法的渗透测试工具,但它揭示了一个日益增长的趋势:日常软件的武器化。浏览器正逐渐成为新的攻击向量和指挥中心。
防御者应采取以下措施:
- 监控可疑的浏览器扩展安装和活动。
- 审计 WebAuthn 活动中的异常行为。
- 监视非预期的出站 WebSocket/SOCKS 流量。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:TtTeam Balaji《ChromeAlone – 一个基于浏览器的 C2 工具,将 Chrome 变成黑客的游乐场》