보안 정책

파일을 안전하게 보호하는 방법

핵심 보안 원칙

모든 파일 처리는 사용자의 브라우저에서만 이루어지며, 어떠한 데이터도 서버로 전송되지 않습니다.

1. 클라이언트 사이드 처리 보안

PDFJPG의 가장 큰 보안 특징은 모든 파일 처리가 사용자의 로컬 환경에서만 이루어진다는 것입니다. 이는 데이터 유출 가능성을 근본적으로 차단합니다.

보안 처리 흐름

1. 로컬 파일 선택
사용자가 자신의 기기에서 파일을 선택
2. 브라우저 메모리 로드
선택된 파일이 브라우저 RAM에만 로드
3. 로컬 처리
JavaScript로 파일 변환 실행
4. 결과 다운로드
사용자가 변환된 파일을 직접 저장
5. 자동 정리
모든 데이터가 메모리에서 자동으로 해제

1.1 기술적 구현

JavaScript 라이브러리

PDF.js, jsPDF, PDF-lib 등 신뢰할 수 있는 오픈소스 라이브러리만을 사용하여 완전한 로컬 처리 구현

HTML5 Canvas API (이미지 처리)

외부 의존성을 최소화하기 위해 브라우저의 표준 Canvas API를 사용하여 이미지 처리

File API (파일 접근)

HTML5 File API를 통해 안전하고 표준적으로 로컬 파일에 접근

2. 기존 방식과의 보안 비교

기존의 서버 기반 파일 처리 방식과 PDFJPG의 클라이언트 사이드 방식을 비교하여 보안상 장점을 설명합니다.

보안 요소 기존 서버 방식 PDFJPG 클라이언트 사이드 방식
파일 서버 업로드
필수

필요 없음
서버 저장 위험
존재함

없음
네트워크 전송 보안
암호화 필요

전송 없음
서버 해킹 위험
존재함

없음
데이터 유출 가능성
가능

소스 차단됨
제3자 접근
가능

불가능
처리 속도
네트워크 의존적

로컬 처리
인터넷 연결 의존성
필수

처리 중 필요 없음

3. 다층 보안 체계

클라이언트 사이드 처리의 근본적 보안에 더해, 추가적인 기술적 보안 조치를 적용하고 있습니다.

3.1 웹 애플리케이션 보안

HTTPS 연결

모든 웹사이트 통신은 TLS/SSL 암호화를 통해 보호되며, 중간자 공격을 방지합니다.

CSP (콘텐츠 보안 정책)

엄격한 콘텐츠 보안 정책으로 XSS 공격과 코드 인젝션을 방지합니다.

SameSite 쿠키

CSRF 공격 방지를 위해 SameSite 쿠키 정책을 적용합니다.

입력 검증

악성 파일이나 잘못된 형식의 파일 업로드를 사전에 차단합니다.

3.2 브라우저 기반 보안

  • Same-Origin Policy: 브라우저의 기본 보안 정책으로 다른 도메인의 접근 차단
  • File API 제한: 사용자가 명시적으로 선택한 파일에만 접근 가능
  • Sandbox 환경: 브라우저의 샌드박스 환경에서 격리된 실행
  • Memory Isolation: 브라우저 프로세스 격리를 통한 메모리 보호

3.3 코드 보안

  • 오픈소스 라이브러리: 검증된 오픈소스만 사용하여 투명성 확보
  • 정기 업데이트: 보안 패치가 포함된 최신 버전 라이브러리 사용
  • 코드 최소화: 불필요한 기능 제거로 공격 표면 축소
  • Error Handling: 적절한 오류 처리로 정보 노출 방지

4. 위협 분석 및 대응

가능한 보안 위협을 분석하고 각각에 대한 대응 방안을 제시합니다.

잠재적 위협

  • 악성 파일 업로드: 바이러스나 맬웨어가 포함된 파일 처리
  • 메모리 기반 공격: 브라우저 메모리를 대상으로 한 공격
  • XSS 공격: 악의적 스크립트 삽입 시도
  • DoS 공격: 대량의 파일 처리로 서비스 방해

대응 방안

  • 파일 형식 검증: 허용된 파일 형식만 처리하도록 제한
  • 파일 크기 제한: 메모리 오버플로우 방지를 위한 크기 제한
  • CSP 정책: 엄격한 콘텐츠 보안 정책으로 스크립트 실행 제한
  • Rate Limiting: 과도한 요청 방지를 위한 사용량 제한

