Logo

2장 위협 모델 및 신뢰 경계

이 장에서는 공유 위협 모델과 신뢰 경계 어휘(우리가 보호하는 자산, 공격자가 할 수 있는 작업, 어떤 가정을 유지해야 하는지, 시스템이 인증 또는 매개변수 불일치 시 실패 처리를 수행해야 하는 방법을 설명합니다.

문서 메타데이터

백서 버전
v1.0
마지막 업데이트
2026-01-14

2.1 자산 목록

  • 콘텐츠 기밀성: 일반 텍스트 파일 바이트 및 암호 해독 키(CEK)를 보호해야 합니다.
  • 콘텐츠 무결성: 암호문과 메타데이터는 변조가 분명해야 합니다(AEAD 인증).
  • 액세스 제어: 단기 액세스 토큰, 발신자 로그인 토큰 및 해지 상태.
  • Availability: 일반적인 네트워크 조건에서 전송을 업로드, 다운로드 및 재개하는 기능.

2.2 공격자 모델

  • 네트워크 공격자: 트래픽을 관찰, 지연, 삭제 및 재생할 수 있습니다. 최신 TLS/AEAD 암호화를 해독할 수 없습니다.
  • 웹 공격자: 악성 링크를 만들고, XSS/CSRF를 시도하고, UI 삽입/프롬프트 삽입을 시도할 수 있습니다.
  • 남용 행위자: 업로드/다운로드를 자동화하여 할당량을 소진하거나 콘텐츠를 스크랩하거나 트래픽을 증폭시킬 수 있습니다.
  • 서버측 상대는 CEK를 가지고 있지 않은 것으로 가정됩니다. CEK가 유출되면(예: 링크 공유) 의도적으로 기밀성이 상실됩니다.

2.3 보안 가정

  • 클라이언트는 신뢰할 수 있는 코드를 실행합니다(악성 확장/맬웨어 없음). 그렇지 않으면 영지식이 엔드포인트를 보호할 수 없습니다.
  • URL 조각(#...)은 표준 브라우저 동작에 따라 HTTP 요청을 통해 서버로 전송되지 않습니다.
  • 암호화 기본 요소(AES-GCM, SHA-256, TLS)가 올바르게 사용되며 손상되지 않습니다.

2.4 신뢰 경계

  • 클라이언트 경계: 암호화/복호화 및 CEK 관리는 클라이언트에서만 발생합니다.
  • 엣지/API 경계: 서버는 토큰의 유효성을 검사하고 암호문/매니페스트를 제공합니다. CEK를 배우면 안 됩니다.
  • 객체 스토리지 경계: 암호문 청크와 매니페스트를 저장합니다. 기밀 유지를 위해 신뢰할 수 없는 것으로 처리됩니다.

2.5 페일클로즈 원칙

  • 토큰 실패, 매개변수 불일치 또는 AEAD 인증 실패 시 시스템은 실패 시 닫혀야 합니다(MUST).
  • 무결성 검사가 실패할 경우 부분 일반 텍스트를 출력해서는 안 됩니다.
  • 오류 메시지 및 로그는 민감한 데이터를 최소화해야 하며 URL 조각, CEK 또는 파생 가능한 자료를 포함해서는 안 됩니다.