hyppäävä komentotulkki - bin/bash - pako rajoitetusta komentotulkista

Hyppäävä shell: Kuinka hyökkääjät pääsevät rajoitetuista shelleistä hakemistoon /bin/bash

Mikä on rajoitettu shell ja miksi hyppyshell-hyökkäykset ovat tärkeitä

Rajoitettuja komentotulkkeja käytetään hallitsemaan, mitä komentoja käyttäjät voivat suorittaa, usein estäen toimintoja, kuten cd, käynnistämällä uusia komentotulkkeja tai viemällä ympäristömuuttujia. Ne otetaan tyypillisesti käyttöön CI/CD agentteja tai rakentaa ympäristöjä käyttäjien käyttäytymisen rajoittamiseksi. Hyökkääjät kuitenkin etsivät tapoja suorittaa hyppyshell, menetelmä, jota käytetään rajoitettujen shell-ympäristöjen ohittamiseen ja pääsyn saamiseen rajoittamattomiin shelleihin, kuten roskakori/bashSisällä ollessasi it, hyökkääjällä on täydet komentorivioikeudet ohittaen kaikki rajoitetun ympäristön rajoitukset.

Jumping Shell toimii seuraavasti: Restrictedistä bin/bashiin

Hyppykuoren tavoitteena on hyödyntää rajoitettujen ympäristöjen heikkouksia ja laukaista kuoren pakeneminen, joka johtaa roskakori/bashYleisiä tekniikoita rajoitettujen shell-hyökkäysten pakoon ovat:

$ ls /bin/bash $ /bin/bash

If roskakori/bash on saatavilla, tämä yksinkertainen kutsu täydentää sen.

Toinen yleinen menetelmä:

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

Hyökkääjät voivat myös hyödyntää editoreita, kuten vi or vähemmän:

vi :set shell=/bin/bash :shell 

Nämä menetelmät havainnollistavat, kuinka helposti hyppäävä kuori voi johtaa roskakori/bash suorituksen, ohittaen tehokkaasti rajoitetut shell-suojaukset.

Näiden hyökkäysten todelliset riskit DevOpsissa

Jaetussa CI/CD ympäristöissä rajoitettuja komentotulkkeja käytetään eristämään koontiversioita ja vähentämään riskiä. Mutta kun hyökkääjä onnistuu hyppäävällä komentotulkilla ja saavuttaa roskakori/bash, turvallisuusmalli romahtaa.

Riskejä ovat:

  • Luvaton pääsy ympäristösalaisuuksiin
  • Etuoikeuksien eskalointi rajoittamattoman kautta roskakori/bash
  • Rakenteen peukalointi pipelines tai esineitä
  • Pysyvien työkalujen käyttöönotto pipeline

Pako-rajoitettu kuori kohteeseen roskakori/bash avaa oven täydelliselle järjestelmän kompromissille, usein ensimmäinen askel laajemmassa DevSecOps-hyökkäys.

Hyppykuoren ja bin/bash-karkausten seuranta ja havaitseminen

Jotta tietoturvatiimit voivat havaita hyppäävän shell-käyttäytymisen ja estää pakorajoitetut shell-yritykset, heidän on:

  • Kirjaa kaikki shell-toiminta, erityisesti / bin / bash teloitus
  • Seuraa editorin väärinkäyttöä ja komentosarjojen käyttöä shell-spawn-vektoreina
  • Seuraa käyttöoikeuksia shell-määritystiedostoihin, kuten Bashrc or .bash_profile

Käyttäytymismallit, kuten laukaiseminen roskakori/bash Rajoitetusta ympäristöstä tulevia hälytyksiä tulisi pitää erittäin tärkeinä. Niiden havaitseminen varhain voi estää syvemmän sivuttaisliikkeen.

Escape Restricted Shell -hyökkäysten ja -hyökkäysten estäminen

Hyppäävien kuorien riskien lieventämiseksi ja hyökkääjien laukaisemisen estämiseksi roskakori/bash:

  • Rajoitettujen kuorien kovettaminen: Poista tai estä pääsy
  • Käytä AppArmoria tai SELinuxia komentojen suorittamisen rajoittamiseen
  • Pakota pienimmät käyttöoikeudet kaikkialle CI/CD roolit ja juoksijat
  • Konteineroida koontiversiot, joissa on hajauttamattomia kuvia ilman shellejä, kuten roskakori/bash
  • Ympäristöjen validointi ennen koontia ja sen jälkeen poikkeavuuksien havaitsemiseksi

Rajoitettujen shellien skenaarioiden välttäminen vaatii kerrostettuja suojausmenetelmiä, ei pelkästään rajoitettuihin shelleihin luottamista. Älä oleta rajoitettujen shellien olevan turvallisia, jos roskakori/bash on jopa potentiaalisesti tavoitettavissa.

Johtopäätös: Shell-vuodot ovat sisäänpääsykohtia

Rajoitetut kuoret ovat puolustuskerros, eivät takuu. Hyppykuoren hyökkäykset kohdistuvat heikkoon eristykseen ja heikkoon validointiin. Sisään päästyään / bin / bashhyökkääjät voivat siirtyä DevSecOps-infrastruktuuriin, pysyä siinä ja vaarantaa sen.

Havaitseminen ja eristäminen ovat olennaisia. Komentolokikirjauksen, rajoitettujen ympäristöjen ja pakettienhallinnan asianmukaisen puhdistuksen yhdistäminen vähentää altistumista.

Lopuksi työkalut, kuten Xygeni tarjoavat näkyvyyttä näihin riskeihin. Ne auttavat varmistamaan koodin eheyden, havaitsemaan epätavallista komentotulkin toimintaa ja suojaa oma pipelinesisäisiltä ja ulkoisilta uhilta, mukaan lukien ne, jotka alkavat yksinkertaisella hyppykuorella / bin / bash tai yrittää paeta rajoitetuista shell-ympäristöistä.

sca-työkalut-ohjelmisto-koostumusanalyysityökalut
Priorisoi, korjaa ja suojaa ohjelmistoriskisi
Hanki ilmainen tili.
Luottokorttia ei vaadita.

Turvaa ohjelmistokehityksesi ja -toimituksesi

Xygeni-tuotepaketin kanssa