Py学习  »  docker

近几年攻击者利用Docker API的错误配置进行攻击

嘶吼专业版 • 2 年前 • 222 次点击  

自2019年以来,实施文件加密的网络攻击活动背后的黑客团伙逐渐浮出了水面。研究人员说,这些攻击活动都利用了设备上配置错误的Docker APIs,这使得他们能够获得内部网络的入口,并最终在被攻击的主机上安装后门,然后挖掘加密货币。

该攻击技术是基于脚本进行的,该攻击方式被称为 "Autom",因为它利用了文件 "autom.sh"。Aquasec研究部门在周三发表的一份报告中写道,该攻击活动在活跃时期时,攻击者一直在滥用API的错误配置,但是其使用的规避策略各不相同。

研究人员说,自2019年以来,攻击者对Nautilus团队设置的蜜罐进行了84次攻击,其中2019年有22次,2020年有58次,2021年在研究人员10月开始撰写报告前有4次攻击。研究人员还报告说,根据Shodan搜索,今年对蜜罐的攻击数量明显减少,但是针对配置错误的Docker API进行攻击的整体趋势并没有减少。

他们写道:"对我们蜜罐的攻击次数的减少,可能意味着攻击者已经识别出来了他们,因此在2021年就减少了他们的攻击量。"

研究人员说,虽然攻击者在攻击的载体中使用了相同的攻击方式来实现他们的目的—对文件进行加密,这么多年以来攻击的最大变化就是威胁者在不断演化出新的规避检测手法。

他们在报告中写道:"我们通过攻击者的规避检测的技术看到了攻击团伙的技术进步。”

他们说,攻击者自攻击活动开始以来使用了五个不同的服务器来下载启动攻击的shell脚本。研究人员写道:"看来,网络攻击背后的团体已经提升了他们的攻击技能,扩大了攻击面来进行他们的攻击"。

网络攻击分析

他们在报告中说,Nautilus团队在2019年首次观察到了这种攻击,当时在运行一个植物的图像时执行了一条恶意命令,该图像下载了一个名为autom.sh的shell脚本。研究人员解释说,攻击者通常会使用该图像和恶意命令来执行攻击,因为大多数组织都信任这些图像并允许使用它们。

他们写道,攻击者一贯使用相同的攻击切入点,然后在一个远程服务器上进行执行,搜索含有漏洞的主机,然后利用配置错误的Docker APIs进行攻击。

然后他们运行vanilla镜像和其他的恶意shell,通过这两种方法创建一个用户--adduser(通过设置账户的主文件夹和其他设置来添加用户)和useradd(用于添加用户的低级命令),其用户名字为akay。

由于新创建的用户没有特权,威胁者通过使用 "sudo "命令来提升权限,然后将其变成一个root用户,授予无限的权限来运行任何sudoers文件。研究人员写道,这改变了sudo在目标机器上的工作方式,基本上可以使攻击者成为超级用户。

然后,攻击者会使用域名icanhazip[.com]获得被攻击主机的公共IP地址,并从服务器上删除下载的文件。研究人员写道,通过这一系列的操作,攻击者成功安装了一个后门,使得他们在被攻击主机上获得了权限的持久性,这样可以隐蔽地挖掘加密货币。

规避安全检查

研究人员说,虽然攻击者自Autom开始攻击活动以后,几乎没有改变他们入侵受害者机器并实现持久性的方式,但他们却改变了两件事--下载shell脚本autom.sh的服务器,以及具体的规避战术。

对于后一点,Nautilus团队观察到该攻击活动从2019年没有使用隐藏其攻击行为的技术发展到在接下来的两年里增加了更为复杂的隐蔽战术。

2020年,他们禁用了一些安全机制来确保其隐蔽性,包括ufw(非复杂防火墙),它能够允许或拒绝用户对某项服务进行访问,以及NMI(非屏蔽中断),它是最高优先级的中断,通常发生在不可恢复的硬件错误信号中,还可以用于监测系统的复位。

研究人员说,今年,攻击者还增加了一种新的攻击技术,通过从远程服务器下载一个混淆的shell脚本来隐藏加密攻击活动。

他们写道:"他们对脚本进行了五次base64编码,这样可以防止安全工具读取它并了解其背后的意图。该脚本其实是用来挖矿的恶意脚本"。

研究人员补充说,在攻击的过程中增加了其他的功能包括下载log_rotate.bin脚本,该脚本创建了一个新的cron 任务来启动加密开采活动,该cron job将在被攻击的主机上每55分钟启动一次。

他们指出:"Autom的攻击活动表明,攻击者的攻击方式正在变得越来越复杂,不断的改进他们的攻击技术来避免被安全解决方案发现的可能性。”

参考及来源:https://threatpost.com/cryptomining-attack-exploits-docker-api-misconfiguration-since-2019/177299/

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/125311
 
222 次点击