9장 웹 보안 및 클라이언트 격리
웹 레이어는 가장 많이 노출되는 표면입니다. 이 장에서는 FileBolt에 대한 기본 웹 보안 상태를 정의합니다. 엄격한 CSP 및 헤더, 민감한 페이지에 타사 스크립트 없음, 삽입 및 UI 남용에 대한 방어 조치.
9.1 위협
- XSS, DOM 주입, 공급망 스크립트, 클릭재킹, UI 교정 공격.
- 사용자가 링크나 비밀을 공개하도록 하는 프롬프트 삽입 또는 UI 속이기.
- 안전하지 않은 저장 또는 리퍼러 유출을 통한 토큰 도난.
9.2 페이지 격리
- 민감한 페이지(다운로드/암호 해독)는 제3자 스크립트를 피하고 종속성을 최소화해야 합니다.
- 성능/보안 기능이 필요할 때 원본 간 격리를 사용할 수 있지만 호환성을 유지해야 합니다.
- 페이지는 URL 유출을 방지하기 위해 엄격한 리퍼러 정책을 시행해야 합니다.
9.3 주입 방어 / UI 남용 방지
- 신뢰할 수 없는 모든 입력은 DOM에 삽입되기 전에 반드시 이스케이프/삭제되어야 합니다.
- 신뢰할 수 없는 HTML을 렌더링하지 마십시오. 텍스트 렌더링과 안전한 템플릿을 선호합니다.
- 사용자가 제어하는 이름/메타데이터가 있는 경우 길이 및 문자 제한을 적용합니다.
9.4 보안 헤더 및 브라우저 정책
9.4.1 권장 헤더(예시)
Content-Security-Policy제한적인script-src그리고 적절하다connect-src.리퍼러 정책: 리퍼러 없음orstrict-origin-when-cross-origin페이지 요구 사항에 따라 다릅니다.X-Content-Type-옵션: nosniff,Permissions-Policy, HSTS(5장 참조).
9.5 검증 가능한 증거
- 제3자 보고서에 대한 공개 링크는 다음에 집계됩니다. /status.
- 증거는 기본 웹 보안 상태(TLS, 헤더)에 중점을 둡니다. 프로토콜 수준의 영지식 클레임은 설계 제약 조건과 클레임 ID로 뒷받침됩니다.