반응형

DPAPI란?

**DPAPI (Data Protection API)**는 Windows에서 제공하는 암호화 API로, 개발자가 직접 암호화 키를 관리하지 않아도 사용자/시스템 권한을 기반으로 데이터를 암호화할 수 있게 해줍니다.

실제 사용 사례

DPAPI는 Windows 생태계에서 매우 광범위하게 사용됩니다:

1. 브라우저

  • Internet Explorer, Chrome: 저장된 비밀번호, 자동완성 데이터
  • Chrome 쿠키 (최근에는 추가 보호 계층 추가)

2. 이메일 클라이언트

  • Outlook, Windows Mail: 이메일 계정 비밀번호
  • FTP 계정 정보

3. 시스템 기능

  • WiFi 비밀번호 (시스템 레벨)
  • Windows Vault: 저장된 자격 증명
  • RDP(원격 데스크톱) 연결 정보
  • 작업 스케줄러 비밀번호

4. 애플리케이션

  • Skype, MSN Messenger: 로그인 정보
  • VPN 클라이언트들: 연결 자격 증명
  • Zscaler Client Connector: 설정 파일 (문서에 사례 연구 있음)
  • .NET Passport, 각종 인증 키

5. 네트워크

  • 공유 폴더 비밀번호
  • 네트워크 리소스 접근 정보

작동 방식

사용자 비밀번호 → Pre-key 생성 (SHA1 기반)
                      ↓
                  Master Key 생성 (GUID로 식별)
                      ↓
                  실제 데이터 암호화

암호화된 데이터는 항상 01 00 00 00으로 시작하며, 헤더에 어떤 Master Key를 사용했는지 GUID가 포함되어 있습니다.

왜 많이 쓰이는가?

  1. 개발 편의성: 개발자가 키 관리를 직접 안 해도 됨
  2. Windows 통합: OS 레벨에서 제공하는 표준 API
  3. 사용자 투명성: 로그인한 사용자가 자동으로 복호화 가능

결론적으로 DPAPI는 Windows에서 거의 모든 비밀번호/자격 증명 저장에 사용되는 핵심 보안 메커니즘입니다. 그래서 공격자 입장에서는 DPAPI를 공략하면 시스템의 거의 모든 민감한 정보에 접근할 수 있습니다.

반응형

'보안 > 윈도우 취약점' 카테고리의 다른 글

[윈도우 취약점 벡터] leaked handle for LPE  (0) 2025.10.04

+ Recent posts