Melompati shell - bin/bash - keluar dari shell terbatas

Melompati Shell: Bagaimana Penyerang Melarikan Diri dari Shell Terbatas ke /bin/bash

Apa Itu Restricted Shell dan Mengapa Serangan Jumping Shell Penting?

Shell terbatas digunakan untuk mengontrol perintah apa yang dapat dieksekusi pengguna, seringkali mencegah tindakan seperti cd, meluncurkan shell baru, atau mengekspor variabel lingkungan. Biasanya, mereka diterapkan di CI/CD agen atau membangun lingkungan untuk membatasi perilaku pengguna. Namun, penyerang mencari cara untuk melakukan jumping shell, sebuah metode yang digunakan untuk keluar dari lingkungan shell terbatas dan mendapatkan akses ke shell yang tidak terbatas seperti tempat sampah/bashSetelah masuk ke dalam itPenyerang memiliki kendali penuh atas baris perintah, melewati semua batasan dari lingkungan yang dibatasi.

Cara Kerja Jumping Shell: Dari Restricted ke bin/bash

Tujuan dari serangan lompatan cangkang adalah untuk mengeksploitasi kelemahan di lingkungan terbatas dan memicu pelarian cangkang yang mengarah ke tempat sampah/bashTeknik umum untuk menghindari serangan restricted shell meliputi:

$ ls /bin/bash $ /bin/bash

If tempat sampah/bash Jika dapat diakses, pemanggilan sederhana ini menyelesaikannya.

Metode umum lainnya:

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

Penyerang juga dapat mengeksploitasi editor seperti vi or kurang:

vi :set shell=/bin/bash :shell 

Metode-metode ini menggambarkan betapa mudahnya serangan cangkang melompat dapat menyebabkan tempat sampah/bash eksekusi, secara efektif melewati perlindungan shell yang dibatasi.

Risiko Nyata dari Serangan-Serangan Ini dalam DevOps

Dalam berbagi CI/CD Dalam lingkungan tertentu, shell terbatas digunakan untuk mengisolasi build dan mengurangi risiko. Namun, ketika penyerang berhasil dengan jumping shell dan mencapai tempat sampah/bash, model keamanan tersebut runtuh.

Resikonya meliputi:

  • Akses tidak sah ke rahasia lingkungan
  • Peningkatan hak akses melalui akses tanpa batasan. tempat sampah/bash
  • Mengutak-atik konstruksi pipelineatau artefak
  • Penerapan alat bantu permanen di dalam pipeline

Cangkang terbatas pelarian itu tempat sampah/bash membuka pintu bagi kompromi sistem secara menyeluruh, yang seringkali merupakan langkah pertama dalam serangan yang lebih luas. Serangan DevSecOps.

Memantau dan Mendeteksi Serangan Lompatan Shell dan Escape bin/bash

Untuk mendeteksi perilaku lompatan shell dan memblokir upaya shell yang dibatasi akses keluar, tim keamanan harus:

  • Catat semua aktivitas shell, terutama / bin / bash eksekusi
  • Pantau penyalahgunaan editor dan penggunaan skrip sebagai vektor pemicu shell.
  • Melacak akses ke file konfigurasi shell seperti .bashrc or .bash_profile

Pola perilaku seperti meluncurkan tempat sampah/bash Sinyal dari lingkungan terbatas harus dianggap sebagai peringatan prioritas tinggi. Mendeteksinya sejak dini dapat mencegah pergerakan lateral yang lebih dalam.

Mencegah Serangan dan Eksploitasi Escape Restricted Shell

Untuk mengurangi risiko serangan lompatan shell dan mencegah penyerang melancarkan serangan. tempat sampah/bash:

  • Perkuat cangkang yang dibatasi: Singkirkan atau blokir mengakses
  • Gunakan AppArmor atau SELinux untuk membatasi eksekusi perintah.
  • Terapkan prinsip hak akses minimal di seluruh sistem. CI/CD peran dan pelari
  • Containerize membangun dengan citra distroless yang tidak memiliki shell seperti tempat sampah/bash
  • Lakukan validasi lingkungan sebelum dan sesudah proses build untuk mendeteksi anomali.

Pencegahan skenario pelarian dari shell terbatas memerlukan kontrol berlapis, bukan hanya mengandalkan shell terbatas. Jangan berasumsi shell terbatas aman jika tempat sampah/bash bahkan berpotensi dapat dijangkau.

Kesimpulan: Celah pada Cangkang Merupakan Titik Masuk

Shell terbatas adalah lapisan pertahanan, bukan jaminan. Serangan jumping shell menargetkan isolasi yang lemah dan validasi yang buruk. Setelah berhasil masuk / bin / bash, penyerang dapat beralih fokus, bertahan, dan membahayakan infrastruktur DevSecOps.

Deteksi dan isolasi sangat penting. Kombinasi pencatatan perintah, lingkungan terbatas, dan pembersihan pengelola paket yang tepat mengurangi risiko.

Terakhir, alat-alat seperti Xygeni memberikan visibilitas terhadap risiko-risiko ini. Mereka membantu menegakkan integritas kode, mendeteksi perilaku shell yang tidak biasa, dan amankan milik Anda pipelinedari ancaman internal dan eksternal, termasuk yang dimulai dengan shell lompatan sederhana ke / bin / bash atau upaya untuk keluar dari lingkungan shell yang dibatasi.

perangkat lunak analisis komposisi sca
Prioritaskan, perbaiki, dan amankan risiko perangkat lunak Anda.
Dapatkan Akun Gratis Anda.
Tidak perlu kartu kredit.

Amankan Pengembangan dan Pengiriman Perangkat Lunak Anda

dengan Rangkaian Produk Xygeni