피드로 돌아가기
I Built a Security Scanner That Audits PDFs Before You Send Them. Here's How. [Devlog #10]
Dev.toDev.to
Security

Rust 기반 PDF 메타데이터 및 숨겨진 객체 정밀 분석 스캐너 구현

I Built a Security Scanner That Audits PDFs Before You Send Them. Here's How. [Devlog #10]

hiyoyo2026년 4월 24일2intermediate

Context

PDF 파일 내 시각적으로 보이지 않는 메타데이터와 숨겨진 텍스트 레이어로 인한 개인정보 유출 위험 존재. 일반적인 문서 검토 방식으로는 확인 불가능한 PDF 내부 객체 구조의 보안 취약점 해결 필요.

Technical Solution

  • 메모리 안전성과 고성능 처리를 위한 Rust 언어 기반의 스캐닝 파이프라인 설계
  • PDF Info dictionary 접근을 통한 Author, Creator, Producer 등 주요 메타데이터 필드 전수 조사
  • PDF 내부 모든 Object를 순회하며 Stream 데이터를 분석해 숨겨진 텍스트 레이어 탐지
  • 비표준 객체 및 임베디드 스크립트 식별을 통한 문서 무결성 검증 로직 구현
  • 외부 라이브러리 의존성을 배제한 Offline 기반 PDF 리포트 생성 구조로 데이터 유출 원천 차단
  • 탐지된 위협 수준에 따른 RiskLevel 산출 및 시각적 피드백 제공

1. 사용자에게 보이지 않는 메타데이터 및 숨겨진 레이어의 존재 가능성 검토

2. 보안 민감 데이터 처리 시 외부 라이브러리 없이 동작하는 Offline 프로세스 설계 고려

3. 단순 텍스트 매칭이 아닌 PDF 객체 구조(Object/Stream) 단위의 전수 조사 수행

원문 읽기