A week of security testing on a Prusa MK4S running Buddy firmware 6.5.7 uncovered 14 findings comprising roughly 23 defects, including a chain to remote code execution on the printer’s main controller. The critical flaw begins in Prusa Connect: a SEND_FILE_INFO command can supply a path longer than the 104-byte limit assumed by the code. That limit existed only as an assertion removed from release builds, allowing a long path to overflow a shared buffer and corrupt adjacent data. Combined with further weaknesses, an attacker controlling or intercepting Connect traffic - or compromising its backend - could run code on the printer. The researcher also found issues in G-code parsing, USB and FAT handling, transfer recovery, the MMU, and EEPROM. Three of the four findings in the first report package were confirmed on physical hardware; the remaining findings were validated through fuzzing, source review, or AddressSanitizer.
The investigation combined millions of mutated G-code inputs and HTTP requests, reverse engineering, a Cortex-M emulator running the signed firmware image, and AI-assisted analysis. The researcher separated hardware-confirmed findings from less directly verified ones to make confidence levels clear, and gave Prusa the test tools and proof-of-concept material. Prusa acknowledged the report within a working day, reproduced the issues, coordinated an embargo rather than demanding silence, and asked how the researcher wanted credit. The main process criticism was that Prusa’s security contact file initially returned a 404. All reported findings were fixed in Buddy firmware versions later than 7.0.0; affected printer owners are urged to update.
Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.