메트릭을 사용하여 우선 순위 지정 Dependabot alerts
AppSec(Application Security) 관리자는 종종 홍수 Dependabot alerts에 직면하므로 먼저 해결해야 할 취약성을 파악하기가 어렵습니다. Dependabot 메트릭은 경고의 우선 순위를 효율적으로 지정하는 데 도움이 되는 중요한 인사이트를 제공하여 중요한 보안 문제가 즉시 해결되도록 합니다. 사용자는 가장 영향력 있는 취약성에 리소스를 집중하여 정보에 입각한 결정을 내릴 수 있습니다. 이러한 접근 방식은 조직의 보안 태세를 강화하고 취약성 관리를 간소화합니다.
메트릭 이해 Dependabot
Dependabot 메트릭은 종속성에서 검색된 취약성에 대한 자세한 정보를 제공합니다. 주요 메트릭은 다음을 포함합니다.
* 심각도: 취약성의 잠재적 영향을 나타냅니다(예: 낮음, 보통, 높음, 심각). * 악용 가능성: 취약성이 얼마나 쉽게 악용될 수 있는지 평가합니다. * 종속성 관계: 직접 종속성과 전이적 종속성을 구분합니다. * 종속성 범위: 런타임 종속성과 개발 종속성을 구분합니다. 취약한 코드가 애플리케이션에서 실제로 사용되는지 여부를 확인합니다. * 수정된 경고 수, 수동으로 해제됨 및 자동 해제됨을 포함하여 지난 30일 동안 닫힌 경고Dependabot: 경고 해결 진행률을 추적합니다. 취약성을 조기에 감지하는 데 도움이 되는 방법을 GitHub Code Security 보여 줍니다. * 각 리포지토리별로 열려 있는 총 경고 수와 심각도 및 악용 가능성 데이터를 보여 주는 표: 리포지토리 수준에서 더 자세히 알아볼 수 있습니다.
해당 메트릭에 대한 자세한 내용은 Dependabot 경고에 대한 메트릭 정보을(를) 참조하세요.
또한, 사용할 수 있는 개별 필터의 조합인 복잡한 필터를 지정할 수 있습니다. 필터에 대한 자세한 내용은 대시보드 보기 필터를 참조Dependabot하세요.
경고 우선 순위를 지정하는 단계
이러한 첫 번째 단계는 조직을 가장 위험에 빠뜨리는 항목을 식별하는 Dependabot alerts 데 도움이 되므로 개발자에게 수정에 집중할 경고를 알릴 수 있습니다.
1. 조직의 필요에 맞게 퍼널 순서 조정
"Alert prioritization" 그래프에서 기본 퍼널 순서를 사용자 지정하여, 조직의 고유한 위험 프로필, 비즈니스 우선 순위, 규정 준수 요구 사항을 반영하도록 할 수 있습니다. Dependabot 경고 메트릭 확인을(를) 참조하세요.
2. 중요도 및 높은 심각도 경고에 집중
먼저 severity-critical 또는 severity-high 필터를 사용하여 심각도가 가장 높은 경고를 식별합니다. 이러한 취약성은 가장 큰 위험을 초래하며 종종 규정 준수 기준에 따라 우선 순위가 지정됩니다.
3. 악용 가능성 및 연결성 평가
코드베이스에서 악용될 가능성이 가장 높은 취약성의 우선 순위를 지정합니다. 악용될 가능성이 가장 높은 경고를 식별하려면 값(예: epss_percentage)에 연결된 epss_percentage>=0.10 필터를 사용할 수 있습니다.
4. 종속성 범위 및 관계 검토
직접 종속성은 일반적으로 업데이트하기가 더 쉽고 애플리케이션의 보안에 더 큰 영향을 미칠 수 있습니다. 가능한 경우, 전이적 종속성보다 먼저 이 문제를 해결하는 것이 좋습니다.
`relationship:direct` 필터를 사용하여 경고를 필터링하면 npm과 같은 지원되는 에코시스템에 대한 직접 종속성에 대한 취약성을 확인할 수 있습니다.
런타임 종속성은 프로덕션의 애플리케이션에서 사용됩니다. 이러한 종류의 종속성을 업데이트하면 최종 사용자 또는 시스템에 직접 영향을 미치는 보안 취약성을 해결하고, 버그를 수정하며, 성능을 개선할 수 있습니다. 반면, 개발 종속성은 개발, 테스트, 빌드 프로세스 중에만 사용됩니다. 이러한 종속성 문제가 중요하긴 하지만 일반적으로 실행 중인 애플리케이션이나 사용자에게 영향을 미치지는 않습니다.
`scope:runtime` 또는 `scope:development` 필터를 사용하여 런타임 또는 개발 종속성의 경고만 각각 표시할 수 있습니다.
5. 경고 생성 시점 고려
오래된 경고는 장기간 방치된 위험을 나타낼 수 있습니다. 정기적으로 오래된 경고를 검토하고 해결하여 보안 부채가 누적되는 것을 방지합니다. 예를 들어, 특정 리포지토리에 다른 리포지토리보다 우선 순위로 지정되어야 하는 경고가 더 많다는 것을 확인한 후, 다음을 수행할 수 있습니다.
- 리포지토리별 표에서 해당 리포지토리 이름을 클릭하여, 해당 리포지토리의 경고만 표시합니다.
-
**Sort** 드롭다운 목록에서 "Older" 필터와 기타 정렬 기준을 사용하여 연령별로 기준에 맞는 경고에 대한 시각화를 세부적으로 조정합니다.
6. 자동화 활용
자동화된 끌어오기 요청을 사용하여 Dependabot취약성을 신속하게 수정합니다. 이러한 업데이트를 CI/CD 파이프라인에 통합하면 더 빠른 해결과 효율성 향상에 도움이 됩니다.
모범 사례
- 심각도에 따라 취약성을 해결하기 위해 SLA(서비스 수준 약정)를 설정합니다.
-
**메트릭을 정기적으로 모니터링**하여 추세와 반복되는 문제를 식별합니다. -
**개발자와 협업**하여 적시에 업데이트를 수행하고 중단을 최소화합니다. -
**의사 결정을 문서화**하여 투명성을 제공하고 향후 우선 순위 지정을 지원합니다.