4.1 보안 모니터링

  • 오류 로깅: 보안 관련 오류 발생 시 모니터링 및 대응
  • 성능 모니터링: 비정상적인 사용 패턴 감지
  • 업데이트 알림: 보안 패치 및 업데이트 즉시 적용

5. 개인정보 보호

사용자의 개인정보와 파일 내용을 보호하기 위한 구체적인 조치들입니다.

5.1 데이터 수집 최소화

수집하지 않는 정보

파일 내용, 개인정보, 계정 정보, 결제 정보 등 민감한 데이터는 일체 수집하지 않습니다.

최소한의 분석 데이터

서비스 개선을 위한 익명화된 사용 패턴 분석 데이터만 최소한으로 수집합니다.

5.2 메모리 보안

  • 즉시 해제: 파일 처리 완료 즉시 브라우저 메모리에서 데이터 해제
  • 가비지 컬렉션: JavaScript 가비지 컬렉터를 통한 자동 메모리 정리
  • 세션 관리: 브라우저 탭 종료 시 모든 세션 데이터 완전 삭제
  • 캐시 방지: 민감한 데이터의 브라우저 캐시 저장 방지

5.3 법적 준수

  • 개인정보보호법: 한국 개인정보보호법 완전 준수
  • GDPR: 유럽 일반 데이터 보호 규정 준수
  • CCPA: 캘리포니아 소비자 개인정보 보호법 준수
  • 투명성: 데이터 처리에 대한 완전한 투명성 제공

6. 사용자 보안 가이드라인

사용자가 더욱 안전하게 서비스를 이용할 수 있도록 권장하는 보안 수칙입니다.

6.1 권장사항

최신 브라우저 사용

Chrome 80+, Firefox 75+, Safari 13+ 등 최신 보안 패치가 적용된 브라우저를 사용하세요.

안전한 네트워크

공용 Wi-Fi보다는 개인 네트워크에서 중요한 문서를 처리하는 것을 권장합니다.

원본 파일 백업

변환 전 원본 파일을 별도로 백업하여 혹시 모를 손실에 대비하세요.

결과물 검토

변환된 파일의 내용과 품질을 반드시 확인한 후 중요한 용도로 사용하세요.

6.2 주의사항

다음 사항에 주의하세요

  • 기밀 문서: 극도로 민감한 기밀 문서는 오프라인 도구 사용 검토
  • 공용 컴퓨터: 공용 컴퓨터에서는 브라우저 기록 및 다운로드 폴더 정리
  • 파일 공유: 변환된 파일 공유 시 의도치 않은 정보 포함 여부 확인
  • 브라우저 확장: 알 수 없는 브라우저 확장 프로그램 비활성화

7. 보안 사고 대응

보안 문제나 의심스러운 활동을 발견했을 때의 신고 및 대응 절차입니다.

7.1 신고 대상

  • 보안 취약점: 서비스에서 발견된 보안 취약점
  • 악성 행위: 서비스를 악용한 의심스러운 활동
  • 데이터 이상: 예상과 다른 데이터 처리 결과
  • 시스템 오류: 보안과 관련된 시스템 오류

7.2 대응 절차

  1. 즉시 신고: 연락처 페이지를 통해 상세한 내용과 함께 신고
  2. 초기 대응: 24시간 이내 신고 접수 확인 및 초기 분석
  3. 상세 조사: 전문팀을 통한 심층 분석 및 조사
  4. 대응 방안
  5. 결과 공유: 조사 결과 및 대응 조치 내용 공유

7.3 예방 조치

  • 정기 보안 점검: 월 1회 정기 보안 상태 점검
  • 라이브러리 업데이트: 보안 패치 포함 업데이트 즉시 적용
  • 모니터링 강화: 의심스러운 패턴 자동 감지 시스템 운영
  • 보안 교육: 개발팀 대상 정기 보안 교육 실시

보안 관련 문의 및 신고

보안과 관련된 문의사항이나 의심스러운 활동을 발견하셨다면 즉시 연락해주세요.

보안 신고

취약점이나 보안 문제 발견 시

버그 신고

보안과 관련된 오류나 버그

보안 문의

보안 정책에 대한 궁금한 점

보안 문의하기