macOS Perl Applications Injection
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
PERL5OPT
& PERL5LIB
Χρησιμοποιώντας τη μεταβλητή περιβάλλοντος PERL5OPT είναι δυνατόν να εκτελούνται αυθαίρετες εντολές από το perl. Για παράδειγμα, δημιουργήστε αυτό το σενάριο:
Τώρα εξάγετε τη μεταβλητή env και εκτελέστε το perl σενάριο:
Μια άλλη επιλογή είναι να δημιουργήσετε ένα module Perl (π.χ. /tmp/pmod.pm
):
Και στη συνέχεια χρησιμοποιήστε τις μεταβλητές περιβάλλοντος:
Είναι δυνατή η καταγραφή της σειράς φακέλων εξαρτήσεων που εκτελεί το Perl:
Που θα επιστρέψει κάτι σαν:
Ορισμένοι από τους επιστρεφόμενους φακέλους δεν υπάρχουν καν, ωστόσο, /Library/Perl/5.30
υπάρχει, δεν είναι προστατευμένος από SIP και είναι πριν από τους φακέλους που προστατεύονται από SIP. Επομένως, κάποιος θα μπορούσε να εκμεταλλευτεί αυτόν τον φάκελο για να προσθέσει εξαρτήσεις σε σενάρια εκεί, έτσι ώστε ένα σενάριο Perl υψηλής προνομιακής πρόσβασης να το φορτώσει.
Ωστόσο, σημειώστε ότι χρειάζεται να είστε root για να γράψετε σε αυτόν τον φάκελο και σήμερα θα λάβετε αυτήν την προτροπή TCC:
Για παράδειγμα, αν ένα σενάριο εισάγει use File::Basename;
, θα ήταν δυνατό να δημιουργηθεί το /Library/Perl/5.30/File/Basename.pm
για να εκτελεί αυθαίρετο κώδικα.
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)