• xmo748@programming.dev
      link
      fedilink
      arrow-up
      3
      ·
      1 day ago

      So could have Java, Go, C# or any language with GC. With garbage collection, the options object stays alive as long as any CPU holds a pointer to it, so use-after-free can’t happen.

      Besides, this exploit is so hard to pull off the only realistic outcome is a kernel panic, and that hasn’t even been publicly demoed.

      • thingsiplay@lemmy.ml
        link
        fedilink
        arrow-up
        4
        ·
        1 day ago

        So could have Java, Go, C# or any language with GC.

        No. Those aren’t allowed in Linux Kernel.

        With garbage collection

        Garbage Collection is not usable in an operating system Kernel.

        • xmo748@programming.dev
          link
          fedilink
          arrow-up
          3
          ·
          1 day ago

          Clearly, but it’s worth pointing out that this kind of problem isn’t uniquely fixed by “just use Rust”.

          • thingsiplay@lemmy.ml
            link
            fedilink
            arrow-up
            2
            ·
            1 day ago

            I never said that only Rust prevents this. I just said using Rust in the Kernel would have prevented this issue.

            • xmo748@programming.dev
              link
              fedilink
              arrow-up
              2
              ·
              20 hours ago

              Fair enough. Don’t you think it simplifies the issue a little bit? How long would it take to rewrite the entire TCP stack in rust?

              • thingsiplay@lemmy.ml
                link
                fedilink
                arrow-up
                1
                ·
                19 hours ago

                I don’t think a rewrite in Rust is necessary for everything that has a bug. Instead fixing the bug is probably more secure, before such alternative Rust code is mature enough to replace it.