Raspberry Pi Squashes Security Bugs, Fixes E9 Erratum with the RP2350 A4 Stepping
New security challenge aims to prove the side-channel resistance of a new AES implementation, too.
Raspberry Pi has announced a new stepping of its popular RP2350 in-house dual-core microcontroller chip — squashing the security bugs discovered during the company's bug bounty challenge last year and also fixing the thorny E9 erratum that led to incorrect behavior when using the chip's on-board pull resistors.
"One successful year in for Raspberry Pi’s second-gen microcontroller RP2350, we're releasing a new version — the chip's A4 stepping — addressing bugs and security vulnerabilities," the company says of the new part. "A new RP2350 Hacking Challenge also launches [today]: we think we've made something resistant to side-channel analysis, and we're challenging people to prove us wrong."
Raspberry Pi launched the RP2350 back in August last year as the successor to its RP2040 chip. Designed in-house, the part swapped out its predecessors Arm Cortex-M0+ cores for a pair of more powerful Arm Cortex-M33 cores running at 150MHz — while also adding two open-source Hazard3 cores, built around the RISC-V architecture, with the user able to run any combination of two cores at any given time.
The launch wasn't without its difficulties, though: once the chip was out in the wild on board the Raspberry Pi Pico 2, a range of bugs were discovered — the biggest of which was "erratum E9" that caused the on-board pull resistors to exhibit unexpected "latching" behavior, a problem severe enough that some manufacturers opted to delay or cancel designs built around the chip.
Shortly after launch, Raspberry Pi announced a bug bounty competition in which competitors able to extract a hidden flag contained in a secured firmware would receive up to $10,000 — later doubled to $20,000. The contest had the desired effect: researchers from around the world attacked the chip and discovered a range of security vulnerabilities, some stemming from the ability to run code on the RISC-V cores in order to bypass security protections in the Arm core hardware and others relying on voltage glitching and other side-channel attacks requiring physical access to the chip.
The RP2350 A4 stepping, as the new part is known, addresses both of these issues: the company says that the hardware glitching attacks have been fixed, as has erratum E9 — meaning the pull resistors now work as they did in the earlier RP2040. Another notable enhancement is 5V tolerance on all general-purpose input/output (GPIO) pins while powered, the company says. At the same time, a new version of the Raspberry Pi Pico Software Development Kit (SDK) has been released, which includes a hardened version of the AES decryption code designed to protect against side-channel attacks, support for self-decrypting binaries, and examples for encryption, over-the-air (OTA) updates, and UART bootloading on the RP2350.
The release of a new stepping that addresses known flaws doesn't mean Raspberry Pi is assuming its work is done, however: the company has also announced a new bug bounty challenge, organized in partnership with security researcher Thomas Roth and Hextree, which focuses on the improved AES implementation and its self-decrypting binary support.
"This new software was developed to allow customers to encrypt their application code and data when they are stored in flash memory," the company explains, "and have these loaded into internal SRAM [Static RAM], where our AES software library will decrypt the application in place, using cryptographic key material and a per-device salt (random value) squirreled away in the one-time programmable storage on-chip."
The RP2350 A4 stepping is available from the company's approved resellers now, as a drop-in replacement for the earlier A2 stepping, including in RP2354A and RP2354B variants with 2MB of stacked-in-package flash memory; a Raspberry Pi spokesman tells us that the A2 stepping will remain on Raspberry Pi Pico 2 boards "for a while," presumably until current stock is sold through.