Diff 모드로 코드 비교하기
Noir의 diff 모드를 사용하여 코드베이스의 두 가지 버전을 비교하고 변경사항을 식별하는 방법을 알아보세요. 이는 코드 변경이 API에 미치는 영향을 이해하는 강력한 기능입니다.
Diff 모드는 Noir의 강력한 기능으로 코드베이스의 두 버전을 비교하고 발견된 엔드포인트 측면에서 정확히 무엇이 변경되었는지 볼 수 있습니다. 이는 코드 리뷰, 보안 평가, 새로운 기능의 영향을 이해하는 데 매우 유용할 수 있습니다.
diff 모드를 사용하려면 -b
플래그로 베이스 경로(코드의 새 버전을 나타냄)를 제공하고 --diff-path
플래그로 비교 경로(코드의 이전 버전을 나타냄)를 제공합니다.
noir -b <NEW_VERSION_PATH> --diff-path <OLD_VERSION_PATH>
출력 이해하기
diff 모드의 출력은 두 버전 간에 추가, 제거 또는 변경된 엔드포인트를 보여줍니다.
일반 텍스트 출력
기본 일반 텍스트 출력에서는 변경사항의 간단한 요약을 얻습니다:
[*] ============== DIFF ==============
[I] Added: / GET
[I] Added: /update POST
[I] Removed: /secret.html GET
[I] Removed: /posts GET
JSON 및 YAML 출력
더 자세하고 기계가 읽을 수 있는 출력을 원한다면 JSON 또는 YAML 형식(-f json
또는 -f yaml
)을 사용할 수 있습니다. 이는 전체 세부사항을 포함하여 추가, 제거 및 변경된 엔드포인트의 구조화된 보기를 제공합니다.
{
"added": [
{
"url": "/",
"method": "GET",
// ... 전체 엔드포인트 세부사항
}
],
"removed": [
{
"url": "/secret.html",
"method": "GET",
// ... 전체 엔드포인트 세부사항
}
],
"changed": []
}
diff 모드를 사용하면 더 효율적인 CI/CD 파이프라인을 구축할 수 있습니다. 예를 들어, DAST(Dynamic Application Security Testing) 도구를 구성하여 새 릴리스에서 추가되거나 수정된 엔드포인트만 스캔하도록 하여 시간과 자원을 절약할 수 있습니다.