История изменений
Исправление KivApple, (текущая версия) :
Это всё абстрактные рассуждения, а если рассуждать конкретно?
Например, у нас в приложении buffer overflow дающий RCE. Это позволяет загрузить и выполнить несколько сотен байт машинного кода, может килобайт. Переполнишь буфер слишком сильно - затрешь что-то нужное или выйдешь за пределы выделенной процессу памяти и он упадёт раньше, чем выполнит твой эксплойт.
В общем, первая дырка через которую эксплойт попадает в систему часто не позволяет с собой принести много. И эксплойт использует по максимуму системных библиотек и утилит, чтобы догрузить свою основную часть уже не ограниченную по объёму.
В эти сотни байт или килобайты будет зашит exec curl url полезной нагрузки. А если у тебя в контейнере curl нет, wget нет, bash нет, питона нет, perl нет, ничего нет, то выходит, то что то что пробило софт должно быть способно в полностью автономном режиме без посторонней помощи докачать куски себя (использовать функции из статически слинкованного приложения, как правило затруднительно, так как там всё по разным адресам и без имён, остаются одни syscall).
Взломщику сильно усложняется жизнь.
Исходная версия KivApple, :
Это всё абстрактные рассуждения, а если рассуждать конкретно?
Например, у нас в приложении buffer overflow дающий RCE. Это позволяет загрузить и выполнить несколько сотен байт машинного кода, может килобайт. Переполнишь буфер слишком сильно - затрешь что-то нужное или выйдешь за пределы выделенной процессу памяти и он упадёт раньше, чем выполнит твой эксплойт.
В общем, первая дырка через которую эксплойт попадает в систему часто не позволяет с собой принести много. И эксплойт использует по максимуму системных библиотек и утилит, чтобы догрузить свою основную часть уже не ограниченную по объёму.
В эти сотни байт или килобайты будет зашит exec curl url полезной нагрузки. А если у тебя в контейнере curl нет, питона нет, perl нет, ничего нет, то выходит, то что то что пробило софт должно быть способно в полностью автономном режиме без посторонней помощи докачать куски себя (использовать функции из статически слинкованного приложения, как правило затруднительно, так как там всё по разным адресам и без имён).
Взломщику сильно усложняется жизнь.