OWASP ASVS

1. 개요

OWASP ASVS (Application Security Verification Standard)는 웹 애플리케이션의 보안 설계, 구현 및 테스트에 대한 표준을 제공하는 프레임워크이자 체크리스트이다. OWASP(Open Web Application Security Project)에서 개발 및 관리하며, 개발자, 아키텍트, 테스터 및 보안 전문가가 애플리케이션 보안 통제(Security Controls)의 강도(Level)를 정의하고 평가하는 데 도움을 준다. ASVS는 단순한 취약점 테스트를 넘어, 애플리케이션의 보안 아키텍처 자체를 검증하는 데 초점을 맞춘다.

2. ASVS 3가지 주요 목적

  1. 보안 요구 사항 정의: 애플리케이션 개발 초기 단계에서 특정 보안 수준을 달성하기 위한 명확한 보안 요구 사항 설정
  2. 보안 테스트 표준: 독립적인 보안 평가자가 애플리케이션의 보안 통제에 대한 일관되고 반복 가능한 검증 기준 제공
  3. 보안 아키텍처 가이드: 강력한 보안 아키텍처를 구축하기 위한 설계 및 구현의 모범 사례 제시

3. ASVS 3가지 보안 검증 레벨

ASVS는 애플리케이션이 요구하는 보안 수준과 위험도에 따라 총 세 가지 레벨로 검증 강도를 구분한다. 검증 레벨이 높을수록 요구되는 보안 통제의 수가 많아지고 검증의 엄격성이 증가한다.

레벨 이름 목표 보안 강도 및 용도 검증 특징
Level 1 최소 보안 최소한의 보안 요구 사항이 필요한 애플리케이션.
상업적 위험도가 낮고, 익명의 기능만 포함하는 경우.
자동화된 도구 및 수동 테스트를 통한 취약점 테스트에 중점.
Level 2 표준 보안 대부분의 비즈니스 애플리케이션에 권장되는 레벨.
민감한 데이터(B2C 거래, 개인 정보)를 처리하는 애플리케이션.
심층적인 아키텍처 검토코딩 표준 검증을 포함하는 포괄적인 테스트.
Level 3 고급 보안 가장 높은 보안 수준이 요구되는 애플리케이션.
높은 가치의 거래, 규제 대상 데이터(금융, 의료) 또는 생명 유지와 관련된 시스템.
엄격한 설계 검증정식 보안 분석이 필수적이며, Level 2의 모든 요구 사항을 충족.

4. ASVS의 구조 (검증 제어 영역)

ASVS는 보안 통제를 14개의 영역으로 나누어 체계적으로 접근한다.
주요 검증 제어 영역(Control Categories):

  • V1: 아키텍처, 디자인 및 위협 모델링 (Architecture, Design, and Threat Modeling)
  • V2: 인증 (Authentication)
  • V3: 세션 관리 (Session Management)
  • V4: 접근 제어 (Access Control)
  • V5: 입력 및 출력 처리 (Input and Output Handling)
  • V6: 암호화 (Cryptography)
  • V7: 오류 및 로깅 (Error and Logging)
  • V8: 데이터 보호 (Data Protection)
  • V9: 통신 (Communications)
  • V10: 악성 통제 (Malicious Controls)
  • V11: 비즈니스 논리 (Business Logic)
  • V12: 파일 및 리소스 (Files and Resources)
  • V13: API 및 웹 서비스 (API and Web Services)
  • V14: 설정 관리 (Configuration)

5. 결론

OWASP ASVS는 웹 애플리케이션 보안을 체계적으로 접근하고 평가하기 위한 가장 포괄적인 국제 표준 중 하나입니다. 단순히 취약점을 찾는 것을 넘어, 보안 아키텍처의 견고함을 검증하는 데 초점을 맞추며, 애플리케이션의 위험도에 따라 명확한 보안 목표(Level 1, 2, 3)를 설정할 수 있게 해줍니다.

+ Recent posts