diff options
author | Benny Baumann <BenBE@geshi.org> | 2023-11-04 16:32:18 +0100 |
---|---|---|
committer | Benny Baumann <BenBE@geshi.org> | 2023-11-08 09:13:36 +0100 |
commit | a64d1ea6c02923289a36119f162d90fff1e4997d (patch) | |
tree | 9f8e7d4551d5b348feecde13f572720a651f470b /linux/LinuxProcessTable.c | |
parent | e9d95e2a84dedb75e9464e8ddd245ec881ac04f8 (diff) |
Avoid OOB read when parsing process memory maps on Linux
Diffstat (limited to 'linux/LinuxProcessTable.c')
-rw-r--r-- | linux/LinuxProcessTable.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/linux/LinuxProcessTable.c b/linux/LinuxProcessTable.c index 582b5228..71ad915f 100644 --- a/linux/LinuxProcessTable.c +++ b/linux/LinuxProcessTable.c @@ -606,6 +606,9 @@ static void LinuxProcessTable_readMaps(LinuxProcess* process, openat_arg_t procF if (' ' != *readptr++) continue; + if (!readptr[0] || !readptr[1] || !readptr[2] || !readptr[3]) + continue; + map_execute = (readptr[2] == 'x'); readptr += 4; if (' ' != *readptr++) |