macOS Perl Applications Injection
Last updated
Last updated
Lernen Sie und üben Sie AWS-Hacking: HackTricks Training AWS Red Team Expert (ARTE) Lernen Sie und üben Sie GCP-Hacking: HackTricks Training GCP Red Team Expert (GRTE)
PERL5OPT
& PERL5LIB
UmgebungsvariableMit der Umgebungsvariable PERL5OPT ist es möglich, Perl dazu zu bringen, beliebige Befehle auszuführen. Erstellen Sie beispielsweise dieses Skript:
Jetzt exportieren Sie die Umgebungsvariable und führen Sie das Perl-Skript aus:
Eine weitere Option besteht darin, ein Perl-Modul zu erstellen (z. B. /tmp/pmod.pm
):
Und verwenden Sie dann die Umgebungsvariablen:
Es ist möglich, die Abhängigkeiten des Perl-Laufs in der Reihenfolge des Ordners aufzulisten:
Was etwas zurückgeben wird, wie:
Einige der zurückgegebenen Ordner existieren nicht einmal, jedoch existiert /Library/Perl/5.30
, es ist nicht durch SIP geschützt und es befindet sich vor den von SIP geschützten Ordnern. Daher könnte jemand diesen Ordner missbrauchen, um Skriptabhängigkeiten hinzuzufügen, damit ein Perl-Skript mit hohen Berechtigungen es lädt.
Beachten Sie jedoch, dass Sie Root-Rechte benötigen, um in diesen Ordner zu schreiben, und heutzutage erhalten Sie diese TCC-Aufforderung:
Zum Beispiel, wenn ein Skript use File::Basename;
importiert, wäre es möglich, /Library/Perl/5.30/File/Basename.pm
zu erstellen, um beliebigen Code auszuführen.
Lernen Sie & üben Sie AWS-Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen Sie & üben Sie GCP-Hacking: HackTricks Training GCP Red Team Expert (GRTE)