恶意 Go 加密模块窃取密码,部署 Rekoobe 后门
Source: The Hacker News
Source: https://socket.dev/blog/malicious-go-crypto-module-steals-passwords-and-deploys-rekoobe-backdoor
概述
网络安全研究人员披露了一个恶意 Go 模块,该模块会收集密码、创建持久化 SSH 访问,并部署名为 Rekoobe 的 Linux 后门。
该模块 github.com/xinfeisoft/crypto 伪装成合法的 golang.org/x/crypto 仓库。它注入代码,将通过终端密码提示输入的机密信息泄露到远程端点,随后获取并执行返回的 shell 脚本。
“此活动符合命名空间混淆和冒充合法 golang.org/x/crypto 子仓库(及其 GitHub 镜像 github.com/golang/crypto)的特征。合法项目将 go.googlesource.com/crypto 视为权威来源,并将 GitHub 视为镜像,威胁行为者利用这一区别,使 github.com/xinfeisoft/crypto 在依赖图中看起来像是常规的。” – Kirill Boychenko,Socket 安全研究员

后门工作原理
凭证收集
恶意代码被放置在 ssh/terminal/terminal.go 中。每当受害者的应用调用 ReadPassword()(用于从终端读取密码)时,模块会捕获输入的密码并将其发送到远程服务器。
部署脚本
下载的脚本充当 Linux 部署器:
- 将攻击者的 SSH 公钥追加到
/home/ubuntu/.ssh/authorized_keys。 - 将默认的
iptables策略设置为ACCEPT,放宽防火墙限制。 - 从外部服务器获取额外的负载文件,并使用
.mp5扩展名进行伪装。
负载
-
连通性助手 – 测试互联网连通性并在 TCP 端口 443 上联系 IP
154.84.63[.]184。可能用于侦察或作为加载器。 -
Rekoobe 后门 – 一种已知的 Linux 木马,自至少 2015 年起在野外被检测到。它可以从攻击者控制的服务器接收指令,以:
- 下载进一步的负载
- 窃取文件
- 启动反向 shell
Rekoobe 已在归因于中国国家级组织(如 APT31)的攻击中被观察到。

缓解措施与建议
- 该软件包仍然列在 pkg.go.dev 上,但 Go 安全团队已将其标记为恶意。
- 防御者应当:
- 审计 Go 依赖,查找冒充合法命名空间的伪装模块。
- 监控对
ReadPassword()或其他凭证处理函数的异常调用。 - 限制通过
curl | sh管道获取的远程脚本执行。 - 使用供应链安全工具验证模块来源(例如校验和验证、签名发布)。
“此类攻击可能会重复出现,因为其模式低成本高影响:一个冒牌模块挂钩高价值的边界(ReadPassword),利用 GitHub Raw 作为轮换指针,随后转向
curl | sh阶段并交付 Linux 负载。” – Kirill Boychenko