본문 바로가기
정보보호 (Security)

AST · DAST · SCA: 안전한 소프트웨어 개발을 위한 보안 점검 핵심 도구

by 날으는물고기 2025. 8. 18.

AST · DAST · SCA: 안전한 소프트웨어 개발을 위한 보안 점검 핵심 도구

728x90

SAST, DAST, SCA는 모두 소프트웨어 개발 및 보안 점검 프로세스에서 매우 중요한 자동화 도구이자 분석 기법입니다.

300x250

SAST (Static Application Security Testing)

  • 정적 분석 도구로, 소스코드, 바이트코드, 또는 바이너리 코드를 실행하지 않고 분석합니다.
  • 개발 초기에 코드 레벨의 취약점을 찾아내는 데 유리합니다.
  • 컴파일 이전 단계 또는 코드 저장소에 커밋된 시점에서 실행됩니다.

주요 특징

  • 개발자 코드 수준의 버그, 논리 오류, 보안 취약점(CWE 등)을 탐지
  • 코드 품질 개선에도 도움
  • CI/CD 파이프라인에 통합 용이

대표 제품

제품명 특징
SonarQube 오픈소스 기반, 품질 + 보안 점검 모두 지원
Checkmarx SAST 기능 특화, 다양한 언어 지원
Fortify Static Code Analyzer (Micro Focus) 대규모 기업 환경에 적합
Veracode Static Analysis SaaS 기반, 빠른 점검 제공
Semgrep 빠르고 유연한 규칙 기반 분석 가능

DAST (Dynamic Application Security Testing)

  • 동적 분석 도구로, 실행 중인 애플리케이션을 대상으로 테스트합니다.
  • 외부 공격자 시나리오처럼 웹 애플리케이션 또는 API에 직접 접근하여 보안 취약점을 탐지합니다.

주요 특징

  • SQL Injection, XSS, 인증/인가 오류, 보안 헤더 누락 등 런타임 보안 점검
  • 코드 접근 없이 테스트 가능 (블랙박스 방식)
  • 주로 QA 또는 Staging 환경에서 사용

대표 제품

제품명 특징
OWASP ZAP 무료/오픈소스, 자동화 테스트에 강함
Burp Suite 수동/자동 분석 모두 가능, 전문가용
AppScan (HCL) IBM에서 개발, 기업용에 적합
Netsparker / Invicti 정확한 취약점 식별 (false-positive 낮음)
Acunetix 빠른 스캔 속도와 GUI 친화성

SCA (Software Composition Analysis)

  • 오픈소스 소프트웨어(OSS) 구성요소 분석 도구입니다.
  • 라이브러리, 패키지, 프레임워크 등 서드파티 컴포넌트의 보안 취약점(CVE)과 라이선스 위반 여부를 탐지합니다.

주요 특징

  • 패키지 매니저(GitHub, pip, npm, Maven 등)를 통해 수집한 의존성 정보 기반
  • SBOM(Software Bill of Materials) 생성을 통해 취약점 관리 가능
  • 보안 + 라이선스 관리까지

대표 제품

제품명 특징
Syft/Grype 오픈소스 SBOM & 취약점 분석 도구 (Anchore)
Snyk 클라우드 기반, Git 연동 쉬움
WhiteSource (Renamed to Mend.io) SCA 특화, 정책 기반 차단 가능
Black Duck (Synopsys) 정교한 OSS 정책 관리
GitHub Dependabot GitHub 기반 자동 취약점 감지 및 PR 생성

SAST vs DAST vs SCA 비교 요약

항목 SAST DAST SCA
분석 시점 개발 중 실행 중 빌드/배포 전
접근 방식 코드 기반 실행 기반 OSS 메타데이터 기반
탐지 대상 논리 오류, 코드 결함 웹/앱 공격 취약점 오픈소스 취약점, 라이선스 문제
장점 조기 탐지, 코드 수준 대응 실 환경 시뮬레이션 OSS 취약점 관리 및 라이선스 준수
대표 도구 SonarQube, Checkmarx ZAP, Burp Suite Snyk, Mend.io

보안 가이드 및 점검 포인트

  1. CI/CD 통합 여부 확인
    • 코드 저장소에 Push될 때 SAST, SCA가 자동으로 동작하도록 설정
    • QA 단계에서 DAST 실행 자동화
  2. 정책 기반 차단 설정
    • 취약점 수준(Critical, High)에 따라 빌드 차단 정책 적용
  3. SBOM 작성 및 유지
    • SCA 도구를 활용해 SBOM 자동 생성
    • 신규 패키지 등록 시 취약점 자동 분석
  4. 조직 내 개발자 대상 교육
    • 각 도구 결과를 이해하고 대응할 수 있도록 개발팀에 보안 코드 교육 제공
  5. 모니터링 및 리포팅 체계화
    • 정기 점검 리포트 및 Slack/메일 알림 설정
728x90
그리드형(광고전용)

댓글