如何搭建表单将URL提交至云端Kali后端运行Python脚本?
问题解答
1. 如何设置表单提交到云端Kali后端?
直接在前端HTML表单里指定action为Kali后端的公网IP/域名+接口路径,method设为POST即可,示例代码如下:
<form action="http://你的Kali公网IP:5000/scan" method="POST"> <input type="text" name="target_url" placeholder="输入要测试的URL"> <button type="submit">开始测试</button> </form>
注意:如果前端页面和Kali后端不在同一域名下,需要处理跨域问题——在Flask后端安装flask-cors包,初始化时启用跨域支持即可。
2. Kali后端如何接收网站发来的信息?
用Flask写一个POST接口就能接收请求并获取参数,具体步骤:
- 先在Kali上安装依赖:
pip install flask flask-cors - 编写后端代码:
from flask import Flask, request from flask_cors import CORS import os app = Flask(__name__) CORS(app) # 解决跨域问题 @app.route('/scan', methods=['POST']) def handle_scan(): target_url = request.form.get('target_url') if not target_url: return "请提供有效的URL", 400 # 调用漏洞测试脚本,这里建议用subprocess替代os.system(更安全可控) os.system(f"python3 你的测试脚本路径.py {target_url}") return "测试任务已启动", 200 if __name__ == '__main__': app.run(host='0.0.0.0', port=5000) # 绑定0.0.0.0允许外部访问
- 配置网络权限:在Kali上放行5000端口(比如执行
ufw allow 5000),同时云端安全组也要开放该端口,否则前端请求会被拦截。
3. Flask仅适用于前后端本地部署?完全错误
Flask完全支持云端部署,只要启动时绑定0.0.0.0(而非默认的127.0.0.1),就能让外部网络访问后端接口。如果是生产场景,还可以搭配Gunicorn做WSGI服务器、Nginx做反向代理,提升稳定性和性能,完全适配云端Kali后端的使用需求。
内容的提问来源于stack exchange,提问作者Weijun Tan
相关产品推荐
相关产品推荐

