Flask开启Debug模式

Flask开启Debug模式

  • [1. 漏洞原理](#1. 漏洞原理)
  • [2. 漏洞危害](#2. 漏洞危害)
  • [3. 漏洞修复](#3. 漏洞修复)

1. 漏洞原理

在 Flask 中:

python 复制代码
app.run(debug=True)
# 或
FLASK_ENV=development
FLASK_DEBUG=1

会启用 Werkzeug Debugger,其核心功能是:自动重载代码,显示完整异常堆栈,并且会提供一个交互式 Python 控制台(Console)

一般来讲,在生产环境中,一旦可被访问,等同于远程代码执行(RCE)

想要弹出debug页面,需要网站本身抛出一个未被捕获的异常,高版本的 Flask 有一个 PIN 来保护 Console 页面,防止任意代码执行,但是这个 PIN 生成的算法相对固定,可以被破解

2. 漏洞危害

Console 可能导致RCE,即使无法实现RCE,也会导致信息泄漏:

  • 服务器绝对路径
  • 环境变量
  • 数据库连接字符串
  • API Key / Token
  • Flask SECRET_KEY
  • 等等

漏洞实际的危害根据可利用的程度来定

3. 漏洞修复

禁用 debug 模式:

python 复制代码
app.run(debug=False)

或者:

bash 复制代码
export FLASK_ENV=production
相关推荐
网络安全许木2 小时前
自学渗透测试第11天(Linux压缩解压与磁盘管理)
linux·网络安全·渗透测试
大鸡腿同学3 小时前
【成长类】《只有偏执狂才能生存》读书笔记:程序员的偏执型成长地图
后端
0xDevNull4 小时前
MySQL数据冷热分离详解
后端·mysql
AI袋鼠帝4 小时前
OpenClaw(龙虾)最强开源对手!Github 40K Star了,又一个爆火的Agent..
后端
新知图书5 小时前
搭建Spring Boot开发环境
java·spring boot·后端
宸津-代码粉碎机5 小时前
Spring Boot 4.0虚拟线程实战调优技巧,最大化发挥并发优势
java·人工智能·spring boot·后端·python
小码哥_常6 小时前
一个Starter搞定六种防护,Spring Boot API的超强护盾来了
后端
三七吃山漆7 小时前
BUUCTF-[BJDCTF2020]Mark loves cat
web安全·网络安全·buuctf
小村儿7 小时前
连载04-最重要的Skill---一起吃透 Claude Code,告别 AI coding 迷茫
前端·后端·ai编程
网络安全许木8 小时前
自学渗透测试第13天(DVWA配置与信息收集命令)
网络安全·渗透测试·信息收集·kali linux