Hacking Network APIs
Where
Talks
ShmooCon 2024
Duration
17 min
Shows how a network audio player's UDP and TCP protocols are reverse engineered, replayed, and rebuilt in Packet Sender.
Summary
The speaker takes a network audio player app for a Raspberry Pi and works out how it talks to its device. Using Wireshark to watch traffic, he finds a UDP broadcast discovery exchange and a command channel on the same port. He then uses the Packet Sender network utility to send the discovery replies and command messages himself, so the app can control the player without the original hardware responding. Finally he rebuilds a simpler interface with just play and stop buttons and sets it as the starter panel, so an end user sees only the controls they need.
The second demo covers simulated IoT malware on an isolated network. Live capture shows the device probing for a gateway and then an outside address, and once those are assigned it attempts connections to a port with nothing listening. Opening a listener on that port reveals a network scan and repeated attempts to reach a remote server for instructions. The lesson is to place IoT devices on a segregated guest network.
For mitigation, the talk suggests encrypting the discovery broadcast with symmetric encryption plus a sequence number to block replay, using TLS for command traffic, and calling a remote service over HTTPS for instructions. The takeaway is that unauthenticated, unencrypted device protocols are easy to copy and replay.
Related talks
Track 2·44 min
Alex Trudeau
Shows how to bypass iOS certificate pinning by reversing a training app in Ghidra and hooking it with Objection.
Talks·44 min
James Henderson
Shows how skipped protocol steps let an IPMI management service bypass authentication, using reverse engineering, fuzzing and debugging.
Talks·25 min
Stanislav Dashevskyi · Francesco La Spina
Shows how researchers reach root on a locked-down TP-Link router by reverse engineering its modified Lua bytecode.


