Messages in this thread | | | Date | Thu, 28 May 2015 01:02:29 +0300 | From | Cyrill Gorcunov <> | Subject | Re: [PATCH 1/2] prctl: more prctl(PR_SET_MM_*) checks |
| |
On Thu, May 28, 2015 at 12:47:57AM +0300, Alexey Dobriyan wrote: > Individual prctl(PR_SET_MM_*) calls do some checking to maintain > consistent view of mm->arg_start et al fields, but not enough. > In particular PR_SET_MM_ARG_START/PR_SET_MM_ARG_END/PR_SET_MM_ENV_START/PR_SET_MM_ENV_END > only check that address lies in existent VMA, but doesn't check that > start address is lower that end address _at all_. > > Consolidate all consistency checks, so there will be no difference in > the future between PR_SET_MM_MAP and individual PR_SET_MM_* calls. > > The program below makes both ARGV and ENVP areas reverted, > makes /proc/$PID/cmdline show garbage (doesn't oops by luck).
Why should it oops? Actually i would really love to drop off old PR_SET_MM_ interface completely (which requires CAP_SYS_RESOURCE), leaving only MM_MAP. But thank you!
Acked-by: Cyrill Gorcunov <gorcunov@openvz.org>
| |