TravisCI Security
Last updated
Last updated
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Travis CI je hostovana ili na mestu kontinuirana integracija usluga koja se koristi za izgradnju i testiranje softverskih projekata hostovanih na nekoliko različitih git platformi.
Basic TravisCI InformationDa biste pokrenuli napad, prvo morate znati kako da pokrenete izgradnju. Po defaultu, TravisCI će pokrenuti izgradnju na push-evima i pull zahtevima:
Ako imate pristup web aplikaciji, možete postaviti cron-ove da pokreću izgradnju, što može biti korisno za postojanost ili za pokretanje izgradnje:
Izgleda da nije moguće postaviti cron-ove unutar .travis.yml
prema ovome.
TravisCI po defaultu onemogućava deljenje env varijabli sa PR-ovima koji dolaze od trećih strana, ali neko može to omogućiti i tada možete kreirati PR-ove za repozitorijum i eksfiltrirati tajne:
Kao što je objašnjeno na stranici osnovne informacije, postoje 2 tipa tajni. Tajne varijable okruženja (koje su navedene na web stranici) i prilagođene enkriptovane tajne, koje se čuvaju unutar .travis.yml
datoteke kao base64 (napomena da će obe, kada su sačuvane enkriptovane, završiti kao env varijable na konačnim mašinama).
Da biste enumerisali tajne konfigurirane kao varijable okruženja, idite na podešavanja projekta i proverite listu. Međutim, imajte na umu da će sve varijable okruženja projekta postavljene ovde pojaviti kada pokrenete izgradnju.
Da biste enumerisali prilagođene enkriptovane tajne, najbolje što možete učiniti je da proverite .travis.yml
datoteku.
Da biste enumerisali enkriptovane datoteke, možete proveriti za .enc
datoteke u repozitorijumu, za linije slične openssl aes-256-cbc -K $encrypted_355e94ba1091_key -iv $encrypted_355e94ba1091_iv -in super_secret.txt.enc -out super_secret.txt -d
u konfiguracionoj datoteci, ili za enkriptovane iv i ključeve u varijablama okruženja kao što su:
Primer izgradnje sa reverznim shell-om koji radi na Windows/Mac/Linux
Primer izgradnje koja otkriva env base64 kodirane u logovima
Ako napadač završi u okruženju koje koristi TravisCI enterprise (više informacija o tome šta je to u osnovnim informacijama), moći će da pokrene izgradnje u Worker-u. To znači da će napadač moći da se lateralno kreće do tog servera sa kojeg bi mogao da:
pobegne na host?
kompromituje kubernetes?
kompromituje druge mašine koje rade u istoj mreži?
kompromituje nove cloud kredencijale?
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)