由于 Go 良好的跨平台特性,在多个操作系统与架构上都能运行,所以最近使用 Go 语言编写的恶意软件越来越多,每周都会发现大量的新样本。
在四月末,研究人员通过蜜罐发现了两个新的变种(Backdoorit和
Caligula),发现时在
VirusTotal 上无检出。
Backdoorit样本检出
Caligula样本检出
Backdoorit 与 Caligula 都是为多处理器架构编译的、跨平台 Go 恶意软件程序。
Backdoorit
Backdoorit(版本 1.1.51562578125)是一个使用 Go 语言开发的跨平台远控木马,支持 Windows 与 Linux
操作系统。在代码中,该恶意软件也被称为 backd00rit。
其 analyse-full 命令主要是窃取与 Minecraft 相关文件和 Visual Studio 与 Intellij 的项目。
恶意软件不仅局限于这些文件,某些命令(upload、basharchive、bashupload 等)支持窃取任意文件,某些命令(run、run-
binary 等)支持运行任意命令,某些命令(screenshot、ssfile 等)支持获取屏幕截图。
Backdoorit 开发者的母语应该不是英语,而是俄罗斯语。代码中的注释与字符串都是使用语法不正确的英文书写,还有一些使用俄文书写的字符串。
代码注释
攻击者还针对 VimeWorld 文件进行窃取,这是一个提供 Minecraft 服务器的俄罗斯项目,这也能佐证攻击者来自俄罗斯。
针对
VimeWorld 攻击
Backdoorit 运行后会检索环境信息,例如操作系统与用户名,然后不断尝试连接 C&C 服务器。
该恶意软件通过一组函数(backd00r1t_logging_*)记录所有执行的操作,这些日志通过 uploadlogs 和 uploadlogs-file
命令上传到 C&C 服务器,在异常的情况下可以自动上传。
遇到异常(backd00r1t_backdoor_handlePanic)时,会执行以下操作:
将日志发送到 C&C 服务器 /api/logsC&CJSONbackd00r1t_api_SendLogs
关闭与 C&C 服务器的连接
尝试重新连接
与 C&C 服务器连接后,攻击者会获取环境上下文数据。函数 backd00r1t_backdoor_SocketConnectionHandle
负责处理所有支持的命令,并调用 backd00r1t_backdoor_printMotd 显示此类信息:
上次连接时间
Backdoorit 版本
进程信息
活动连接
用户名
用户目录
用户 ID
登录
Gid
进程路径
模块自启动状态
Backdoorit 允许攻击者远程执行命令。analyse-full 命令可以将
Desktop、Documents、Downloads、Minecraft、VimeWorld、Visual Studio 与 IntelliJ
相关文件数据生成一个 report.txt 文件,并且上传到 Bashupload上,该服务最大可以上传
50GB 的文件。
攻击者可以通过 run-binary 命令下载并执行其他恶意软件,也可以通过 shell 命令执行任意命令。
kill-switch 命令会删除恶意软件本身,并且利用 CVE-2021-24098 漏洞使 Windows 操作系统崩溃。还能够通过
CVE-2021-28312 破坏硬盘 NTFS 信息,这会使文件信息(大小、时间、权限、数据内容)完全丢失,也就丢失了感染的证据。
Backdoorit 支持的完整命令列表为:
shell:生成可交互终端,Windows 平台使用 PowerShell、Linux 平台使用 Bash
help:显示帮助信息
toggle-path:启用或禁用切换路径
bell:启用或禁用铃声
clear-fallback:清空屏幕
background-logs:确定缓冲区大小,为存储日志
backdoor:显示远控木马信息
clear-code:重置字体样式
clear-color:重置 Shell 着色
colors/color:启用或禁用 Shell 着色
un-export:删除环境变量
export:添加环境变量
mkdir:创建文件夹
exit:退出
wcd:打印工作目录
motd:打印状态信息
get-asset:访问资产
extract-asset:将资产提取到指定路径
safe:禁用安全模式
open-file:打开文件
open:在浏览器中打开指定 URL
list-windows-disks:列出磁盘信息
cp:拷贝文件
rm:删除文件
cd:更改目录
ls:显示文件信息
cat:读取文件
checkupdates:检查更新
exploit:使用漏洞利用
autostart:进行持久化
autostart-update:更新持久化
exec:执行带有参数的命令
sysinfo:显示系统信息
Screenshot/ssfile/screen:创建屏幕截图
archiveapi:创建压缩文件,上传并删除本地文件
Create-archive:创建压缩文件
Uploadapi:将文件上传到指定服务器
uploadlogs-file:上传日志文件
uploadlogs:以JSON格式上传日志文件
upload:将文件上传到服务器
bashupload:将文件上传到 baseupload
bashdownload:通过 baseupload 下载
bashupload-parse:上传文件并获取链接地址
basharchive:创建压缩文件并上传到 baseupload
download:下载文件
bashdownload:通过 URL 下载文件
run:下载脚本并运行
run-binary:下载脚本并运行,只支持 Windows 平台
cls:清空屏幕
$STOP:终止 Backdoorit 运行
analyse-full:将所有相关文件信息合并上传
可见恶意软件还支持 checkupdates 命令,预计很快就能够看到 Backdoorit 的新版本。
Caligula
Caligula 是一个新出现的 IRC 跨平台恶意程序,能够执行 DDoS 攻击。
该恶意软件是用 Go 语言编写的,针对多种架构进行编译:
Intel 80386 32-bit
ARM 32-bit
PowerPC 64-bit
AMD 64-bit
目前通过 WSL 环境中的 os_user_Current 函数确定底层操作系统是 Linux 还是 Windows。
部分代码
Caligula 基于 Hellabot开发而来,该 Bot
能够在不丢失与 C&C 服务器的连接的情况下进行更新升级。
Caligula 重用了很多开源代码,包括 log15、fd、go-shellwords、go-isatty 和 go-colorable 等。
在野发现的样本都使用固定的信息连接 IRC 服务器:
主机:45.95.55.24:6667
频道:#caligula
用户名:由平台、当前用户和一个伪随机数组成,例如 [LINUX]kali-11066
如下所示,加入 Caligula IRC Net v1.0.0 僵尸网络:
部分代码
Caligula IRC Net v1.0.0 僵尸网络对外提供以下功能:
各种攻击方式
其源代码文件如下所示:
/root/irc/bot/attack/attack.go
/root/irc/bot/attack/methods.go
/root/irc/bot/attack/parser.go
/root/irc/bot/attack/flags.go
/root/irc/bot/network/header.go
/root/irc/bot/network/ip.go
/root/irc/bot/network/tcp.go
/root/irc/bot/routine/timedRoutine.go
/root/irc/bot/attack/methods/httpflood.go
/root/irc/bot/attack/methods/sshflood.go
/root/irc/bot/attack/methods/synflood.go
/root/irc/bot/attack/methods/tcpflood.go
/root/irc/bot/attack/methods/udpflood.go
/root/irc/bot/handle.go
/root/irc/bot/singleInstance/singleinstance.go
/root/irc/bot.go
结论
由于原生的跨平台支持,与开发效率较高的特性,攻击者越来越青睐使用 Go 语言开发恶意软件,特别是针对 Linux 操作系统的恶意软件。
自然而然的,很多恶意程序相继在 GitHub 上开源,并且被攻击者广泛利用。
IOC
34366a8dab6672a6a93a56af7e27722adc9581a7066f9385cd8fd0feae64d4b0
147aac7a9e7acfd91edc7f09dc087d1cd3f19c4f4d236d9717a8ef43ab1fe6b6
1945fb3e2ed482c5233f11e67ad5a7590b6ad47d29c03fa53a06beb0d910a1a0
4a1bb0a3a83f56b85f5eece21e96c509282fec20abe2da1b6dd24409ec6d5c4d
6cfe724eb1b1ee1f89c433743a82d521a9de87ffce922099d5b033d5bfadf606
71b2c5a263131fcf15557785e7897539b5bbabcbe01f0af9e999b39aad616731
99d523668c1116904c2795e146b2c3be6ae9db67e076646059baa13eeb6e8e9b
fe7369b6caf4fc755cad2b515d66caa99ff222c893a2ee8c8e565121945d7a9c
97195b683fb1f6f9cfb6443fbedb666b4a74e17ca79bd5e66e5b4e75e609fd22
edcfdc1aa30a94f6e12ccf3e3d1be656e0ec216c1e852621bc11b1e216b9e001
参考来源
b6caf4fc755cad2b515d66caa99ff222c893a2ee8c8e565121945d7a9c
97195b683fb1f6f9cfb6443fbedb666b4a74e17ca79bd5e66e5b4e75e609fd22
edcfdc1aa30a94f6e12ccf3e3d1be656e0ec216c1e852621bc11b1e216b9e001
参考来源
网络安全学习路线
这是一份网络安全从零基础到进阶的学习路线大纲全览,小伙伴们记得点个收藏!
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-M8pMwFYO-1692235170417)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]编辑
阶段一:基础入门
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cygCeNvt-1692235170418)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]
网络安全导论
渗透测试基础
网络基础
操作系统基础
Web安全基础
数据库基础
编程基础
CTF基础
该阶段学完即可年薪15w+
阶段二:技术进阶(到了这一步你才算入门)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dbdP4P7g-1692235170418)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]
弱口令与口令爆破
XSS漏洞
CSRF漏洞
SSRF漏洞
XXE漏洞
SQL注入
任意文件操作漏洞
业务逻辑漏洞
该阶段学完年薪25w+
阶段三:高阶提升
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jF6W0WzP-1692235170419)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]
反序列化漏洞
RCE
综合靶场实操项目
内网渗透
流量分析
日志分析
恶意代码分析
应急响应
实战训练
该阶段学完即可年薪30w+
阶段四:蓝队课程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mLu2iUNf-1692235170419)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]
蓝队基础
蓝队进阶
该部分主攻蓝队的防御,即更容易被大家理解的网络安全工程师。
攻防兼备,年薪收入可以达到40w+
阶段五:面试指南&阶段六:升级内容
需要上述路线图对应的网络安全配套视频、源码以及更多网络安全相关书籍&面试题等内容
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
同学们可以扫描下方二维码获取哦!