피드로 돌아가기
Built tmpdrop — a tiny self-hosted ephemeral file drop
Dev.toDev.to
Security

72-bit Entropy 기반 URL과 CSP 샌드박스를 적용한 Self-hosted 임시 파일 저장소 설계

Built tmpdrop — a tiny self-hosted ephemeral file drop

Kin Pan Ho2026년 5월 25일1intermediate

Context

공용 파일 호스팅 서비스의 데이터 제어권 상실 및 예측 가능한 URL로 인한 무단 스크래핑 문제 발생. 보안 통제권 확보를 위해 인프라 전 과정을 직접 관리하는 Self-hosted 구조의 필요성 증대.

Technical Solution

  • 무단 접근 차단을 위한 72-bit Entropy 기반의 Unguessable URL 생성 로직 적용
  • 데이터 잔존 위험 제거를 위한 1시간 및 24시간 단위의 자동 삭제(Auto-delete) 메커니즘 구현
  • 보안 취약점 최소화를 위한 엄격한 MIME Allowlist 기반의 파일 필터링 체계 구축
  • XSS 및 스크립트 실행 방지를 위한 CSP Sandbox 환경 설정
  • 배포 복잡도 제거를 위한 Docker Compose 기반의 단일 컨테이너 오케스트레이션 설계

- 임시 데이터 저장 시 TTL(Time-To-Live) 기반의 자동 삭제 정책 수립 - 외부 노출 URL 설계 시 무작위성(Entropy) 확보를 통한 Direct Access 차단 - 사용자 업로드 파일 처리 시 MIME Type 검증 및 CSP 적용으로 실행 권한 제한

원문 읽기