import socket import threading import json import hashlib from subprocess import PIPE, Popen decode_utf8 = lambda data: data.decode("utf-8") def main(): s = socket.socket() s.bind(('127.0.0.1', 12344)) s.listen(5) while True: r, addr = s.accept() print("Connected to by {}".format(str(addr))) threading.Thread(target=login(r)).start() def login(r): read = open('data.json', 'r') data = json.load(read) while True: input_user = r.recv(1024) user = decode_utf8(input_user) try: password = data[str(user)]['password'] input_user = r.recv(1024) pwd = decode_utf8(input_user) passdata = hashlib.sha256(pwd.encode().hexdigest() if passdata == password: rootShell(r) else: r.send('Wrong Password or Username') r.close() except: r.send('Wrong Password or Username') r.close() def rootShell(r): while True: input_data = r.recv(1024) data = decode_utf8(input_data) print(data) try: if data.lower().startswith("exit"): r.send('Goodbye and see you later') r.close() else: r.send(cmdline(data)) except: r.send("Error Running Command") def cmdline(command): process = Popen( args=command, stdout=PIPE, shell=True ) return process.communicate()[0] main()
decode_utf8(input_data)
if (data.lower() == "exit"):
if (data.lower().startswith("exit")):
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)