**보안 테스트(security testing)**는 소프트웨어에서 취약점과 보안 약점을 평가합니다 — 데이터를 보호하고 공격에 저항하는지 검증합니다. 다양한 기법(SAST, DAST, 침투 테스트, 의존성 스캐닝)을 포함하며, 보안 결함이 심각한 결과를 초래할 수 있으므로 필수적입니다.
보안 테스트가 확인하는 것
보안 테스트는 취약점을 찾고 방어를 검증한다:
→ 흔한 결함: 인젝션(SQL 등), XSS, 깨진 인증/인가,
민감 데이터 노출, 잘못된 설정, 취약한 의존성 (OWASP Top 10)
→ 앱이 제대로 인증, 인가, 입력 검증, 데이터 암호화 등을 하는가?
→ 소프트웨어가 공격에 저항하고 데이터/사용자를 보호하도록 보장한다.
보안 테스트의 유형/기법
SAST (정적) → 소스 코드를 (실행 없이) 취약점 분석 — CI에서
DAST (동적) → 실행 중인 앱을 취약점 테스트 (외부에서 공격)
의존성 스캐닝 (SCA) → 라이브러리의 알려진 취약점 발견 (Snyk, Dependabot)
침투(penetration) 테스트 → 윤리적 해커가 능동적으로 침입 시도 (실제 악용 가능 결함 발견)
시크릿 스캐닝 → 커밋된 시크릿 탐지; 설정/IaC 스캐닝
