Model Ancaman Kubernetes
Bagian tempat kluster dapat diserang.
Model Ancaman Kubernetes adalah pelajaran Cyber Security Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Cyber Security Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Cyber Security Academy mencakup 4 pelajaran total.
Mengapa Kubernetes Menjadi Target
Kubernetes mengorkestrasi kontainer di banyak node. Kubernetes memusatkan rahasia, jaringan, dan komputasi, sehingga pengambilalihan klaster dapat berarti pengambilalihan setiap beban kerja yang dijalankannya.
- Satu server API mengendalikan seluruh klaster.
- Node menjalankan beban kerja banyak penyewa secara berdampingan.
- Kesalahan konfigurasi jauh lebih umum daripada CVE inti.
Ringkasan Arsitektur Klaster
Untuk menyusun model ancaman, kenali komponennya.
- Bidang kontrol: server API, etcd, penjadwal, pengelola pengontrol.
- Node: kubelet, waktu proses kontainer, kube-proxy, pod.
- etcd menyimpan seluruh status klaster dan rahasia.
Server API adalah titik masuk tunggal; etcd adalah aset data paling berharga.
Peta Permukaan Serangan
Serangan menargetkan lapisan yang berbeda.
- Eksternal: server API, dasbor, dan ingres yang terekspos.
- Beban kerja: aplikasi yang disusupi di dalam pod.
- Identitas: token akun layanan dan RBAC.
- Node: API kubelet, pelarian kontainer ke host.
- Rantai pasok: citra dan dependensi berbahaya.
Bidang Kontrol yang Terekspos
Server API atau kubelet yang dapat dijangkau dari internet dengan autentikasi lemah merupakan jalur langsung menuju pengambilalihan klaster.
- Akses anonim diaktifkan pada server API.
- API baca/tulis kubelet (port 10250) terekspos.
- Dasbor Kubernetes terbuka dengan pengikatan admin.
# Probe an exposed kubelet for running pods
curl -sk https://NODE_IP:10250/pods
# Test anonymous API access
kubectl --insecure-skip-tls-verify --server https://API:6443 get podsPijakan di Dalam Pod
Pijakan awal yang paling umum adalah RCE dalam aplikasi yang berjalan di pod. Dari dalam pod, penyerang menemukan:
- token akun layanan yang terpasang di
/var/run/secrets/.... - Layanan internal yang dapat dijangkau (tanpa kebijakan jaringan).
- Server API, yang sering dapat ditemukan dengan nama
kubernetes.default.
# From inside a pod: read the mounted SA token
cat /var/run/secrets/kubernetes.io/serviceaccount/token
# Use it against the API
curl -sk -H "Authorization: Bearer $(cat .../token)" https://kubernetes.default/api/v1/namespaces/default/podsPelarian Kontainer
Keluar dari kontainer ke node memberikan akses ke seluruh beban kerja pada host tersebut.
- Kontainer istimewa dapat mengakses perangkat host dan melarikan diri.
- Pemasangan hostPID/hostNetwork/hostPath memperluas dampak.
- Soket Docker yang terpasang memungkinkan Anda memulai kontainer istimewa.
- Kapabilitas berbahaya (
SYS_ADMIN) memungkinkan pelarian.
# A privileged pod can mount the host filesystem and chroot to it
mount /dev/sda1 /mnt && chroot /mnt shetcd: Penyimpanan Rahasia
etcd menyimpan seluruh status klaster, termasuk rahasia, yang secara bawaan hanya dikodekan dengan base64. Akses langsung ke etcd (yang sering tidak diautentikasi pada klaster yang salah konfigurasi) membocorkan setiap rahasia.
# Read all secrets from an exposed etcd
etcdctl --endpoints=https://NODE:2379 get / --prefix --keys-onlyPergerakan Lateral dalam Klaster
Setelah berada di dalam, penyerang berpindah menggunakan identitas dan jaringan klaster.
- Akun layanan yang terlalu permisif memungkinkan Anda membuat pod istimewa.
- Jaringan pod yang datar (tanpa NetworkPolicy) memungkinkan akses ke layanan mana pun.
- Menjadwalkan pod ke node target memungkinkan pengambilalihan node.
Metadata Cloud dari Pod
Dalam klaster terkelola (EKS/GKE/AKS), pod mungkin dapat mengakses layanan metadata komputasi awan milik node dan mencuri kredensial IAM/peran node, sehingga pengambilalihan klaster dapat menjalar ke akun komputasi awan.
Pertahanannya mencakup IMDSv2, pemblokiran metadata pada lapisan jaringan, dan penggunaan identitas beban kerja alih-alih peran node.
Memetakan dengan Alat
Alat mengotomatiskan penilaian ancaman klaster.
- kube-hunter menyelidiki komponen yang terekspos.
- kube-bench memeriksa kepatuhan terhadap tolok ukur CIS.
- Peirates / kubeletctl menguji jalur serangan di dalam klaster.
# Assess attack surface
kube-hunter --remote API_IP
# CIS benchmark check on a node
kube-bench run --targets nodePrioritas Pertahanan
Model ancaman menunjukkan prioritas pertahanan yang jelas: amankan server API, batasi RBAC, isolasi pod, perkuat node, dan amankan rantai pasok. Pelajaran berikutnya membahas masing-masing secara mendalam.
Saat melakukan pengujian, serang hanya klaster yang pengguna berwenang untuk mengujinya, dan hindari mengganggu kestabilan beban kerja produksi.
Pemeriksaan Cepat
Konfirmasikan pemahaman dasar Anda tentang pemodelan ancaman Kubernetes.
Ringkasan
Anda telah memetakan tempat klaster Kubernetes dapat diserang.
- Server API dan etcd adalah target utama yang terpusat dan paling bernilai.
- Pijakan di dalam pod memanfaatkan token SA yang terpasang dan jaringan datar.
- Pod istimewa/hostPath memungkinkan pelarian kontainer ke node.
- Klaster terkelola berisiko mengalami perpindahan ke cloud melalui metadata.
Berikutnya: RBAC dan akun layanan.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Model Ancaman Kubernetes” gratis?
Ya — teks lengkap “Model Ancaman Kubernetes” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Cyber Security Academy, upgrade ke CoddyKit PRO. Kursus Cyber Security Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Model Ancaman Kubernetes”?
Bagian tempat kluster dapat diserang. Kamu berlatih Cyber Security Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Cyber Security Academy?
Tidak diperlukan pengalaman sebelumnya. Cyber Security Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Model Ancaman Kubernetes” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Cyber Security Academy ini?
Ya. Setiap pelajaran Cyber Security Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Model Ancaman Kubernetes
- RBAC dan Akun Layanan
- Keamanan Pod dan Kebijakan Jaringan
- Mengamankan Rantai Pasokan dan Rahasia