A detailed walkthrough of a Pwn2Own IoT competition entry targeting a SOHO attack chain: compromising a QNAP router from the WAN side and pivoting to a TrueNAS Mini X on the LAN. The talk covers the full research process including target selection, firmware decryption, attack surface enumeration (outgoing connections, listening services, IPv6 exposure), and the vulnerabilities ultimately exploited. On the NAS side, a Python-based jail manager (iocage) used an unsafe tarfile.extractall call over HTTP, enabling a DNS-spoofing/MITM attack to overwrite the user database. On the router, a DNS lookup for localhost's AAAA record led to discovery of an internal gRPC service; by impersonating the cloud agent, an address6 field in a site.json config was passed unsanitized to a shell, yielding root code execution. The talk emphasizes failed approaches, heap shaping challenges, and the realities of competing seventh out of seven teams — yet all vulnerabilities were confirmed as previously unknown zero-days.

47m watch time

Sort: