Christopher J. Pace 和 Ryan Miller
Buffalo LS210D 是一款面向小型企业和个人设计及销售的网络附加存储(NAS)服务器。LS210D 具备远程下载并安装固件更新的功能。LS210D 在此功能中存在“中间人”(AitM)攻击漏洞。控制受害者上游连接的攻击者将能够为更新服务器提供错误的 DNS 名称,或将来自更新服务器的流量重定向到恶意服务器。这可能导致以 root 用户身份执行命令,或直接安装恶意软件。
文件 /etc/init.d/update_notifications.sh 由位于 /www/buffalo/www/dynamic/system/update/BufUpdate.pm 的固件升级服务器端脚本调用。在 update_notifications.sh 内部包含以下行:

打开此 xml 文件后发现,该 XML 文件本身也指向一个仅 HTTP 的连接:

此外,此 zip 文件也未加密。此前针对该型号的研究引导我们下载了一个手动固件更新工具,该工具确实包含一个受密码保护的 zip 文件。文件 linkstation_series_1.75-0.01.zip 不包含这些保护措施。在该压缩包内包含文件 hddrootfs.buffalo.updated,其中包含压缩包 hddrootfs.buffalo,该压缩包内包含 LS120D 的根文件系统。攻击者可以直接查看并修改此 zip 文件,以植入自己的恶意软件或读取敏感文件。

一旦攻击者实施了 AitM 攻击,路由器将欣然提供安装更新固件的选项。以下是此类攻击的一个示例,右侧屏幕显示了 fw_info2.xml 所需的修改,即在 productId 标签中添加 0x0000001D,并将版本类型标签递增为高于受害者固件版本(本例中为 1.78-0.04)的版本。

