Linh Fish Dev Podcast #8: FastAPI: cho phép client tải file an toàn bằng FileResponse, chặn path traversal trong 5 phút
Tập 8: cho phép client tải file về an toàn trong FastAPI bằng FileResponse của Starlette, đồng thời chặn kiểu tấn công path traversal. Bạn sẽ nghe vì sao ghép tên file bằng f-string lại nguy hiểm: attacker chỉ cần gửi ../.. là đọc được file ngoài thư mục cho phép, thậm chí leo lên /etc/passwd. Giải pháp là ba lớp kiểm tra đường dẫn — chặn ký tự đường dẫn, resolve() + is_relative_to() giữ file trong thư mục gốc, và kiểm tra file tồn tại trước khi trả. Audio tiếng Việt trong tập này là bản chính thức, phát trên mọi nền tảng podcast; bản tiếng Anh ở player phụ bên dưới, video đầy đủ trên kênh YouTube Linh Fish Dev.
Đọc bài viết đầy đủ kèm code mẫu đã kiểm chứng chạy được tại: FastAPI: cho phép client tải file an toàn bằng FileResponse, chặn path traversal trong 5 phút
English version
Nghe Linh Fish Dev Podcast trên:
Spotify Apple Podcasts Amazon Music YouTube Castbox Pocket Casts TrueFans Pod.link