大量的观察表明,整个网络空间威胁领域中物联网安全威胁是当下发展最快的,攻击方式从简单的密码猜测,逐渐演进到更为先进的漏洞利用,例如最近广受关注的IoTroop/Reaper僵尸网络。随着物联网的快速普及,各种物联网产品和系统的安全漏洞也相继被披露,越来越多的脚本小子、业务黑客企图利用复制/粘贴等方式,跳上了物联网漏洞利用的快车,在各种地下论坛中,能看到越来越多的关于物联网漏洞利用工具的分享和出售。
根据对地下论坛的观察,网络犯罪分子们进来似乎很热衷于利用有漏洞的GoAhead版本(*GoAhead是一个开源、简易的、功能强大且能在多个平台运行的嵌入式Web服务器)。黑客们利用诸如CVE-2017–8225此类的漏洞可以攻破大量的网络摄像机厂商的产品,IoTroop/Reaper僵尸网络也成功的利用了这一点。
我们在一个黑客论坛中,看到有些用户向脚本小子分享可用于攻破GoAhead设备的脚本,有趣的事,这个脚本包含一个后门程序,可以用来监控使用这些脚本的脚本小子们。
2017年10月22日,我们看到了一个黑暗的但受欢迎的站点,它经常会提供一个新的可用于构建物联网僵尸网络的恶意代码,该工具被命名为“NEW IPCAM EXPLOIT”,作用是可以帮忙脚本小子们快速的找到存在漏洞的、已被攻破的嵌入式GoAhead服务器。
根据以往的观察,攻击者之间通常使用C或Python语言开发并共享IoT 攻击代码,不做任何加密处理,但在这起案例中,我们发现代码多次使用了ROT13、BASE64进行处理,同时还增加了一些混淆数据并使用了gzip格式对数据进行了压缩归档。这个异常的行为让我们生疑,猜测攻击者可能在代码中隐藏了什么东西(邪恶的),然后分享给那些需要这些工具的脚本小子们,因此,我们决定深入了解一下这个脚本。
经过多层解码,我们发现这个脚本能够检测出被探测的物联网设备是否使用了使用GoAhead嵌入式服务器,然而,它的功能不止如此,在这份代码中,隐藏了一个后门程序,该后门使用shell脚本语言连接到远程的恶意服务器,下载另一个文件(第2阶段的脚本)并执行它。
当脚本小子们运行这个GoAhead探测脚本时,除了能收获一个脆弱的安装了GoAhead有漏洞版本的设备列表之外,还会创建一个后门程序的访问账号、使用者的IP地址记录,并加载另一个有效载荷。
第2阶段:安装后门程序、执行有效载荷
第二阶段的代码为背后的攻击者生成一个具有根用户权限的账号;USER_ID 0,同时还利用IPLogger服务提取脚本小子详细的IP信息,这使攻击者更方便的访问这些脚本小子的设备。
攻击者除了添加一个后门程序、创建一个root权限的用户以及获得脚本小子设备的访问权之外,还下载并运行了一个名为“.s”的有效载荷。
在这个文件中,我们看到了一个熟悉的僵尸网络命令“Kkt9x4JApM0RuSqCLA”,它是知名的僵尸网络 “Kaiten”常用的一个命令。
下图是“Kaiten”僵尸网络公开的源代码中的一部分,其中Kkt9x4JApM0RuSqCLA”这个命令可以调用killsec函数,最终杀死僵尸网络。
本文讲述的这个案例虽然很简单,但从中也凸显出了一个趋势,即物联网的攻击者们开始转向一种更有效的攻击向量,在各种黑客论坛中可以看到流传广泛的各类物联网漏洞利用脚本。
我们已经观察到的情况下在Windows恶意软件在后门科维安鼠传播通过各种黑客攻击黑客。现在我们在物联网恶意软件领域发现了类似的东西。
从攻击者的角度来看,这种“大鱼吃小鱼”的游戏是非常“高效的,不妨假设,一个脚本小子管理的僵尸网络包含了10000个物联网设备,他一旦被黑了,其控制的所有设备都会被添加到一个更大的僵尸网络中,后门程序的控制者是最大的赢家,他们堪称僵尸网络中的“将领”。