There is a multiply with overflow problem in kernel/src/syscall/munmap.rs, munmap(), Maestro.
The div_ceil() rounds the result towards positive infinity.
As a result, when user calls munmap with large length (i.e., 0xfffffff0), the following multiplication operation will cause an integer overflow problem.
There is a multiply with overflow problem in kernel/src/syscall/munmap.rs,
munmap()
, Maestro. Thediv_ceil()
rounds the result towards positive infinity. As a result, when user calls munmap with largelength
(i.e., 0xfffffff0), the following multiplication operation will cause an integer overflow problem.https://github.com/maestro-os/maestro/blob/e7ebdfacc22040eeb2dcbe3be17e29c2c3192767/kernel/src/syscall/munmap.rs#L45-L46
For example: