AI analysis
Unitree G1 EDU firmware through version 1.5.2 chains two flaws—an unquoted heredoc variable in the WiFi provisioning script and an out-of-bounds write in the SSID chunk accumulator of the BLE GATT/WiFi provisioning stack—that require no pairing, credentials, or user interaction. An unauthenticated attacker within BLE range sends crafted BLE GATT writes that overflow a fixed BSS buffer across BLE connections, corrupting an adjacent mainloop function-pointer dispatch entry. When the cleanup path later invokes the corrupted entry, attacker-controlled data is passed to system() as uid 0, giving the attacker root code execution on the robot (CVSS 4.0: 7.7 High, adjacent attack vector). Only operators of Unitree G1 EDU humanoid robots running firmware 1.5.2 or earlier are affected. No public proof-of-concept is known, the issue is not in CISA KEV, and EPSS estimates only a 0.3% chance of exploitation in the next 30 days, so exploitation status is currently none known.
What to do: Check the firmware version on G1 EDU units and upgrade to the first firmware release after 1.5.2 once Unitree publishes a fix. Until then, reduce BLE exposure by keeping untrusted people and devices out of Bluetooth range of the robots and disabling or supervising BLE-based WiFi provisioning. Monitor Unitree advisories, since no public PoC or known exploitation exists today.
Affected
| Unitree G1 EDU firmware | all versions through and including 1.5.2 |
Estimated exposure
nicheunknown, but plausibly on the order of thousands to low tens of thousands of G1 EDU robots deployed worldwide — The G1 EDU is Unitree's developer/education humanoid with a limited installed base and no internet-exposed footprint, and the attack requires proximate BLE access, so exposure is bounded by Unitree's humanoid unit sales rather than public…
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
Description
Unitree G1 EDU firmware through 1.5.2 contains multiple chained vulnerabilities in the BLE GATT server and WiFi provisioning stack that allow unauthenticated proximate attackers to achieve root code execution without pairing or credentials by exploiting an unquoted heredoc variable in the WiFi provisioning script and a buffer overflow in the SSID chunk accumulator. Attackers can send crafted BLE writes to overflow a fixed BSS buffer across BLE connections, corrupting an adjacent mainloop function pointer dispatch entry that is subsequently invoked by the cleanup path passing attacker-controlled data to system() as uid 0.