OpenShift - SCC bypass
Originalni autor ove stranice je Guillaume
Privilegovani Prostori Imena
Podrazumevano, SCC se ne primenjuje na sledeće projekte:
default
kube-system
kube-public
openshift-node
openshift-infra
openshift
Ako implementirate podove unutar jednog od ovih imenskih prostora, nijedan SCC neće biti primenjen, što omogućava implementaciju privilegovanih podova ili montiranje datotečnog sistema domaćina.
Oznaka Imenskog Prostora
Postoji način da se onemogući primena SCC-a na vašem podu prema RedHat dokumentaciji. Potrebno je da imate barem jedno od sledećih ovlašćenja:
Kreirajte Imenski Prostor i Kreirajte Pod u ovom Imenskom Prostoru
Uredite Imenski Prostor i Kreirajte Pod u ovom Imenskom Prostoru
Specifična oznaka openshift.io/run-level
omogućava korisnicima da zaobiđu SCC-ove za aplikacije. Prema RedHat dokumentaciji, kada se koristi ova oznaka, nijedan SCC nije primenjen na sve podove unutar tog imenskog prostora, efikasno uklanjajući bilo kakva ograničenja.
Dodavanje Oznake
Za dodavanje oznake u vaš imenski prostor:
Da biste kreirali namespace sa oznakom putem YAML datoteke:
Sada, svi novi podovi kreirani u namespace-u ne bi trebalo da imaju bilo koji SCC
U odsustvu SCC-a, nema ograničenja na definiciju vašeg poda. To znači da se zlonamerni pod može lako kreirati da bi pobegao na sistem domaćina.
Sada je postalo lakše eskalirati privilegije kako bi se pristupilo sistem domaćinu i kasnije preuzelo čitav klaster, stekavši privilegije 'cluster-admin'. Potražite deo Node-Post Exploitation na sledećoj stranici:
Prilagođene oznake
Štaviše, na osnovu ciljanog postavke, neke prilagođene oznake / anotacije mogu se koristiti na isti način kao u prethodnom scenariju napada. Čak i ako nije namenjeno, oznake se mogu koristiti za davanje dozvola, ograničavanje ili ne ograničavanje određenih resursa.
Pokušajte da pronađete prilagođene oznake ako možete da pročitate neke resurse. Evo liste zanimljivih resursa:
Pod
Deployment
Namespace
Service
Route
Nabroj sve privilegovane namespace-ove
Napredna eksploatacija
U OpenShift-u, kao što je ranije prikazano, imati dozvolu za implementaciju poda u namespace-u sa oznakom openshift.io/run-level
može dovesti do jednostavnog preuzimanja klastera. Sa stanovišta podešavanja klastera, ova funkcionalnost ne može biti onemogućena, jer je inherentna dizajnu OpenShift-a.
Međutim, mere zaštite poput Open Policy Agent GateKeeper-a mogu sprečiti korisnike da postave ovu oznaku.
Da bi zaobišli pravila GateKeeper-a i postavili ovu oznaku radi izvršenja preuzimanja klastera, napadači bi trebali identifikovati alternativne metode.
Reference
Last updated