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






