
Выполнение кода для CVE-2017-11176
Концептуальное доказательство для CVE-2017-11176 с целью выполнения кода.
Функция mq_notify в ядре Linux до версии 4.11.9 не устанавливает указатель sock в NULL при входе в логику повторных попыток. При закрытии сокета Netlink в пользовательском пространстве это позволяет злоумышленникам вызвать отказ в обслуживании (использование после освобождения) или, возможно, иметь другое неопределённое воздействие.
Ознакомьтесь с этими статьями, я многому из них научился.
SMAP отключёнKASLR отключёнSLABheap.c: используется для обнаружения целевого кэша*.stp: эти файлы используются для отладки с помощью System Tap. Также offset.stap выводит смещения структурgdb.script: скрипт gdb для отладки. Он срабатывает на точку останова, если RAX находится в пользовательском пространстве. Обратите внимание, что мы вставим вторую точку останова после попадания в первую, чтобы избежать проблем с производительностью (wake_up вызывается много раз).