macOS Ruby Applications Injection

Support HackTricks

RUBYOPT

Mit dieser Umgebungsvariable ist es möglich, neue Parameter zu ruby hinzuzufügen, wann immer es ausgeführt wird. Obwohl der Parameter -e nicht verwendet werden kann, um Ruby-Code anzugeben, der ausgeführt werden soll, ist es möglich, die Parameter -I und -r zu verwenden, um einen neuen Ordner zum Bibliotheksladepfad hinzuzufügen und dann eine Bibliothek zum Laden anzugeben.

Erstellen Sie die Bibliothek inject.rb in /tmp:

inject.rb
puts `whoami`

Erstellen Sie irgendwo ein Ruby-Skript wie:

hello.rb
puts 'Hello, World!'

Dann lassen Sie ein beliebiges Ruby-Skript es mit:

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

Fun Fact, es funktioniert sogar mit dem Parameter --disable-rubyopt:

RUBYOPT="-I/tmp -rinject" ruby hello.rb --disable-rubyopt
Unterstützen Sie HackTricks

Last updated