AWS - Lambda Persistence

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Lambda

Za više informacija pogledajte:

pageAWS - Lambda Enum

Persistencija Lambda sloja

Moguće je ubaciti/zadnja vrata u sloj da izvrši proizvoljni kod kada se lambda izvrši na prikriven način:

pageAWS - Lambda Layers Persistence

Persistencija Lambda ekstenzije

Zloupotrebom Lambda slojeva takođe je moguće zloupotrebiti ekstenzije i trajno se zadržati u lambdi, ali i ukrasti i menjati zahteve.

pageAWS - Abusing Lambda Extensions

Putem politika resursa

Moguće je dati pristup različitim lambda akcijama (kao što su pozivanje ili ažuriranje koda) spoljnim nalozima:

Verzije, Alias-i i Težine

Lambda može imati različite verzije (sa različitim kodom svake verzije). Zatim, možete kreirati različite alias-e sa različitim verzijama lambde i postaviti različite težine za svaku. Na ovaj način napadač može kreirati verziju 1 sa zadnjim vratima i verziju 2 sa samo legitimnim kodom i izvršavati samo verziju 1 u 1% zahteva kako bi ostao neprimećen.

Verzija zadnjih vrata + API Gateway

  1. Kopirajte originalni kod Lambde

  2. Kreirajte novu verziju sa zadnjim vratima originalnog koda (ili samo sa zlonamernim kodom). Objavite i implementirajte tu verziju na $LATEST

  3. Pozovite API gateway povezan sa lambdom da izvrši kod

  4. Kreirajte novu verziju sa originalnim kodom, Objavite i implementirajte tu verziju na $LATEST.

  5. Ovo će sakriti zadnji kod u prethodnoj verziji

  6. Idite na API Gateway i kreirajte novu POST metodu (ili izaberite bilo koji drugi metod) koji će izvršiti verziju lambde sa zadnjim vratima: arn:aws:lambda:us-east-1:<acc_id>:function:<func_name>:1

  7. Zapamtite krajnji :1 u arn ukazujući na verziju funkcije (verzija 1 će biti zadnje vratilo u ovom scenariju).

  8. Izaberite kreirani POST metod i u Akcijama izaberite Implementiraj API

  9. Sada, kada pozovete funkciju putem POST-a vaše Zadnje vrata će biti pozvana

Cron/Događajni aktuator

Činjenica da možete pokrenuti lambda funkcije kada se nešto desi ili kada prođe neko vreme čini lambdu lepim i čestim načinom za dobijanje persistencije i izbegavanje otkrivanja. Evo nekih ideja kako da vaše prisustvo u AWS-u bude prikrivenije kreiranjem lambdi.

  • Svaki put kada se kreira novi korisnik, lambda generiše novi korisnički ključ i šalje ga napadaču.

  • Svaki put kada se kreira nova uloga, lambda daje dozvole za pretpostavljanje uloge kompromitovanim korisnicima.

  • Svaki put kada se generišu novi cloudtrail logovi, obrišite/izmenite ih

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated