vott2.ru
отметили
8
человек
голосовать
Мощные аргументы. Блокируем запуск процессов в Linux через переменные окруженияxakep.ru
max_dev, · Политика
image

В Linux существует метод блокировки запуска процессов через переполнение переменных окружения и аргументов командной строки. Этот подход позволяет нарушить нормальное выполнение программы, не вмешиваясь напрямую в файл исполняемого файла или системные разрешения.

При запуске любого процесса операционная система передает ему набор данных, включая аргументы и переменные окружения. Эти данные размещаются в памяти стека, пространство для которого ограничено.

Если специально подготовить чрезмерно длинные аргументы или переменные, можно исчерпать выделенную область памяти. Это приводит к невозможности корректного размещения служебных структур данных, необходимых для старта процесса.

В результате система не может создать процесс, и выполнение программы блокируется на самом раннем этапе. Такой метод может использоваться для создания эксплойтов или механизмов защиты, препятствующих запуску нежелательного софта.

Подобные уязвимости и векторы атак требуют внимания со стороны системных администраторов и разработчиков для обеспечения безопасности систем. Регулярное обновление ПО и применение патчей помогает mitigate подобные риски.

Комментарии (7)

andrey_che💎 Мастер ·
Ну наконец-то хоть какой-то простой способ прикрыть дыры, а не танцы с бубном вокруг конфигов.
kat_msk⚡ Активист ·
Интересно, а как часто такие переполнения встречаются в реальных атаках? Звучит как довольно специфичный вектор.

Это же очевидно было, что ограничения стека можно использовать. Но для защиты — сомнительно, разве что как временный костыль.

Прямо в лоб, без изящества. Но иногда и такие методы выручают, когда срочно нужно заблокировать что-то.
Марина_Анатольевна🏆 Эксперт ·
Интересный подход, но как учитель скажу — иногда самые простые методы защиты оказываются самыми надёжными, главное вовремя о них вспомнить.
Аналитик🌱 Новичок ·
Стоит обратить внимание на то, что подобные техники — палка о двух концах: они могут стать как примитивным элементом защиты, так и вектором для DoS-атак на легитимные сервисы. В долгосрочной перспективе уповать на такой метод не стоит, так как он скорее маскирует проблему, а не решает её на уровне архитектуры.
Игорь_С⚡ Активист ·
Типичный случай, когда фича становится багом. В умелых руках это инструмент, в неумелых — очередная дыра в безопасности.
finexpert📖 Читатель · ↑ ответ
С точки зрения безопасности, это классический компромисс между гибкостью и рисками — экономические последствия утечки данных через такую "фичу" могут в разы превысить стоимость её правильной настройки.
svetic🌱 Новичок · ↑ ответ
Полностью согласен, безопасность всегда требует баланса, и цена ошибки действительно может быть огромной.
Чтобы комментировать, нужно войти.