Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. Significant raise of reports (on the Linux Kernel Mailing List) https://lwn.net/Articles/1065620/

Significant raise of reports (on the Linux Kernel Mailing List) https://lwn.net/Articles/1065620/

Scheduled Pinned Locked Moved Uncategorized
45 Posts 21 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • cwebber@social.coopC This user is from outside of this forum
    cwebber@social.coopC This user is from outside of this forum
    cwebber@social.coop
    wrote last edited by
    #1

    Significant raise of reports (on the Linux Kernel Mailing List) https://lwn.net/Articles/1065620/

    Here's something I think we all will have to contend with, whether you're an AIgen enthusiast or not: attacking is easier than defending, and these things don't get tired and they *are* very good at finding exploits. None of us will be able to ignore that, and we will probably have to listen to real genuine reports from them, even if we reject AIgen input.

    However, I don't think that's actually the right solution, and I don't think it's sustainable. 🧵

    cwebber@social.coopC jmax@mastodon.socialJ zenkat@sfba.socialZ btel@mastodon.socialB 4 Replies Last reply
    1
    0
    • cwebber@social.coopC cwebber@social.coop

      Significant raise of reports (on the Linux Kernel Mailing List) https://lwn.net/Articles/1065620/

      Here's something I think we all will have to contend with, whether you're an AIgen enthusiast or not: attacking is easier than defending, and these things don't get tired and they *are* very good at finding exploits. None of us will be able to ignore that, and we will probably have to listen to real genuine reports from them, even if we reject AIgen input.

      However, I don't think that's actually the right solution, and I don't think it's sustainable. 🧵

      cwebber@social.coopC This user is from outside of this forum
      cwebber@social.coopC This user is from outside of this forum
      cwebber@social.coop
      wrote last edited by
      #2

      The fact of the matter is, most vulnerabilities fall under extremely common patterns, with known solutions:

      - Confused deputies: capability security can fix/contain this in many cases, more on that later
      - Injection attacks: primarily caused by string templating, using structured templating also fixes this (quasiquote, functional combinators, etc)
      - Memory vulnerabilities: solved by memory-safe languages, and yes that includes Rust, but it also includes Python, Scheme/Lisp, etc etc etc

      There are other serious vulnerabilities, such as incorrectly written or used cryptography, and others from there, but my primary point is: most damage can be either avoided in the first place or contained (especially in terms of capability security for containment)

      And... patching AIgen patches is going to get tough and tiring... (cotd...)

      cwebber@social.coopC agentultra@types.plA dalias@hachyderm.ioD 3 Replies Last reply
      0
      • cwebber@social.coopC cwebber@social.coop

        The fact of the matter is, most vulnerabilities fall under extremely common patterns, with known solutions:

        - Confused deputies: capability security can fix/contain this in many cases, more on that later
        - Injection attacks: primarily caused by string templating, using structured templating also fixes this (quasiquote, functional combinators, etc)
        - Memory vulnerabilities: solved by memory-safe languages, and yes that includes Rust, but it also includes Python, Scheme/Lisp, etc etc etc

        There are other serious vulnerabilities, such as incorrectly written or used cryptography, and others from there, but my primary point is: most damage can be either avoided in the first place or contained (especially in terms of capability security for containment)

        And... patching AIgen patches is going to get tough and tiring... (cotd...)

        cwebber@social.coopC This user is from outside of this forum
        cwebber@social.coopC This user is from outside of this forum
        cwebber@social.coop
        wrote last edited by
        #3

        I don't think human reviewers are going to be able to keep up with the number of vulnerabilities we're seeing appear. I really don't. Humans won't be able to review at scale, and I also think that there's serious risks for blindly accepting AIgen patches, which for critical infrastructure could also be a path to *inserting new* vulnerabilities.

        We need to attack this systemically.

        I have more to say. More later. But that's the gist for now.

        thomasfuchs@hachyderm.ioT demofox@mastodon.gamedev.placeD faoluin@chitter.xyzF linear@nya.socialL bob@epicyon.libreserver.orgB 7 Replies Last reply
        1
        0
        • cwebber@social.coopC cwebber@social.coop

          I don't think human reviewers are going to be able to keep up with the number of vulnerabilities we're seeing appear. I really don't. Humans won't be able to review at scale, and I also think that there's serious risks for blindly accepting AIgen patches, which for critical infrastructure could also be a path to *inserting new* vulnerabilities.

          We need to attack this systemically.

          I have more to say. More later. But that's the gist for now.

          thomasfuchs@hachyderm.ioT This user is from outside of this forum
          thomasfuchs@hachyderm.ioT This user is from outside of this forum
          thomasfuchs@hachyderm.io
          wrote last edited by
          #4

          @cwebber is that the AI that is trained on millions of lines of vulnerabilities

          cwebber@social.coopC 1 Reply Last reply
          0
          • thomasfuchs@hachyderm.ioT thomasfuchs@hachyderm.io

            @cwebber is that the AI that is trained on millions of lines of vulnerabilities

            cwebber@social.coopC This user is from outside of this forum
            cwebber@social.coopC This user is from outside of this forum
            cwebber@social.coop
            wrote last edited by
            #5

            @thomasfuchs Yep!

            As said, attacking is easier than defending 🙂

            1 Reply Last reply
            0
            • cwebber@social.coopC cwebber@social.coop

              Significant raise of reports (on the Linux Kernel Mailing List) https://lwn.net/Articles/1065620/

              Here's something I think we all will have to contend with, whether you're an AIgen enthusiast or not: attacking is easier than defending, and these things don't get tired and they *are* very good at finding exploits. None of us will be able to ignore that, and we will probably have to listen to real genuine reports from them, even if we reject AIgen input.

              However, I don't think that's actually the right solution, and I don't think it's sustainable. 🧵

              jmax@mastodon.socialJ This user is from outside of this forum
              jmax@mastodon.socialJ This user is from outside of this forum
              jmax@mastodon.social
              wrote last edited by
              #6

              @cwebber - I'd be curious about whether LLMs are better than straight up fuzzing. (My suspicion is not, but people are throwing more resources at the LLM efforts.)

              cwebber@social.coopC 1 Reply Last reply
              0
              • jmax@mastodon.socialJ jmax@mastodon.social

                @cwebber - I'd be curious about whether LLMs are better than straight up fuzzing. (My suspicion is not, but people are throwing more resources at the LLM efforts.)

                cwebber@social.coopC This user is from outside of this forum
                cwebber@social.coopC This user is from outside of this forum
                cwebber@social.coop
                wrote last edited by
                #7

                @jmax Probably LLMs PLUS fuzzing would be extremely powerful.

                jmax@mastodon.socialJ 1 Reply Last reply
                0
                • cwebber@social.coopC cwebber@social.coop

                  I don't think human reviewers are going to be able to keep up with the number of vulnerabilities we're seeing appear. I really don't. Humans won't be able to review at scale, and I also think that there's serious risks for blindly accepting AIgen patches, which for critical infrastructure could also be a path to *inserting new* vulnerabilities.

                  We need to attack this systemically.

                  I have more to say. More later. But that's the gist for now.

                  demofox@mastodon.gamedev.placeD This user is from outside of this forum
                  demofox@mastodon.gamedev.placeD This user is from outside of this forum
                  demofox@mastodon.gamedev.place
                  wrote last edited by
                  #8

                  @cwebber also: inserting LLMs into everything makes social engineering an attack vector in every place they are inserted!

                  1 Reply Last reply
                  0
                  • cwebber@social.coopC cwebber@social.coop

                    I don't think human reviewers are going to be able to keep up with the number of vulnerabilities we're seeing appear. I really don't. Humans won't be able to review at scale, and I also think that there's serious risks for blindly accepting AIgen patches, which for critical infrastructure could also be a path to *inserting new* vulnerabilities.

                    We need to attack this systemically.

                    I have more to say. More later. But that's the gist for now.

                    faoluin@chitter.xyzF This user is from outside of this forum
                    faoluin@chitter.xyzF This user is from outside of this forum
                    faoluin@chitter.xyz
                    wrote last edited by
                    #9

                    @cwebber My take is that these large models are very good at pattern matching, so let them match patterns. Let them review. *Maybe* let them write fixes as a *suggestion*, with the understanding that these are *tools* which are sometimes wrong.

                    They need to be trained ethcially, built with purpose and with guard rails, but I think it could absolutely be done and done well, enough to outstrip current rules-based review tools, if the grift market wasn't so desperate right now.

                    1 Reply Last reply
                    0
                    • cwebber@social.coopC cwebber@social.coop

                      The fact of the matter is, most vulnerabilities fall under extremely common patterns, with known solutions:

                      - Confused deputies: capability security can fix/contain this in many cases, more on that later
                      - Injection attacks: primarily caused by string templating, using structured templating also fixes this (quasiquote, functional combinators, etc)
                      - Memory vulnerabilities: solved by memory-safe languages, and yes that includes Rust, but it also includes Python, Scheme/Lisp, etc etc etc

                      There are other serious vulnerabilities, such as incorrectly written or used cryptography, and others from there, but my primary point is: most damage can be either avoided in the first place or contained (especially in terms of capability security for containment)

                      And... patching AIgen patches is going to get tough and tiring... (cotd...)

                      agentultra@types.plA This user is from outside of this forum
                      agentultra@types.plA This user is from outside of this forum
                      agentultra@types.pl
                      wrote last edited by
                      #10

                      @cwebber the neat ones fall under langsec; funny machines and the like. More rare and difficult to find/exploit but I have been wary to see if LLMs can pick up on the patterns that lead to them.

                      1 Reply Last reply
                      0
                      • cwebber@social.coopC cwebber@social.coop

                        @jmax Probably LLMs PLUS fuzzing would be extremely powerful.

                        jmax@mastodon.socialJ This user is from outside of this forum
                        jmax@mastodon.socialJ This user is from outside of this forum
                        jmax@mastodon.social
                        wrote last edited by
                        #11

                        @cwebber - Maybe.

                        1 Reply Last reply
                        0
                        • cwebber@social.coopC cwebber@social.coop

                          The fact of the matter is, most vulnerabilities fall under extremely common patterns, with known solutions:

                          - Confused deputies: capability security can fix/contain this in many cases, more on that later
                          - Injection attacks: primarily caused by string templating, using structured templating also fixes this (quasiquote, functional combinators, etc)
                          - Memory vulnerabilities: solved by memory-safe languages, and yes that includes Rust, but it also includes Python, Scheme/Lisp, etc etc etc

                          There are other serious vulnerabilities, such as incorrectly written or used cryptography, and others from there, but my primary point is: most damage can be either avoided in the first place or contained (especially in terms of capability security for containment)

                          And... patching AIgen patches is going to get tough and tiring... (cotd...)

                          dalias@hachyderm.ioD This user is from outside of this forum
                          dalias@hachyderm.ioD This user is from outside of this forum
                          dalias@hachyderm.io
                          wrote last edited by
                          #12

                          @cwebber Memory vulnerabilities are also drastically cut off (not entirely precluded, but far less likely) if, when using C, you reject any temptation to have complex object lifetimes and work as much as possible with long-lived, reserved-in-advance storage. The kernel is a horrible offender on getting this wrong.

                          jpetazzo@hachyderm.ioJ ska@social.treehouse.systemsS 2 Replies Last reply
                          0
                          • cwebber@social.coopC cwebber@social.coop

                            Significant raise of reports (on the Linux Kernel Mailing List) https://lwn.net/Articles/1065620/

                            Here's something I think we all will have to contend with, whether you're an AIgen enthusiast or not: attacking is easier than defending, and these things don't get tired and they *are* very good at finding exploits. None of us will be able to ignore that, and we will probably have to listen to real genuine reports from them, even if we reject AIgen input.

                            However, I don't think that's actually the right solution, and I don't think it's sustainable. 🧵

                            zenkat@sfba.socialZ This user is from outside of this forum
                            zenkat@sfba.socialZ This user is from outside of this forum
                            zenkat@sfba.social
                            wrote last edited by
                            #13

                            @cwebber If attacking is easier than defending, then the solution is to attack yourself first. Hire an army of bots to attack every surface they can find on your systems, and report them to you before someone else exploits them.

                            1 Reply Last reply
                            0
                            • dalias@hachyderm.ioD dalias@hachyderm.io

                              @cwebber Memory vulnerabilities are also drastically cut off (not entirely precluded, but far less likely) if, when using C, you reject any temptation to have complex object lifetimes and work as much as possible with long-lived, reserved-in-advance storage. The kernel is a horrible offender on getting this wrong.

                              jpetazzo@hachyderm.ioJ This user is from outside of this forum
                              jpetazzo@hachyderm.ioJ This user is from outside of this forum
                              jpetazzo@hachyderm.io
                              wrote last edited by
                              #14

                              @dalias do you know of any book/article/... that would explain or describe how to design a general purpose kernel with that in mind? (I wonder what things like file descriptors, device handlers, etc would look like there!)

                              dalias@hachyderm.ioD 1 Reply Last reply
                              0
                              • cwebber@social.coopC cwebber@social.coop

                                I don't think human reviewers are going to be able to keep up with the number of vulnerabilities we're seeing appear. I really don't. Humans won't be able to review at scale, and I also think that there's serious risks for blindly accepting AIgen patches, which for critical infrastructure could also be a path to *inserting new* vulnerabilities.

                                We need to attack this systemically.

                                I have more to say. More later. But that's the gist for now.

                                linear@nya.socialL This user is from outside of this forum
                                linear@nya.socialL This user is from outside of this forum
                                linear@nya.social
                                wrote last edited by
                                #15
                                @cwebber@social.coop we need microkernel based operating systems with capability-based security enforcement, isolation of components from each other as a baseline assumption, and formal verification of the whole thing at both the code and spec level, and we need all of this quite urgently
                                linear@nya.socialL dlakelan@mastodon.sdf.orgD fcbsd@hachyderm.ioF betarays@p.changeme.fr.eu.orgB teajaygrey@snac.bsd.cafeT 5 Replies Last reply
                                0
                                • linear@nya.socialL linear@nya.social
                                  @cwebber@social.coop we need microkernel based operating systems with capability-based security enforcement, isolation of components from each other as a baseline assumption, and formal verification of the whole thing at both the code and spec level, and we need all of this quite urgently
                                  linear@nya.socialL This user is from outside of this forum
                                  linear@nya.socialL This user is from outside of this forum
                                  linear@nya.social
                                  wrote last edited by
                                  #16
                                  @cwebber@social.coop things like genode/sculpt are looking more enticing every day that passes by
                                  1 Reply Last reply
                                  0
                                  • dalias@hachyderm.ioD dalias@hachyderm.io

                                    @cwebber Memory vulnerabilities are also drastically cut off (not entirely precluded, but far less likely) if, when using C, you reject any temptation to have complex object lifetimes and work as much as possible with long-lived, reserved-in-advance storage. The kernel is a horrible offender on getting this wrong.

                                    ska@social.treehouse.systemsS This user is from outside of this forum
                                    ska@social.treehouse.systemsS This user is from outside of this forum
                                    ska@social.treehouse.systems
                                    wrote last edited by
                                    #17

                                    @dalias For complex objects, the main problem I've identified is the coupling of storage and structure. When storing data in the structure, it's easy to free when you shouldn't and vice-versa.

                                    Decoupling storage from structure is the best practice I've learned over the past 15 years, and it's applicable even when you can't reserve your storage in advance.

                                    Storage provisioning is useful, but it's mostly useful with another safety aspect: failing as early as possible and avoiding resource allocation in critical moments.

                                    navi@social.vlhl.devN 1 Reply Last reply
                                    0
                                    • ska@social.treehouse.systemsS ska@social.treehouse.systems

                                      @dalias For complex objects, the main problem I've identified is the coupling of storage and structure. When storing data in the structure, it's easy to free when you shouldn't and vice-versa.

                                      Decoupling storage from structure is the best practice I've learned over the past 15 years, and it's applicable even when you can't reserve your storage in advance.

                                      Storage provisioning is useful, but it's mostly useful with another safety aspect: failing as early as possible and avoiding resource allocation in critical moments.

                                      navi@social.vlhl.devN This user is from outside of this forum
                                      navi@social.vlhl.devN This user is from outside of this forum
                                      navi@social.vlhl.dev
                                      wrote last edited by
                                      #18
                                      @ska @dalias

                                      "decouple storage from structure" is one of the best things but when i first started trying to think about it more, it was hard to wrap my head around how to design things to work like that

                                      i feel like a page of example apis or a book or smth would be very helpful for new folks not familiar with it
                                      ska@social.treehouse.systemsS 1 Reply Last reply
                                      0
                                      • cwebber@social.coopC cwebber@social.coop

                                        I don't think human reviewers are going to be able to keep up with the number of vulnerabilities we're seeing appear. I really don't. Humans won't be able to review at scale, and I also think that there's serious risks for blindly accepting AIgen patches, which for critical infrastructure could also be a path to *inserting new* vulnerabilities.

                                        We need to attack this systemically.

                                        I have more to say. More later. But that's the gist for now.

                                        bob@epicyon.libreserver.orgB This user is from outside of this forum
                                        bob@epicyon.libreserver.orgB This user is from outside of this forum
                                        bob@epicyon.libreserver.org
                                        wrote last edited by
                                        #19

                                        @cwebber It's a target rich environment.

                                        I am also seeing cases where maintainers seem to be slamming "accept" on slop PRs and hoping for the best. Could be time pressure or burnout.

                                        1 Reply Last reply
                                        0
                                        • linear@nya.socialL linear@nya.social
                                          @cwebber@social.coop we need microkernel based operating systems with capability-based security enforcement, isolation of components from each other as a baseline assumption, and formal verification of the whole thing at both the code and spec level, and we need all of this quite urgently
                                          dlakelan@mastodon.sdf.orgD This user is from outside of this forum
                                          dlakelan@mastodon.sdf.orgD This user is from outside of this forum
                                          dlakelan@mastodon.sdf.org
                                          wrote last edited by
                                          #20

                                          @linear @cwebber

                                          I'd set aside the formal verification requirement to get the rest of it. I really do think microkernels were the right way to go, it's just that in 1992 or whatever the consumer hardware wasn't up to the task. I think probably around 2005 or so the hardware started to be able to afford to do that. But that's approximately the time that VMs and containers took off. Now we have this giant mess.

                                          linear@nya.socialL kirtai@tech.lgbtK teajaygrey@snac.bsd.cafeT 3 Replies Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups