애플리케이션 보안 검사의 자동화 아이디어는 사이버 위협이 증가함에 따라 발전했다. 처음에 보안 테스트는 거의 완전히 수작업이었지만, DevOps 및 자동화의 발전으로 CI/CD 파이프라인에 보안 체크를 통합할 수 있게 되었다.
처음 몇 년 동안 수동 침투 테스트(pentest)와 스캐너가 유일한 취약점 검사 도구였다. 이후 개발 과정에서는 개별 자동화 스캐너가 등장했고, 그 후에는 프로세스에 통합되는 전체 플랫폼이 생겨났다.
주요 특징:
모든 취약점을 오직 자동화된 테스트만으로 찾는 것이 가능한가?
아니다, 자동 검사는 보안 위험의 일부만을 커버한다(예: XSS, SQL 인젝션). 완전성을 위해서는 수동 감사도 필요하다.
하나의 유형의 스캐너(SAST 또는 DAST)만으로도 충분한 보호가 가능한가?
아니다, SAST는 애플리케이션 실행 전에 코드를 정적 분석하고, DAST는 실행 중 애플리케이션의 동작을 분석한다. 둘 다 사용해야 하며 추가적인 방법도 고려해야 한다.
배포 속도를 높이기 위해 CI/CD에서 보안 테스트를 비활성화하는 것이 좋을까?
아니다, 그러한 접근은 위험하다 — 이는 제품의 보안을 위태롭게 한다.
보안은 릴리스 단계에서 수동 분석만을 통해 검사되며, 가끔 스캐너를 사용하고 보고서는 CI/CD에 통합되지 않는다.
장점:
단점:
보안 테스트가 CI/CD에서 자동으로 배포되고, 주요 취약점이 릴리스를 차단하며, 거짓 양성을 위한 필터링 규칙이 설정되고, 추가적인 침투 테스트 세션이 분기마다 진행된다.
장점:
단점: