It was found that bus_process_object() in bus-objects.c allocates a buffer on the stack large enough to temporarily store the object path specified in the incoming message. A malicious unprivileged local user to send a message which results in the stack pointer moving outside of the bounds of the currently mapped stack region, jumping over the stack guard pages. A specifically crafted DBUS message could crash PID 1 and result in a subsequent kernel panic.
It was found that bus_process_object() in bus-objects.c allocates a buffer on the stack large enough to temporarily store the object path specified in the incoming message. A malicious unprivileged local user to send a message which results in the stack pointer moving outside of the bounds of the currently mapped stack region, jumping over the stack guard pages. A specifically crafted DBUS message could crash PID 1 and result in a subsequent kernel panic.
https://bugzilla.redhat.com/show_bug.cgi?id=1667032 https://www.openwall.com/lists/oss-security/2019/02/18/3 https://github.com/systemd/systemd/commit/612b74d32f970c43c14ad087ad086424792981b1 https://github.com/systemd/systemd/commit/61397a60d98e368a5720b37e83f3169e3eb511c4 https://github.com/systemd/systemd/commit/f519a19bcd5afe674a9b8fc462cd77d8bad403c1