\

Usbliter8: an A12/A13 SecureROM Exploit

68 points - last Thursday at 2:23 PM

Source
  • nfriedly

    last Saturday at 3:35 PM

    This is awesome news! It isn't a jailbreak in and of itself, but it is the first step.

    Right now we only have a reliable jailbreak (checkm8) for up to iOS 18 (and that's only thanks to one iPad model). Some app developers are pretty aggressive about dropping support for older iOS versions.

    This affects iPhone XR, XS, 11, SE 2nd gen, and a smattering of iPads. Many of these devices got the iOS 27 beta and will likely see future iOS versions for at least another year or two.

    Edit: here's the affected iPads:

    * iPad Pro 11" (gen 1-2)

    * iPad Pro 12.9" (gen 3-4)

    * iPad mini (gen 5)

    * iPad Air (gen 3)

    * iPad (gen 8-9)

    • nayuki

      today at 12:05 AM

      I first thought of SecuROM, a CD/DVD copy protection scheme applied to computer game discs: https://en.wikipedia.org/wiki/SecuROM

        • d3Xt3r

          today at 1:16 AM

          That's what I thought as well. I read the headline and was surprised that SecuROM was still around and was confused what it had to do with Apple... until I saw your comment.

          • Velocifyer

            today at 12:49 AM

            A DRM scheme that often failed to work and had a limit to the amount of installs.

        • Lammy

          today at 1:42 AM

          Imagine four balls on the edge of a cliff.

          Say a direct copy of the ball nearest the cliff is sent to the back of the line of balls and takes the place of the first ball. The formerly first ball becomes the second, the second becomes the third, and the fourth falls off the cliff.

          DOEPDMA works the same way.

          • djfergus

            yesterday at 3:24 PM

            Sounds like it’s a low level hardware/firmware hole that can’t be patched.

            • thenthenthen

              last Friday at 10:54 AM

              Ohhhh this is interesting!!!!! I really miss the glory days of jailbreaking, it just unlocked so many handy, fun, and cool stuff. From running webservers to speeding up the terribly slow animations.

                • wowczarek

                  today at 12:20 AM

                  ...or adding system-wide Copy and Paste when the iPhone first launched without it...

              • edelbitter

                last Friday at 10:00 PM

                Since this can only underflow and some written bits are not attacker-chosen, does this not imply that the patchable part of the software could reliably detect this just in time and panic on suspected USB DMA corruption? Where is the catch?

                  • auguzanellato

                    last Friday at 11:12 PM

                    The exploit grants arbitrary code execution, it can just fix up the telltale signs of the USB DMA corruption before jumping to an updatable part of the boot flow

                      • edelbitter

                        last Saturday at 10:52 AM

                        Ah, the exploit is all done before that!

                • raffael_de

                  last Friday at 12:26 PM

                  supposedly an unfixable vulnerability possibly affecting several iPhone models. should be more relevant than 4 points imho.

                    • Cider9986

                      last Friday at 1:18 PM

                      Feel free to repost or email hn@ycombinator.com to have it put in pool.

                        • xphos

                          last Friday at 1:37 PM

                          Yeah this is definitely a front pager big news in the Jailbreaking world

                  • NooneAtAll3

                    last Friday at 12:35 PM

                    > The DesignWare USB controller stores up to three consecutive Setup packets in memory.

                    > Upon receiving a fourth Setup transaction, the DMA base address gets reset to its starting position before writing, akin to a ring buffer mechanism.

                    > After writing each received packet, the controller increments DOEPDMA by the size of data written. The reset operation is implemented by decrementing DOEPDMA by 24.

                    > The core issue arises because the controller also accepts smaller packets (though always stores in 4-byte chunks).

                    > Since the pointer increment does not match the fixed decrement amount, we end up with a buffer underflow primitive in 12-byte steps.

                    so the problem is directly in the hardware, not in driver

                    what kind of defense would work against such bugs?

                    ====

                    wait, am I understanding it right that DMA access was given directly to the stack??

                      • summa_tech

                        today at 12:14 AM

                        On most modern Apple SoCs, including these two, there's an IOMMU dedicated to the USB complex (called the USB DART, perhaps DMA Address Remapping Table).

                        However, Boot ROM on these two chips does not program it; Apple probably felt that it was an unnecessary technical risk to do so. The Boot ROM code was well-verified and unlikely to contain bugs like buffer overflows. But nobody expected a hardware bug :)

                    • asadeddin

                      last Friday at 7:18 PM

                      [dead]