문제 무시
수정할 필요가 없거나 스캔 결과에서 해당 이슈를 보고 싶지 않은 경우 취약점이나 오픈소스 라이선스 이슈를 무시할 수 있습니다. 이슈를 일시적으로 또는 영구적으로 무시할 수 있으며, 무시를 개별적으로 또는 작업(actions)으로 설정할 수 있습니다. Snyk의 무시 기능을 사용하면 수정해야 할 이슈에 대한 결과만 표시할 수 있습니다.
오픈소스에 대한 자세한 내용은 무시 설정 방법을 참조하십시오. 이 정보는 다른 Snyk 스캔 방법과 함께 무시를 사용하는 데 유용한 배경 지식을 제공합니다. 자세한 내용은 이 페이지의 다음 섹션을 참조하십시오.
이슈 무시 결정
최적으로는 취약점을 수정 또는 패치하거나 취약한 종속성을 제거하는 것이 좋습니다. 그러나 다음과 같은 이유로 이슈를 억제하고 싶을 수 있습니다.
수정 사항이 없음.
이슈가 프로젝트와 관련이 없음. 한 가지 예로 내부 서비스에 대한 분산 서비스 거부(DDoS) 공격이 있습니다.
악용 불가능하게 만드는 경로가 있더라도 이슈를 수정하는 것이 가장 좋습니다. 현재 악용 불가능한 취약점이 미래에는 악용 가능해질 수도 있기 때문입니다.
무시 설정 방법
여러 가지 방법으로 이슈를 보고 무시할 수 있습니다.
Snyk 웹 UI에서 이슈 무시
각 이슈 카드에는 이슈를 무시할 방법이나 이유, 그리고 무시 기간을 선택할 수 있는 대화 상자를 여는 Ignore 버튼이 있습니다.

무시를 생성하는 시점에 악용 불가능한 모든 이슈에 대해 Not vulnerable을 선택할 수 있습니다.
Ignore temporarily를 선택한 경우, Until fix is available 체크박스를 체크할 수 있습니다.

이슈에 대한 수정 사항이 없는 경우 이 항목이 기본적으로 체크됩니다. Snyk에 해당 이슈에 대한 수정 사항이 생기는 즉시 취약점이 다시 나타나며, 선택적으로 이슈를 무시하는 이유에 대한 추가 세부 정보를 제공할 수 있습니다.
이슈는 무시 기간이 만료되거나 취약점이 수정 가능해질 때까지 무시됩니다.
Snyk 웹 UI의 오픈소스 또는 코드 프로젝트에서 무시된 이슈는 프로젝트의 모든 브랜치에 걸친 후속 PR 확인에 반영되어 플래그가 지정되지 않습니다.
Snyk 웹 UI에서 이슈를 무시하면, 이슈에 누가 무시했는지 표시되며 무시를 편집하거나 무시를 취소할 수 있습니다.

자세한 내용은 교육 과정인 이슈 무시하기(Ignoring issues)를 참조하십시오.
CLI에서 이슈 무시
snyk ignore 명령을 사용하여 CLI를 통해 이슈를 억제할 수 있습니다. 예:
snyk ignore --id='npm:braces:20180219' --expiry='2018-04-01' --reason='testing'
자세한 내용은 ignore 명령 도움말 및 Snyk CLI를 사용하여 취약점 무시를 참조하십시오.
오픈소스에 대해 snyk ignore를 사용하면, 사유가 제공된 경우 경로와 사유가 포함되어 .snyk 정책 파일이 업데이트됩니다. 예시는 다음과 같습니다.
자세한 내용은 .snyk 파일을 사용하여 이슈 무시를 참조하십시오.
CLI 또는 CI/CD에서 스캔하고 웹 UI에서 무시
CLI 또는 CI/CD 실행에서 발견된 오픈소스 이슈에 대한 무시는 다음과 같이 웹 UI와 동기화됩니다.
프로젝트를 스캔하고
snyk monitor를 사용하여 결과를 웹 UI로 보냅니다.웹 UI에서 스캔 결과를 확인하고 이슈를 무시하도록 선택합니다.
CI/CD 또는 CLI에서
snyk test또는snyk monitor를 실행할 때 해당 이슈가 무시됩니다.
다음 예시를 참조하십시오. 이슈가 CI/CLI로 식별되며, 이는 프로젝트가 snyk monitor에서 가져온 것임을 의미합니다. 이슈는 npmconf입니다. Not vulnerable이며 사용자는 Ignore를 선택할 수 있습니다.

다음은 웹 UI에서 무시가 설정되기 전의 snyk test 결과입니다.

다음은 웹 UI에서 무시가 설정된 후의 snyk test 결과입니다.

