Firecracker VM Escape: PwnEscape Part 2

(pwn.ai)

71 points | by SerCe 1 hour ago

10 comments

  • clhodapp 0 minutes ago
    [delayed]
  • Betelbuddy 1 minute ago
  • lrvick 57 minutes ago
    I am more convinced by the day that the Nova Microhypervisor approach is correct.

    Do virtualization with a tiny formally verified microkernel and have complex kernels like Linux run underneath instead of letting a huge, complex, and brittle linux kernel and vm ecosystem control the hypervisor layer.

    https://hypervisor.org/

    • eddythompson80 37 minutes ago
      How is this different from Xen? It's the same approach as Xen or Hyper-V where the hypervisor is its own component, then you boot into a virtualized Dom0 or Root Partition (in Xen and Hyper-V terminology respectively) that can manage the hypervisor underneath it.

      This is different from KVM where your hypervisor runs in your Dom0/Root Partition.

      • lrvick 33 minutes ago
        This is a much lighter weight (~100k) alternative to Xen focused on baremetal TPM anchored remote attestation, formal verification, and trusted computing applications.

        Anyone considering Xen should probably also consider Nova depending on requirements.

      • markasoftware 26 minutes ago
        Xen had a generic guest to host vulnerability disclosed in the last few days: https://codeant.ai/security-research/xenbleed-a-grant-copy-c...
    • tptacek 24 minutes ago
      I don't know much of anything about Nova but since the late 1990s this has also been the pitch for L4; there are several mature L4's.
      • lrvick 19 minutes ago
        Nova is L4 inspired, and interchangable with L4 kernels in Genode.
        • tptacek 13 minutes ago
          Yep, very similar, but L4 is a little bit more general purpose (despite being microscopically tiny) and a little more battle-tested.
          • lrvick 3 minutes ago
            Is there a well tested L4 hypervisor solution with hardware accelerated virtualization and raw TPM support formally verified to a similar or greater level than Nova with similar remote attestation and security features?

            SeL4 is the closest contender on my radar atm.

            • tptacek 1 minute ago
              Most of the L4s have hypervisor situations. I don't know about TPM support. Generally the vibe I get from systems security people is a bit of eye-rolling about the formal verification of things like L4; the real win is just drastic attack surface reduction.

              And then, of course, L4s live in millions and millions of shipped products, which is a reason to consider L4 instead of something novel, but I'm not saying you should or shouldn't.

    • traceroute66 49 minutes ago
      > the Nova Microhypevisor approach is correct

      To save people the time:

      "This code is experimental and not feature complete. If it breaks, you get to keep both pieces."

  • zX41ZdbW 26 minutes ago
    I have a demo service that entirely relies on Firecracker VMs: ClickBench playground, https://benchmark.clickhouse.com/playground/

    It hosts hundreds of database engines - many of them have vulnerabilities, and some of them, like Pandas, are basically open RCEs regardless.

    We can PoC the Firecracker VM Escape on that service.

  • markasoftware 28 minutes ago
    This is not a new vulnerability, it's just a description of how to exploit the PwnEscape vulnerability in practice on firecracker VMs (disclosed multiple weeks ago and discussed in some less upvoted posts on HN)
    • YetAnotherNick 14 minutes ago
      > already discussed at length on HN

      Couldn't find it. Care to provide link.

      • tptacek 3 minutes ago
        The actual vulnerability got very little discussion. It's clever. Because Linux networking people are obsessed with checksum performance, virtio-net plumbs checksum offload metadata through the host/guest driver interface. Guests can thus deliver the host packets along with instructions on what to checksum. The vulnerability is a missing sanity check that allows checksum instructions to instruct the host to overwrite the header length field in the IPv4 header, rather than the checksum field.

        Crucially, this happens in the middle of packet processing, so the kernel code is forced to work with two different ideas of how long the IPv4 header is. All hell predictably breaks loose.

      • markasoftware 8 minutes ago
        Ah maybe not on HN, I forget where I learned of it. Either way, multiple weeks ago: https://news.ycombinator.com/item?id=50108845
  • denysvitali 7 minutes ago
    Dupe: https://news.ycombinator.com/item?id=50381397

    (Doesn't HN usually deduplicate links? I'm confused)

    • tptacek 2 minutes ago
      Duplicates are generally accepted when there was no significant discussion on the original submission.
  • thisisauserid 36 minutes ago
    Firecracker VMs run on AWS. Odd that the article doesn't mention that.
    • Betelbuddy 1 minute ago
    • whizzter 29 minutes ago
      Firecracker is open source and possibly others use it, AWS sells services with it though.
      • tptacek 21 minutes ago
        (A more complete way to say this is that Firecracker is the engine built to run AWS Lambda and AWS Fargate).
      • tcdent 23 minutes ago
        It has notable adoption in the agent sandbox space where this type of vulnerability is especially volatile.
      • thisisauserid 28 minutes ago
        > The target was Firecracker v1.16.1 on x86-64, with host kernel 7.0.0-1011-aws.
        • sscaryterry 10 minutes ago
          Firecracker v1.17.0 was released 10 September, so the version is ancient.
      • wrongquery_dev 13 minutes ago
        [dead]
    • sscaryterry 12 minutes ago
      The article is light on details, it is LLM slop.
  • aghadge 56 minutes ago
    it's really informative. At least someone are break it.
  • sscaryterry 33 minutes ago
    This is pure LLM slop.