我们友好的 Gmail 将充当服务器,植入程序将通过 SMTP 渗出数据,并通过 IMAP 协议从 C2(Gmail)读取命令。
自 2022 年 11 月 29 日 起,此项目无法绕过 Windows Defender。该工具现已被 MS Windows 标记为
virtool:msil/ "shgmailz." a!mtb。不过,我计划在不久的将来将此项目升级为名为 SharpGmailC2V2 的新版本。
🚫 [免责声明]:本项目仅用于教育/测试目的。在未经授权的机器上使用严格禁止。如发现有人将其用于非法/恶意意图,仓库作者将不承担任何责任。
在设置中间发送方和接收方 Gmail 账户时,请按照此(链接)[https://support.cloudhq.net/how-to-check-if-imap-is-enabled-in-gmail-or-google-apps-account/] 中的步骤启用 POP Download 和 IMAP Access。
启用 IMAP 和 POP 后,按照本文中的步骤生成应用密码 此处。如果在 Security 中看不到 App Password 设置,请先为 Gmail 账户启用两步验证(2FA)。
编译代码时,更新设置 emailToAddress、password 和 emailToAddress 的行。password 的值应设置为上一步生成的 App Password。另外,请注意 emailToAddress 和 emailToAddress 的值可以相同。
EAGetMail 库。Costura 和 Costura Fody,用于将所有 dll 捆绑在一起。这实际上使我的植入程序变大了,但就这种情况而言,我认为这并不重要,因为这个植入程序到目前为止还是 FUD :)。Unread 模式(如果不是,请标记为 Unread),因为植入程序会扫描 Last/latest Unread 邮件,并检查其是否以 "in:" 开头。如果确实以 "in:" 开头,它就会明白该特定文本正文是合法命令,并将该特定邮件标记为 Read,如此循环直至结束。以下是代码片段:
看起来 capa 根本无法检测到我 Client 植入程序的功能。但这无疑会引起怀疑,迫使恶意软件分析师对二进制文件进行二次检查。
我们可以看到,操作员通过 Gmail 发送的命令以及被渗出/发送出去的信息都经过 Gmail 的 TLS 加密。除此之外,(标记的)IP 地址一点也不可疑,换句话说,OPSEC 是安全的。
SharpGmailC2 会产生以下通用行为,可帮助防御者检测 SharpGmailC2 或利用 Gmail 邮件协议进行命令与控制(Command and Control)的其他进程:
imap.google.com 的 DNS 调用以及与其他 Google 域(例如 1e100.net.)的网络连接出现异常增加# Monitor high network connections from a particular processID
Channel=Microsoft-Windows-Sysmon
(EventID=3 OR EventID=22) (3=Network Connection, 22=DNS)
(DestinationHostname=*.1e100.net OR QueryName=*.gmail.com)
.dll 或 .exe)调用 powershell 进程Channel=Microsoft-Windows-Sysmon
EventID=1
CommandLine=powershell.exe
(ParentImage=*.exe OR ParentImage=*.dll)