취약점 스캐너 유지 관리
GitLab v19.5Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
요약
다음 취약점 스캐너와 해당 데이터베이스는 정기적으로 업데이트됩니다: 동일한 메이저 버전의 분석기를 사용하는 GitLab 버전에서는 최신 취약점 정의를 활용하기 위해 분석기를 업데이트할 필요가 없습니다. 기존 취약점에 대한 최신 취약점 정보를 얻으려면 기본 브랜치의 파이프라인을 다시 실행해야 할 수 있습니다.
다음 취약점 스캐너와 해당 데이터베이스는 정기적으로 업데이트됩니다:
| 보안 스캔 도구 | 취약점 데이터베이스 업데이트 |
|---|---|
| 컨테이너 스캐닝 | 업스트림 스캐너의 최신 취약점 데이터베이스 업데이트를 반영한 새 이미지를 빌드하는 job 이 매일 실행됩니다. GitLab은 데이터베이스가 48시간 이상 오래되면 엔지니어링 팀에 알리는 내부 경고로 이 job을 모니터링합니다. 자세한 내용은 취약점 데이터베이스 업데이트를 참고합니다. |
| 의존성 스캐닝 - Gemnasium | National Vulnerability Database(NVD)와 GitHub Advisory Database의 데이터를 사용해 매시간 업데이트되는 GitLab 어드바이저리 데이터베이스를 기반으로 동작합니다. |
| 동적 애플리케이션 보안 테스트(DAST) | DAST 분석기는 주기적으로 업데이트됩니다. |
| 시크릿 탐지 | GitLab은 탐지 규칙을 유지 관리하고 커뮤니티 기여를 수용합니다. 관련 업데이트가 있으면 스캐닝 엔진은 월 1회 이상 업데이트됩니다. |
| 정적 애플리케이션 보안 테스트(SAST) | 스캔 규칙의 출처는 각 지원 프로그래밍 언어에 어떤 분석기를 사용하는지에 따라 달라집니다. GitLab은 Semgrep 기반 분석기의 규칙 세트를 유지 관리하며 내부 연구와 사용자 피드백을 바탕으로 정기적으로 업데이트합니다. 다른 분석기의 규칙 세트는 업스트림 오픈 소스 스캐너에서 가져옵니다. 관련 업데이트가 있으면 각 분석기는 월 1회 이상 업데이트됩니다. |
동일한 메이저 버전의 분석기를 사용하는 GitLab 버전에서는 최신 취약점 정의를 활용하기 위해 분석기를 업데이트할 필요가 없습니다. 보안 도구는 Docker 이미지로 릴리스됩니다. 보안 도구를 활성화하는 벤더링된 job 정의는 시맨틱 버저닝에 따라 메이저 릴리스 태그를 사용합니다. 도구의 새 릴리스가 나올 때마다 이 태그가 덮어쓰기됩니다. 메이저 분석기 버전 안에서는 최신 버전의 스캐닝 도구를 자동으로 받게 되지만, 이 방식에는 알려진 이슈가 몇 가지 있습니다.
기존 취약점에 대한 최신 취약점 정보를 얻으려면 기본 브랜치의 파이프라인을 다시 실행해야 할 수 있습니다.