에이전틱 SAST 취약점 해결
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
GitLab Duo는 SAST 취약점을 자동으로 분석하고 컨텍스트 인식 코드 수정 사항이 포함된 MR을 생성합니다. 단일 샷 취약점 해결과 달리 에이전틱 취약점 해결은 반복적 추론을 사용하여 다음을 수행합니다: 에이전틱 SAST 취약점 해결은 자동으로 실행되거나 수동으로 실행할 수 있습니다.
히스토리
GitLab Duo는 SAST 취약점을 자동으로 분석하고 컨텍스트 인식 코드 수정 사항이 포함된 MR을 생성합니다. 이 에이전틱 접근 방식은 멀티샷 추론을 사용하여 최소한의 인간 개입으로 취약점을 해결하며, 수정 시간을 줄이고 보안 결과를 개선합니다.
단일 샷 취약점 해결과 달리 에이전틱 취약점 해결은 반복적 추론을 사용하여 다음을 수행합니다:
- 코드베이스 전반에 걸쳐 취약점 컨텍스트를 분석합니다.
- 근본 원인을 해결하는 고품질 수정 사항을 생성합니다.
- 제안된 솔루션에 대한 신뢰도 점수를 제공합니다.
에이전틱 SAST 취약점 해결은 자동으로 실행되거나 수동으로 실행할 수 있습니다.
클릭스루 데모는 에이전틱 SAST 취약점 해결을 참조하십시오.
자동 해결#
주 브랜치에서 SAST 보안 스캔이 완료되면 GitLab Duo가 자동으로 다음 작업을 수행합니다:
- 각 높음 및 심각 심각도 SAST 취약점을 분석합니다.
- 거짓 양성 감지가 실행되었는지 확인합니다.
- 취약점이 가능성 있는 또는 가능한 거짓 양성이 아닌 경우 GitLab Duo가 제안된 수정 사항이 포함된 MR을 생성합니다.
- 파이프라인을 실행하여 수정 사항이 취약점을 해결하는지 검증합니다.
이 프로세스는 수동 트리거 없이 백그라운드에서 실행됩니다. 처리가 완료되면 결과가 취약점 보고서에 나타납니다.
수동 해결#
심각도에 관계없이 언제든지 모든 SAST 취약점에 대해 에이전틱 취약점 해결을 수동으로 트리거할 수 있습니다. 지침은 수동 트리거를 참조하십시오.
자동 해결 조건#
다음 조건이 모두 충족되면 자동 에이전틱 취약점 해결이 실행됩니다:
- SAST 보안 스캔이 주 브랜치에서 성공적으로 완료됩니다.
- 스캔이 높음 또는 심각 심각도 취약점을 감지합니다.
- 거짓 양성 감지가 실행되었고 취약점이 거짓 양성이 아님을 확인했습니다.
- 에이전틱 SAST 취약점 해결 플로우가 프로젝트에 활성화되어 있습니다.
- GitLab Duo 기능이 프로젝트에 활성화되어 있습니다.
- 취약점이 지원되는 SAST 분석기에서 발견되었습니다.
분석은 백그라운드에서 수행되며 처리가 완료된 후 결과가 취약점 보고서에 나타납니다.
수동 트리거#
기존 SAST 취약점에 대해 에이전틱 취약점 해결을 수동으로 실행하려면:
- 상단 표시줄에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 보안 > 취약점 보고서를 선택합니다.
- 해결하려는 취약점을 선택합니다.
- 오른쪽 상단에서 AI 취약점 관리 > 에이전틱 AI로 해결을 선택합니다.
GitLab Duo가 취약점을 분석하고 수정 사항을 생성할 수 있으면 MR을 만듭니다. 수동 해결은 심각도에 관계없이 모든 SAST 취약점에서 작동합니다.
구성#
에이전틱 취약점 해결을 사용하려면 다음 요구 사항이 구성되어 있어야 합니다:
- GitLab Duo Agent Platform 사전 요구 사항 충족.
- 사용자 기본 설정에서 기본 GitLab Duo 네임스페이스 설정.
- GitLab 18.9 이상.
- 그룹에 에이전틱 취약점 해결이 허용되고 프로젝트에서 활성화되어 있습니다.
- 최상위 그룹 및 프로젝트에 대해 SAST 거짓 양성 감지 플로우가 활성화되어 있습니다.
그룹에 대한 기본 플로우 허용#
최상위 그룹의 모든 프로젝트가 기본 플로우를 사용하도록 허용할 수 있습니다. 개별 프로젝트는 여전히 프로젝트 설정에서 기능을 활성화해야 합니다.
최상위 그룹의 모든 프로젝트에 에이전틱 취약점 해결을 허용하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 최상위 그룹을 찾습니다.
- 설정 > GitLab Duo를 선택합니다.
- 플로우 실행 허용 토글을 켭니다(기본적으로 활성화됨).
- 기본 플로우 허용에서 SAST 취약점 해결 확인란을 선택합니다.
- 변경 사항 저장을 선택합니다.
프로젝트에 대해 활성화#
특정 프로젝트에 대해 기능을 활성화하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 설정 > 일반을 선택합니다.
- GitLab Duo를 확장합니다.
- SAST 취약점 해결 워크플로우 활성화 토글을 켭니다.
- 변경 사항 저장을 선택합니다.
최상위 그룹에 대해 에이전틱 취약점 해결을 허용하고 프로젝트에서 활성화하면 기존 SAST 스캐너와 자동으로 작동합니다.
생성된 MR 검토#
GitLab Duo가 취약점에 대한 MR을 생성하면 다음이 수행됩니다:
- 제안된 수정 사항으로 MR이 생성됩니다.
- 설명에 다음이 포함됩니다:
- 취약점 세부 정보 및 심각도
- 수정 접근 방식 설명
- 관련 보안 리소스 링크
- 제안된 솔루션에 대한 신뢰도 점수
- 파이프라인이 자동으로 실행되어 수정 사항을 검증합니다.
- 검토자가 변경 사항과 파이프라인 결과를 검토합니다.
- MR을 병합할 수 있는 사용자가 워크플로우에 따라 병합합니다.
문제 해결#
에이전틱 취약점 해결이 때때로 제안된 수정 사항을 생성하지 못할 수 있습니다. 일반적인 원인은 다음과 같습니다:
- 컨텍스트 부족: 취약점이 추가적인 컨텍스트나 수동 개입이 필요한 복잡한 코드 패턴에서 발생합니다.
- 거짓 양성 감지됨: AI 모델이 취약점이 유효한지 평가합니다. 모델이 취약점이 실제 취약점이 아니거나 수정할 가치가 없다고 판단할 수 있습니다.
- 취약점이 거짓 양성이거나 수정할 가치가 없다고 동의하는 경우, 취약점을 기각하고 일치하는 이유를 선택해야 합니다.
- 일시적이거나 예상치 못한 오류: 오류 메시지에
예상치 못한 오류가 발생했습니다,업스트림 AI 공급자 요청이 시간 초과되었습니다,문제가 발생했습니다또는 유사한 원인이 명시될 수 있습니다.- 이러한 오류는 AI 공급자 또는 GitLab Duo의 일시적인 문제로 인해 발생할 수 있습니다.
- 새 요청이 성공할 수 있으므로 취약점을 다시 해결해 볼 수 있습니다.
- 이러한 오류가 계속 발생하면 GitLab에 도움을 요청하십시오.
피드백 제공#
에이전틱 취약점 해결에 대한 피드백을 환영합니다. 문제가 발생하거나 개선 제안이 있는 경우 이슈 585626에 피드백을 제공해 주십시오.
