Messages in this thread | | | Subject | Re: [PATCH] lkdtm: Test KUAP directional user access unlocks on powerpc | From | Christophe Leroy <> | Date | Fri, 31 Jan 2020 07:58:16 +0100 |
| |
Le 31/01/2020 à 07:53, Russell Currey a écrit : > On Fri, 2020-01-31 at 07:44 +0100, Christophe Leroy wrote: >> >> Le 31/01/2020 à 06:31, Russell Currey a écrit : >>> + pr_info("attempting bad read at %px with write allowed\n", >>> ptr); >>> + tmp = *ptr; >>> + tmp += 0xc0dec0de; >>> + prevent_write_to_user(ptr, sizeof(unsigned long)); >> >> Does it work ? I would have thought that if the read fails the >> process >> will die and the following test won't be performed. > > Correct, the ACCESS_USERSPACE test does the same thing. Splitting this > into separate R and W tests makes sense, even if it is unlikely that > one would be broken without the other. >
Or once we are using user_access_begin() stuff, we can use unsafe_put_user() and unsafe_get_user() which should return an error instead of killing the caller.
Christophe
| |