прескачаща обвивка - bin/bash - бягство от ограничена обвивка

Jumping Shell: Как атакуващите избягват ограничени шелове към /bin/bash

Какво е ограничена обвивка и защо атаките с jumping shell са важни

Ограничените обвивки се използват за контрол на това какви команди потребителите могат да изпълняват, често предотвратявайки действия като cd, стартиране на нови обвивки или експортиране на променливи на средата. Те обикновено се разполагат в CI/CD агенти или изграждат среди, за да ограничат поведението на потребителите. Въпреки това, атакуващите търсят начини да изпълнят jumping shell, метод, използван за излизане от ограничени среди на shell и получаване на достъп до неограничени shell-ове като bin/bashВеднъж вътре it, атакуващият има пълен контрол от командния ред, заобикаляйки всички ограничения на ограничената среда.

Как работи Jumping Shell: От Restricted до bin/bash

Целта на скачащата черупка е да използва слабостите в ограничена среда и да предизвика бягство от черупката, което води до bin/bashЧесто срещани техники за атаки с ограничено бягство от снаряди включват:

$ ls /bin/bash $ /bin/bash

If bin/bash е достъпно, това просто извикване го завършва.

Друг често срещан метод:

$ echo "/bin/bash" > run.sh $ sh run.sh 

Нападателите могат също да използват редактори като vi or по-малко:

vi :set shell=/bin/bash :shell 

Тези методи илюстрират колко лесно една скачаща черупка може да доведе до bin/bash изпълнение, ефективно заобикаляйки ограничените защити на обвивката.

Реалните рискове от тези атаки в DevOps

В споделено CI/CD В различни среди се използват ограничени обвивки за изолиране на компилации и намаляване на риска. Но когато атакуващ успее с jumping shell и достигне bin/bash, моделът на сигурност се срива.

Рисковете включват:

  • Неоторизиран достъп до тайни на околната среда
  • Ескалация на привилегиите чрез неограничен достъп bin/bash
  • Подправяне на конструкцията pipelineили артефакти
  • Внедряване на устойчиви инструменти в рамките на pipeline

Бягството е ограничило черупката до bin/bash отваря вратата за пълно компрометиране на системата, често първият ход в по-широк Атака на DevSecOps.

Мониторинг и откриване на Jumping Shell и bin/bash Escapes

За да открият поведението на jumping shell и да блокират опитите за escape-restred shell, екипите по сигурността трябва:

  • Записвайте цялата активност на shell-а, особено / bin / bash изпълнение
  • Следете злоупотребата с редактора и използването на скриптове като вектори за генериране на shell
  • Проследяване на достъпа до конфигурационни файлове на shell, като например .bashrc or .bash_profile

Поведенчески модели, като например стартиране bin/bash от ограничена среда трябва да се считат за високоприоритетни сигнали. Ранното им откриване може да предотврати по-дълбоко странично движение.

Предотвратяване на Escape Restricted Shell атаки и експлойти

За да се намалят рисковете от „скок от снаряди“ и да се предотврати изстрелването на атакуващите bin/bash:

  • Втвърдяване на ограничените черупки: Премахване или блокиране достъп
  • Използвайте AppArmor или SELinux, за да ограничите изпълнението на команди
  • Прилагане на най-малки привилегии CI/CD роли и бегачи
  • Контейнеризирани компилации с бездистрибутивни изображения, лишени от шелове, като например bin/bash
  • Валидирайте среди преди и след компилации, за да откриете аномалии

Предотвратяването на сценарии за излизане от ограничени обвивки изисква многопластови контроли, а не само разчитане на ограничени обвивки. Не приемайте, че ограничените обвивки са сигурни, ако bin/bash е дори потенциално достижимо.

Заключение: Бягствата от снаряди са входни точки

Ограничените снаряди са защитен слой, а не гаранция. Атаките със скачащи снаряди са насочени към слаба изолация и лошо валидиране. Веднъж вътре / bin / bash, атакуващите могат да се променят, да се задържат и да компрометират DevSecOps инфраструктурата.

Откриването и изолирането са от съществено значение. Комбинирането на регистриране на команди, ограничени среди и правилно почистване на мениджърите на пакети намалява експозицията.

Накрая, инструменти като Ксигени предлагат видимост за тези рискове. Те помагат за осигуряване на целостта на кода, откриване на необичайно поведение на обвивката и осигурете си pipelineот вътрешни и външни заплахи, включително тези, които започват с обикновена черупка за скачане до / bin / bash или опити за излизане от ограничени среди на обвивката.

инструменти за анализ на състава на софтуера SCA Tools
Приоритизирайте, отстранете и защитете софтуерните си рискове
Вземете своя безплатен акаунт.
Не е необходима кредитна карта.

Осигурете си разработка и доставка на софтуер

с продуктовия пакет Xygeni