SCM에서 가져온 동일한 리포지토리는 다른 프로젝트로 간주되며, SCM 프로젝트에 대해 설정된 무시는 CLI 또는 CI/CD의 snyk test 결과에 영향을 미치지 않습니다. SCM 및 CI 프로젝트는 두 개의 독립적인 프로젝트로 동작합니다.
.snyk 파일을 사용하여 이슈 무시
expires 필드는 선택 사항입니다. 영구적인 무시가 필요한 경우 필드를 생략하십시오.
.snyk 파일을 통해 생성된 무시에 대해 만료 날짜가 적용되도록 하려면, 유효한 만료 날짜를 지정해야 합니다. 날짜는 YYYY-MM-DDThh:mm:ss.fffZ와 같은 Javascript Date Time String 형식이어야 합니다. 지정된 만료 날짜가 이 형식을 준수하지 않으면 무시 규칙이 인정되며 무기한 유지됩니다. 자세한 내용은 snyk ignore 명령 도움말의 --expiry 옵션을 참조하십시오.
오픈소스 프로젝트의 경우, .snyk YAML 파일을 생성하거나 기존 .snyk 파일을 수정하여 취약점을 무시할 수 있습니다.

예를 들어, fastreader에 있는 SNYK ID SNYK-RUBY-FASTREADER-20085 취약점을 "수정 사항 없음"이라는 사유로 2024년 1월 1일까지 무시하려면 다음과 같이 작성합니다.
자세한 내용은 .snyk 파일을 참조하십시오. 여기에는 모노레포의 .snyk 파일 및 매니페스트 파일과 다른 디렉토리에 있는 .snyk 파일 섹션이 포함됩니다.
정책 작업을 사용하여 이슈 무시
정책 규칙에 지정된 조건과 일치하는 모든 취약점을 무시하도록 보안 정책 작업(Security policy actions)을 설정할 수 있습니다.
자세한 내용은 보안 정책 (Security policies)을 참조하십시오.
Snyk Code에서 이슈 무시
Snyk Code의 경우, 무시 기능이 다른 제품보다 더 넓은 범위의 이슈를 포착할 수 있습니다.
Snyk Code는 입력 코드를 중간 표현(intermediate representation)으로 변환하며, 이는 코드의 흐름을 캡처하지만 일부 세부 사항은 추상화합니다.
Snyk Code는 이 중간 표현을 사용하여 코드를 리팩토링하거나 변수 이름을 변경하더라도 동일한 이슈를 인식합니다.
따라서 이슈를 무시하면, Snyk Code는 사소한 코드 변경이 있더라도 코드의 여러 위치에서 발생하는 해당 이슈를 무시할 수 있습니다. 이를 통해 동일한 무시된 이슈가 있는 코드 조각에 대해 중복된 보고서가 여러 개 생성되는 것을 방지합니다.
예를 들어, 다음 두 코드 스니펫은 개발자가 변수 이름만 변경했으므로 동일한 이슈로 간주됩니다.
Snyk Container에서 이슈 무시
snyk container test를 사용하여 컨테이너 이미지를 스캔할 때, .snyk 파일에서 무시를 설정하여 관련 없는 이슈를 무시할 수 있습니다.
Snyk은 작업 디렉토리의 루트에 .snyk 파일을 저장하고 버전 관리할 것을 권장합니다.
무시를 설정한 후 snyk container test 또는 snyk container monitor 명령을 사용할 때는 --policy-path= 옵션을 사용해야 합니다. 예시는 다음과 같습니다.
snyk container test node --policy-path=.snyk
Snyk IaC에서 이슈 무시
snyk iac test를 사용하여 IaC 구성 파일을 스캔할 때, .snyk 파일을 사용하여 관련 없는 이슈를 무시할 수 있습니다.
Snyk은 IaC 구성 파일을 저장하는 작업 디렉토리의 루트에 .snyk 파일을 저장하고 버전 관리할 것을 권장합니다.
자세한 내용은 .snyk 정책 파일을 사용한 IaC 무시를 참조하십시오.
무시 설정 구성
취약점을 억제하는 것은 일정 수준의 리스크를 수반하므로, 이 기능을 관리자만 사용할 수 있도록 다음과 같이 설정할 수 있습니다.
조직의 Settings > General > Ignores로 이동합니다.
Ignore an issue or edit ignore settings using Snyk Web UI or Snyk API 아래에서 **Group and Org Admin users (Default user roles only)**를 선택합니다. 이렇게 하면 CLI를 통해 무시가 추가되는 것도 방지됩니다.
Require reason for each ignore 아래에서, 각 무시마다 사유를 입력하도록 Required로 설정할 수 있습니다.
Update를 선택하여 변경 사항을 적용합니다.

일관된 무시(Consistent Ignores)가 활성화되면 Group and Org Admin (Default user roles only) 구성은 무시됩니다.
Snyk 보고 기능에 액세스할 수 있고 새로운 Snyk 보고서를 사용하는 경우, 열려 있는 무시된 이슈만 보여주는 이슈 상태(Issue Status) 보고서를 표시할 수 있습니다.
레거시 보고서(Legacy reports)를 사용하는 경우, 조직의 프로젝트에서 얼마나 많은 이슈가 무시되었는지에 대한 개요를 볼 수 있으며, 각 이슈를 상세히 분석할 수 있도록 필터링 옵션이 제공됩니다. Snyk 웹 UI에서 이슈가 무시된 경우, 누가 시작했는지 확인할 수 있도록 크레딧(credit) 정보가 포함됩니다.
Last updated