WindowSpy 是一个 Cobalt Strike 信标对象文件,用于针对特定用户进行监控。该项目旨在仅在特定目标上触发监控功能,例如浏览器登录页面、机密文档、VPN 登录等。目的是通过防止重复使用监控功能(如截图)被检测,从而增加用户监控期间的隐蔽性。它还能节省红队筛选大量用户监控数据的时间,而这些数据如果持续运行键盘记录或屏幕监视功能就会产生。

每次信标回连时,BOF 在目标上运行。BOF 包含一个硬编码的字符串列表,这些字符串常见于有用的窗口标题中,例如 login、administrator、control panel、vpn 等。你可以自定义此列表并重新编译。它会枚举可见窗口,将标题与字符串列表进行比较,如果检测到任何匹配项,就会触发在 WindowSpy.cna 中定义的本地 aggressor 脚本函数 spy()。默认情况下,它会截取屏幕截图。你可以根据需要自定义此函数,例如键盘记录、WireTap、网络摄像头等。
spy() 函数有一个参数,$1 是触发该函数的信标 ID。
我构建这个是因为我无聊,且正在摆弄用户监控。如果有错误,请提交 issue。如果设计有任何问题,也欢迎提交 issue。
通常的免责声明:我对此糟糕的代码可能导致的任何危害人类罪行或核战争不承担责任。