我的Flask服务器收到陌生IP异常POST、HEAD请求,请问这些请求是什么?
这些异常请求的本质
这些都是公网普遍存在的自动化批量扫描流量,并非针对你个人的定向攻击:
- 扫描脚本会遍历所有公网IP段的常见Web端口(你用的Flask默认5000端口就是高频扫描端口之一),只要你的服务绑定了公网IP、端口对外开放,就会被这类脚本探测到
- 其中HEAD请求是基础存活探测,用来确认你的IP对应端口是否有运行Web服务
- POST请求都是漏洞利用探测,比如请求
/wp-admin是扫描WordPress后台漏洞、/cgi-bin/开头的路径是扫描旧版CGI程序的远程代码执行漏洞、各类带php后缀的路径是扫描PHP应用的通用漏洞,这些路径在你的Flask服务里都不存在,所以全部返回404状态码,探测没有成功。

后续安全优化建议
- 如果你的服务只需要本地/虚拟机内网使用,启动时指定绑定IP为
127.0.0.1,不要绑定0.0.0.0,直接避免服务暴露到公网 - 若确实需要公网访问,可以做几层防护:
- 给所有API接口加Token身份校验,拦截所有未携带合法身份的请求
- 配置IP白名单,只允许你自己的客户端IP访问服务
- 不要用Flask自带的开发服务器对外提供服务,改用Gunicorn这类生产级WSGI服务器搭配Nginx反向代理部署
- 配置请求频率限制,短时间内同一个IP请求大量404路径就自动拉黑
内容的提问来源于stack exchange,提问作者sebcampos
相关产品推荐
相关产品推荐

