我最近听说过Mirai蠕虫,它使用不安全的密码感染易受攻击的路由器,IoT设备和其他与Internet连接的设备。 Mirai被怀疑是历史上最大的DDoS攻击的起因:


Dyn估计攻击涉及“ 100,000个恶意端点”,并且该公司仍在调查攻击说,据报道有1.2Tbps的非凡攻击强度。提供了一些有用的通用技巧,可用于在IoT网络上发现恶意软件,但是如何检查我的设备是否感染了恶意软件? Incapsula提供了一种运行工具,可以扫描容易受到Mirai攻击的设备,但是有一种方法可以自动检查我的网络上是否有任何设备受到感染(或提供实时保护),因此我不必继续运行我记得什么工具?

#1 楼

检测受感染的设备


这些设备变成了僵尸网络,即使偶尔出现带宽不足的情况,对于那些毫无戒心的所有者仍然可以正常运行,并且它们的僵尸网络行为可能会无限期地被忽略。 >

Webroot.com:Mirai IoT恶意软件的源代码已发布

,这告诉我们设备如何更改其行为。不幸的是,偶尔的带宽缓慢是一个很糟糕的指标。 Mirai所做的另一件事是阻止端口,以避免监视工具对其进行检测。

这两个功能可以寻找。首先,它需要一个非常复杂的网络流量监视解决方案,并且需要有关您在网络中期望哪种流量的复杂知识。如果您的物联网设备不是通过WiFi连接而是通过3G或其他移动电信标准进行通信,那么您就很不走运,因为您无法监控这些。至少不容易,而且在大多数司法辖区都不是合法的。如果端口关闭,则可能会感染Mirai。由于重新启动会暂时使设备脱离Mirai的控制,因此重新启动后一段时间内端口可用性的变化很可能表明设备已受到威胁。

请记住,Incapsula不提供确定性,仅提供有关可能的目标设备和可能已被感染的设备的信息。这就是为什么重要的是要认识到Mirai可以进行多猛烈的攻击,这在小范围内并不是无敌的敌人,甚至很容易防止感染。与首先将设备固定或将设备固定在直觉上相比,进行检测要花费很多精力。

重新捕获设备

但是,Mirai充当了僵尸网络的终点,蠕虫并没有改变IoT设备的持久内存。即固件未感染。这就是为什么重新启动并立即更改密码可以使您对设备进行控制的原因。如果速率保持恒定,则可能在重新启动后的几分钟内重新感染它们。这意味着用户必须在重新启动后立即更改默认密码,或者阻止设备访问Internet,直到他们可以重置固件并在本地更改密码。


Webroot.com:源Mirai IoT恶意软件的代码已发布

首先防止受到损害

Mirai不会入侵您的设备!


Mirai持续扫描IoT设备的Internet并使用出厂默认设置或硬编码的用户名和密码登录。 com:Mirai IoT恶意软件已发布的源代码

Mirai使用出厂默认登录名来破坏您的设备。首次为IoT设备提供任何Internet连接之前,请先更改密码,然后您将居住在Mirai自由区中。比赛。

#2 楼

如果网络上有任何易受攻击的设备,则应假定它们已受到攻击。根据定义,登录凭据是公开的,我相信您需要假设固件已被篡改。无需等待观察与命令控制服务器的通信或恶意活动。

立即清洁设备,确保为每个新设备提供新密码,并在安装时进行扫描。

也许是如何在现有设备上扫描新发现的远程访问漏洞的潜台词,但我并没有特别问这个问题。

#3 楼

而不是寻找自治解决方案。您可以尝试自动化Incapsula的工具。不幸的是,它是通过网页按钮提供的服务,因此您必须打开该页面并自动单击按钮。

从页面源中,您可以获得有关按钮本身的信息。 br />
 <div class="btn-toolbar">
  <a class="cta-green-button scan-btn" href="#" id="mirai-scanner-scan-btn" role="button" style="max-width: 288px;margin: 32px auto 4px;">Scan My Network Now</a>
</div>
 


因此,也许可以使用脚本来创建一个定期运行的任务,该任务打开网站,找到按钮ID,然后单击它并运行扫描。

我不知道执行此操作的确切方法,但是也许可以使用Selenium或Mechanize Python软件包。

#4 楼

Mirai攻击嵌入式Linux。您首先需要获得对IoT设备的命令行访问权。之后,您可以检查只读文件系统的校验和,并将它们与干净的固件版本进行比较。有时公司会在线提供原始固件,或者您可以与他们联系以获取副本。如果您想了解固件的通常包装方式,建议您进入Binwalk程序。 OpenWrt拥有有关闪存的优质文档。当您将固件闪存/重新闪存到IoT设备时,固件的各个部分(内核,只读根文件系统,可写配置部分)存储在IoT闪存芯片上的MTD分区中。您可以复制/下载这些分区(/ dev / mtdblock1是linux示例),然后通过校验和将其与原始固件进行比较。如果您担心使用rootkit而又不信任命令行,则可以使用硬件工具(例如Bus Pirate和SOIC8剪辑)直接从闪存芯片上下载并检查固件,

评论


通过命令行访问检查固件毫无意义。一旦设备受损,您将无法信任在命令行上看到的内容。阅读帮助!我的家用电脑已被病毒感染!现在我该怎么做? —它是针对PC编写的,但适用于包括IoT设备的任何计算机。

–吉尔斯'所以-不再是邪恶的'
18年2月2日在20:30