Kubernetes Namespace Escalation
In Kubernetes is dit redelik algemeen dat jy op een of ander manier toegang kry tot 'n naamruimte (deur 'n paar gebruikerslegitimasie te steel of deur 'n pod te kompromitteer). Gewoonlik sal jy egter belangstel om na 'n ander naamruimte te eskaleer, omdat daar meer interessante dinge gevind kan word.
Hier is 'n paar tegnieke wat jy kan probeer om na 'n ander naamruimte te ontsnap:
Misbruik K8s-voorregte
Vanzelfsprekend, as die rekening wat jy gesteel het sensitiewe voorregte oor die naamruimte het waarna jy wil eskaleer, kan jy misbruik maak van aksies soos podde skep met diensrekeninge in die NS, uitvoering van 'n skil in 'n reeds bestaande pod binne die ns, of lees die geheim SA-token.
Vir meer inligting oor watter voorregte jy kan misbruik, lees:
Abusing Roles/ClusterRoles in KubernetesOntsnap na die node
As jy kan ontsnap na die node, óf omdat jy 'n pod gekompromitteer het en kan ontsnap, óf omdat jy 'n bevoorregte pod kan skep en ontsnap, kan jy verskeie dinge doen om ander SA-tokens te steel:
Kyk vir SA-tokens wat in ander Docker-houers wat op die node loop, gemonteer is
Kyk vir nuwe kubeconfig-lêers op die node met ekstra toestemmings wat aan die node gegee is
As dit geaktiveer is (of aktiveer dit self), probeer om gespieëlde pods van ander naamruimtes te skep, aangesien jy moontlik toegang tot daardie naamruimtes se verstek-tokenrekeninge kan kry (ek het dit nog nie getoets nie)
Al hierdie tegnieke word verduidelik in:
Attacking Kubernetes from inside a PodLast updated