从WIFI连接到洗衣机RCE

  • A+
所属分类:安全文章

背景

    漏洞来源于之前一个众测项目,拿到设备的时候人懵了下。是个智能洗衣机的主板。连上网后礼貌性的对设备进行了端口扫描,发现未开放任何端口,整个设备采用云端服务器下发的方式执行指令。

攻击路线分析

    因为不存在任何端口开放,因此最开始将攻击点固定在了设备的云端以及联网方式上。云端已经测过一轮没有测试的必要,而劫持的话会比较简单。但是项目负责人反馈劫持这类攻击不算,因此重新回到联网位置。

    这时脑中冒出了一个大胆的想法,既然只有连接WiFi的时候参数是可控的,那么有没有可能WiFi这里存在溢出或是命令注入呢?

WiFi连接到RCE

    提出固件后直接定位到APP引用,IDA中直接搜索连接WIFI会出现的关键字如SSID和Passwd等。这时发现有个WiFi password wrong format比较显眼。

从WIFI连接到洗衣机RCE

    通过交叉引用,跟入发现如下逻辑。其中可以发现std::NetWorkListener::startConnectWiFi(),猜测为连接过程,跟入函数

从WIFI连接到洗衣机RCE

    继续跟入startConnectWiFi后发现如下赋值流程,直接拼接system,显然存在命令注入。

从WIFI连接到洗衣机RCE

    使用电脑新建热点,取名为"';busybox reboot;'"

从WIFI连接到洗衣机RCE

     使用设备连接该WiFi,可以发现设备瞬间重启,成功执行了命令,真实攻击场景下可以使用busybox telnetd -l sh -p 1339命令反弹shell。同理WiFi密码字段也存在该问题。

演示视频

 

 

 

 

 

知识星球

 

以上分享内容均来自物联网安全知识星球,星球内分享了各类物联网0day和测试过程,欢迎大家的加入。

 

本文始发于微信公众号(白帽100安全攻防实验室):从WIFI连接到洗衣机RCE

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: