Files
BiliNote/backend
huangjianwu 55946b82ec fix(deps): 升级 starlette 0.46.1→0.47.2 修复 CVE-2025-54121
starlette < 0.47.2 在解析 multipart 表单的大文件时,SpooledTemporaryFile
从内存溢写到磁盘的 rollover 是在事件循环线程内同步执行的,攻击者可借大文件
上传阻塞事件循环造成拒绝服务(GHSA-2c2j-9gv5-cj73)。0.47.2 把 rollover
写入移到线程池(UploadFile.write 命中 _will_roll 时走 run_in_threadpool)。

由于 FastAPI 0.115.12 的约束为 starlette<0.47.0,同步升级 FastAPI
0.115.12→0.116.2(约束放宽至 starlette<0.48.0/<0.49.0),与现有
pydantic 2.11.2 / anyio 4.9.0 / python-multipart 0.0.20 均兼容。

验证:pip check 无冲突;2MB multipart 上传走 rollover 路径正常;
docker 整套栈在新框架下 boot 健康(sys_health backend/db ok)。

Closes #411
Refs GHSA-2c2j-9gv5-cj73

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-23 11:45:28 +08:00
..