macOS Perl Applications Injection
Last updated
Last updated
Naučite i vežbajte hakovanje AWS-a:HackTricks Obuka AWS Crveni Tim Stručnjak (ARTE) Naučite i vežbajte hakovanje GCP-a: HackTricks Obuka GCP Crveni Tim Stručnjak (GRTE)
PERL5OPT
& PERL5LIB
env promenljiveKorišćenjem env promenljive PERL5OPT moguće je naterati perl da izvrši proizvoljne komande. Na primer, kreirajte ovaj skript:
Sada izvezite env promenljivu i izvršite perl skriptu:
Druga opcija je da se kreira Perl modul (npr. /tmp/pmod.pm
):
Zatim koristite env promenljive:
Moguće je izlistati redosled foldera zavisnosti Perl-a koji se izvršava:
Koji će vratiti nešto slično:
Neke od vraćenih mapa čak ne postoje, međutim, /Library/Perl/5.30
postoji, nije zaštićen od strane SIP-a i nalazi se ispred mapa zaštićenih SIP-om. Stoga, neko bi mogao zloupotrebiti tu mapu da bi dodao zavisnosti skripta tamo kako bi visoko privilegovani Perl skript učitao te zavisnosti.
Međutim, imajte na umu da morate biti root da biste pisali u tu mapu i danas ćete dobiti ovaj TCC prozor:
Na primer, ako skript uvozi use File::Basename;
bilo bi moguće kreirati /Library/Perl/5.30/File/Basename.pm
da bi se izvršio proizvoljni kod.