Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Strumenti/GitHubGitHub/bishopfox/badpods
Escalation di PrivilegiSicurezza dei ContenitoriExploitPenetration TestingSicurezza CloudConfigurazione ErrataEscape dal ContainerTop in Escape dal Container n.6
GitHubbishopfox/badpods

badPods

Una raccolta di manifest che creerà pod con privilegi elevati.

Vedi RepositorySito web
706118229 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Bad Pods

Una raccolta di manifest che creano pod con diversi privilegi elevati. Dimostra rapidamente l'impatto del consentire attributi dei pod sensibili per la sicurezza come hostNetwork, hostPID, hostPath, hostIPC e privileged.

Per ulteriori informazioni, consulta il nostro post del blog: Bad Pods: Kubernetes Pod Privilege Escalation.

Contenuti

  • La line-up dei Bad Pods
  • Prerequisiti
  • Organizzazione
  • Utilizzo
    • Approccio di alto livello
    • Esempi di utilizzo
      • Creare tutti e otto i Bad Pod dal repository locale clonato
      • Creare tutti e otto i Bad Pod da GitHub
      • Creare tutti e otto i Bad Pod con reverse shell
      • Creare tutti e otto i tipi di risorsa utilizzando il pod everything-allowed
      • Creare un cronjob con il pod hostNetwork
      • Creare un deployment con il pod priv-and-hostpid
      • Creare una reverse shell utilizzando il pod privileged
  • Riconoscimenti
  • Riferimenti e letture consigliate

La line-up dei Bad Pods

Ogni link di seguito fornisce informazioni dettagliate sull'utilizzo e raccomandazioni per la post-exploitation.

  • Bad Pod #1: Everything allowed
  • Bad Pod #2: Privileged and hostPid
  • Bad Pod #3: Privileged only
  • Bad Pod #4: hostPath only
  • Bad Pod #5: hostPid only
  • Bad Pod #6: hostNetwork only
  • Bad Pod #7: hostIPC only
  • Bad Pod #8: Nothing allowed

Per informazioni più generali su prerequisiti, organizzazione del repository e modelli di utilizzo comuni, consulta le sezioni sottostanti.

Prerequisiti

  1. Accesso a un cluster
  2. Permesso RBAC per creare uno dei seguenti tipi di risorsa in almeno un namespace:
    • CronJob, DeamonSet, Deployment, Job, Pod, ReplicaSet, ReplicationController, StatefulSet
  3. Permesso RBAC per eseguire l'exec nei pod o una network policy che consenta a una reverse shell di raggiungerti da un pod.
  4. Nessuna pod security policy applicata, oppure una policy che consenta di creare pod con uno o più attributi sensibili per la sicurezza

Organizzazione

  • 128 manifest autonomi e pronti all'uso. Perché così tanti?
    • 8 Bad Pods (hostpid, hostnetwork, everything-allowed, ecc.)
    • 8 tipi di risorsa che possono creare pod (pod, deployment, replicaset, statefulset, ecc.)
    • 2 modi per accedere ai pod creati (exec e reverse shell)
├── manifests
│   ├── everything-allowed
│   │   ├── cronjob
│   │   │   ├── everything-allowed-exec-cronjob.yaml
│   │   │   └── everything-allowed-revshell-cronjob.yaml
│   │   ├── daemonset
│   │   │   ├── everything-allowed-exec-daemonset.yaml
│   │   │   └── everything-allowed-revshell-daemonset.yaml
│   │   ├── deployment
│   │   │   ├── everything-allowed-exec-deployment.yaml
│   │   │   └── everything-allowed-revshell-deployment.yaml
│   │   ├── job
│   │   │   ├── everything-allowed-exec-job.yaml
│   │   │   └── everything-allowed-revshell-job.yaml
│   │   ├── pod
│   │   │   ├── everything-allowed-exec-pod.yaml
│   │   │   └── everything-allowed-revshell-pod.yaml
│   │   ├── replicaset
│   │   │   ├── everything-allowed-exec-replicaset.yaml
│   │   │   └── everything-allowed-revshell-replicaset.yaml
│   │   ├── replicationcontroller
│   │   │   ├── everything-allowed-exec-replicationcontroller.yaml
│   │   │   └── everything-allowed-revshell-replicationcontroller.yaml
│   │   └── statefulset
│   │       ├── everything-allowed-exec-statefulset.yaml
│   │       └── everything-allowed-revshell-statefulset.yaml
│   ├── hostipc
│   │   ├── cronjob
│   │   │   ├── hostipc-exec-cronjob.yaml
│   │   │   └── hostipc-revshell-cronjob.yaml
│   │   ├── daemonset
│   │   │   ├── hostipc-exec-daemonset.yaml
│   │   │   └── hostipc-revshell-daemonset.yaml
...omitted for brevity...

Ci sono otto modi per creare un pod

Come sottolinea Eviatar Gerzi (@g3rzi) nel post Eight Ways to Create a Pod, ci sono 8 diversi controller che possono creare un pod o un insieme di pod. Potresti non essere autorizzato a creare pod, ma forse puoi creare un altro tipo di risorsa che creerà uno o più pod. Per ogni tipo di badPod, sono disponibili manifest che corrispondono a tutti e otto i tipi di risorsa.

Ma aspetta, c'è di peggio! Oltre agli otto controller Kubernetes attuali che possono creare pod, esistono controller di terze parti che possono creare pod se vengono applicati al cluster. Tienili d'occhio esaminando kubectl api-resources.

Reverse shell

Sebbene comune, non è sempre possibile eseguire l'exec nei pod che puoi creare. Per aiutare in queste situazioni, è inclusa una versione di ciascun manifest che utilizza l'immagine Docker Hub ncat di Rory McCune (@raesene). Una volta creato, il pod effettuerà una chiamata criptata verso il tuo listener.

Utilizzo

Ogni risorsa nella directory manifests punta a un attributo specifico o a una combinazione di attributi che, quando consentiti, espongono il cluster a rischi.

Approccio di alto livello

Opzione 1: Approccio metodico

  1. Valuta RBAC - Determina quali tipi di risorsa puoi creare
  2. Valuta la Admission Policy - Determina quali Bad Pod sarai in grado di creare
  3. Crea le risorse - In base a ciò che è consentito, usa il tipo di badPod e il tipo di risorsa specifici e crea le tue risorse
  4. Post exploitation - Valuta i passaggi di post exploitation descritti nel README per quel tipo
    • Everything allowed
    • Privileged and hostPid
    • Privileged only
    • hostPath only
    • hostPid only
    • hostNetwork only
    • hostIPC only
    • Nothing allowed
Scarica lo strumento