Что такое ограниченный снаряд и почему важны атаки с использованием прыжкового снаряда
Ограниченные оболочки используются для контроля того, какие команды могут выполнять пользователи, часто запрещая такие действия, как cd, запуска новых оболочек или экспорта переменных окружения. Обычно они развёртываются в CI/CD агенты или создают среды для ограничения поведения пользователей. Однако злоумышленники ищут способы выполнить прыжковую оболочку, метод, используемый для выхода из ограниченных оболочек и получения доступа к неограниченным оболочкам, таким как бин/баш. Однажды внутри it, злоумышленник получает полный контроль над командной строкой, обходя все ограничения защищенной среды.
Как работает Jumping Shell: от Restricted до bin/bash
Целью прыжкового снаряда является использование слабостей в ограниченных условиях и инициирование побега снаряда, который приводит к бин/баш. Распространенные методы атак с использованием снарядов, ограниченных в возможности побега, включают:
$ ls /bin/bash $ /bin/bashIf бин/баш доступен, этот простой вызов завершает его.
Другой распространенный метод:
$ echo "/bin/bash" > run.sh $ sh run.sh Злоумышленники также могут использовать такие редакторы, как vi or Меньше:
vi :set shell=/bin/bash :shell Эти методы иллюстрируют, как легко прыгающий снаряд может привести к бин/баш выполнение, эффективно обходя ограниченную защиту оболочки.
Реальные риски подобных атак в DevOps
В общем доступе CI/CD В таких средах ограниченные оболочки используются для изоляции сборок и снижения риска. Но когда злоумышленник успешно использует прыжковую оболочку и достигает бин/баш, модель безопасности рушится.
Риски включают:
- Несанкционированный доступ к секретам окружающей среды
- Повышение привилегий через неограниченный доступ бин/баш
- Вмешательство в конструкцию pipelineили артефакты
- Развертывание постоянных инструментов в рамках pipeline
Побег ограничен оболочкой бин/баш открывает дверь к полному взлому системы, часто это первый шаг в более широком плане Атака DevSecOps.
Мониторинг и обнаружение переходов через оболочку и экранирования bin/bash
Чтобы обнаружить поведение прыгающих снарядов и заблокировать попытки побега с ограничением снарядов, группы безопасности должны:
- Регистрируйте все действия оболочки, особенно / bin / bash казнь
- Мониторинг злоупотреблений редактором и использования скриптов как векторов появления оболочки
- Отслеживать доступ к файлам конфигурации оболочки, таким как .bashrc or .bash_profile
Поведенческие модели, такие как запуск бин/баш Оповещения из зоны ограниченного доступа следует рассматривать как высокоприоритетные. Раннее обнаружение может предотвратить более глубокое боковое смещение.
Предотвращение атак и эксплойтов с ограничением побега
Чтобы снизить риски прыжков со снарядом и не допустить запуска атакующих бин/баш:
- Укрепить ограниченные оболочки: удалить или заблокировать доступ
- Используйте AppArmor или SELinux для ограничения выполнения команд.
- Обеспечить соблюдение принципа наименьших привилегий CI/CD роли и бегуны
- Контейнерные сборки с образами distroless, в которых отсутствуют оболочки, такие как бин/баш
- Проверяйте среды до и после сборки, чтобы выявлять аномалии.
Предотвращение сценариев выхода из ограниченных оболочек требует многоуровневого контроля, а не просто опоры на ограниченные оболочки. Не стоит полагаться на ограниченные оболочки как на надежные, если бин/баш даже потенциально достижим.
Вывод: бегство снарядов — это точки входа
Ограниченные оболочки — это лишь уровень защиты, а не гарантия. Атаки с помощью прыжковых оболочек направлены на слабую изоляцию и недостаточную проверку. Попав внутрь / bin / bash, злоумышленники могут изменить свое поведение, сохранить позицию и поставить под угрозу инфраструктуру DevSecOps.
Обнаружение и изоляция крайне важны. Сочетание ведения журнала команд, ограниченных сред и надлежащей очистки менеджеров пакетов снижает риск заражения.
Наконец, такие инструменты, как Ксигени Они обеспечивают прозрачность этих рисков. Они помогают обеспечить целостность кода, обнаруживать необычное поведение оболочки и обезопасить свой pipelineот внутренних и внешних угроз, включая те, которые начинаются с простого прыжка на снаряде / bin / bash или попытки выхода из ограниченных сред оболочки.






