Skip to main content

리포지토리에 대한 코드 검사 경고 평가

보안 보기에서 프로젝트 코드의 잠재적인 취약성 또는 오류에 대한 경고를 탐색하고 평가할 수 있습니다.

누가 이 기능을 사용할 수 있나요?

쓰기 권한이 있는 사용자

리포지토리에 대한 읽기 권한이 있는 사람은 끌어오기 요청에 대한 code scanning 주석을 볼 수 있습니다. 자세한 내용은 끌어오기 요청에서 코드 검사 경고 심사을(를) 참조하세요.

리포지토리에 대한 경고 보기

보안 탭에서 리포지토리에 대한 모든 경고의 요약 정보를 보려면 쓰기 권한이 필요합니다.

기본적으로 code scanning 경고 페이지는 리포지토리의 기본 분기에 대한 경고만 표시하도록 필터링됩니다.

  1. GitHub에서 리포지토리의 기본 페이지로 이동합니다.

  2. 리포지토리 이름 아래에서 보안을 클릭합니다. "보안" 탭이 표시되지 않으면 드롭다운 메뉴를 선택한 다음 보안을 클릭합니다.

    탭을 보여 주는 리포지토리 헤더의 스크린샷. "보안" 탭이 진한 주황색 윤곽선으로 강조 표시됩니다.

  3. 왼쪽 사이드바에서 Code scanning 을(를) 클릭합니다.

  4. 선택적으로 무료 텍스트 검색 상자 또는 드롭다운 메뉴를 사용하여 경고를 필터링합니다. 예를 들어 경고를 식별하는 데 사용된 도구로 필터링할 수 있습니다.

    code scanning 경고 페이지 스크린샷. 검색창 및 필터 드롭다운 메뉴는 진한 주황색으로 표시됩니다.

  5. “”에서 탐색하려는 상세 경고 페이지를 클릭합니다. 경고 페이지에 있는 상태와 세부 정보는 경고가 다른 분기에 있는 경우에도 리포지토리의 기본 분기에 있는 경고의 상태만 반영합니다. 경고 페이지의 오른쪽에 있는 영향받는 분기 섹션에서 기본 분기가 아닌 분기에 대한 경고 상태를 볼 수 있습니다. 경고가 기본 분기에 없는 경우 경고 상태가 "끌어오기 요청 내" 또는 "분기 내"로 표시되고 회색으로 표시됩니다.

  6. 경고에서 데이터 흐름 문제를 강조하는 경우 선택적으로 경로 표시를 클릭하여 데이터 원본부터 데이터 원본이 사용된 싱크까지의 경로를 표시합니다.

    code scanning 경고에 대한 스크린샷입니다. "경로 표시" 및 "자세히 표시" 링크는 진한 주황색으로 표시됩니다.

  7. CodeQL 분석의 경고에는 문제에 대한 설명이 포함됩니다. 코드를 수정하는 방법에 대한 지침을 보려면 자세히 표시를 클릭합니다.

자세한 내용은 코드 검사 경고 정보을(를) 참조하세요.

Note

도구 상태 페이지에서 code scanning 분석이 마지막으로 실행된 시기에 대한 정보를 볼 수 있습니다. 자세한 내용은 코드 스캔을 위한 도구 상태 페이지 정보을(를) 참조하세요.

조직의 CodeQL pull request 경고에 대한 메트릭 보기

CodeQL 분석의 code scanning 경고의 경우 보안 개요를 사용하여 조직 전체에서 쓰기 권한이 있는 리포지토리의 끌어오기 요청에서 CodeQL이(가) 수행되는 방식을 확인하고 조치를 취해야 할 수 있는 리포지토리를 식별할 수 있습니다. 자세한 내용은 pull request 경고에 대한 메트릭 보기을(를) 참조하세요.

code scanning 경고 필터링

code scanning 경고 보기에 표시된 경고를 필터링할 수 있습니다. 수많은 경고가 있을 때 특정 유형의 경고에 집중할 수 있는 유용한 기능입니다. 미리 정의된 필터와 표시되는 경고 목록을 구체화하는 데 사용할 수 있는 다양한 키워드가 있습니다.

드롭다운 목록에서 키워드를 선택하거나 검색 필드에 키워드를 입력할 때 결과가 있는 값만 표시됩니다. 따라서 결과가 없는 필터를 설정하는 일을 더 쉽게 피할 수 있습니다.

경고 보기의 검색 필드 스크린샷. 필드에는 "branch:dependabot"이 있고 이름이 일치하는 유효한 모든 분기가 표시됩니다.

여러 필터를 입력하면 이 모든 필터와 일치하는 경고가 보기에 표시됩니다. 예를 들어 is:closed severity:high branch:mainmain 분기에 있는 종결된 높은 심각도 경고만 표시합니다. refs(ref, branchpr)와 관련된 필터는 예외입니다. is:open branch:main branch:nextmain 분기와 next 분기의 열린 경고를 표시합니다.

기본 분기가 아닌 분기에서 경고를 필터링했지만 기본 분기에 동일한 경고가 있는 경우 상태가 기본 분기가 아닌 분기의 상태와 충돌하더라도 지정된 경고의 경고 페이지에는 여전히 기본 분기의 경고 상태만 반영됩니다. 예를 들어 branch-x에 대한 경고 요약의 “열기” 목록에 나타나는 경고는 기본 분기에서 이미 수정된 경우 경고 페이지에 “수정됨” 상태를 표시할 수 있습니다. 경고 페이지 오른쪽에 있는 영향을 받는 분기 섹션에서 필터링한 분기에 대한 경고 상태를 확인할 수 있습니다.

tag 필터에 -를 접두사로 사용하면 해당 태그가 있는 결과를 제외할 수 있습니다. 예를 들어 -tag:style은(는) style 태그가 없는 경고만 표시합니다.

결과를 애플리케이션 코드로 제한

"애플리케이션 코드의 경고만" 필터 또는 autofilter:true 키워드와 값을 사용하여 결과를 애플리케이션 코드의 경고로 제한할 수 있습니다. 애플리케이션 코드가 아닌 것으로 자동으로 레이블이 지정된 코드 형식에 대한 자세한 정보는 코드 검사 경고 정보을(를) 참조하세요.

code scanning 경고 검색

경고 목록을 검색할 수 있습니다. 이 기능은 리포지토리에 수많은 경고가 있거나 경고의 정확한 이름을 모르는 경우에 유용합니다. GitHub Enterprise Server은 다음 위치에서 무료 텍스트 검색을 수행합니다.

  • 경고의 이름
  • 경고 세부 정보(축소 가능한 자세히 보기 섹션의 기본값으로 보기에서 숨겨진 정보도 포함됨)
지원되는 검색구문 예시결과
단일 단어 검색injectioninjection이라는 단어가 포함된 모든 경고를 반환
여러 단어 검색sql injectionsql 또는 injection이라는 단어가 포함된 모든 경고를 반환
정확한 일치 검색
(큰따옴표 사용)
"sql injection"sql injection과 정확하게 일치하는 구가 포함된 모든 경고를 반환
OR 검색sql OR injectionsql 또는 injection이라는 단어가 포함된 모든 경고를 반환
AND 검색sql AND injectionsqlinjection이라는 단어가 모두 포함된 경고를 반환

Tip

  • 여러 단어 검색은 OR 검색과 동일합니다.
  • AND 검색은 경고 이름 또는 세부 정보에서 _위치_와 순서에 상관없이 검색어가 포함된 결과를 반환합니다.
  1. GitHub에서 리포지토리의 기본 페이지로 이동합니다.
  2. 리포지토리 이름 아래에서 보안을 클릭합니다. "보안" 탭이 표시되지 않으면 드롭다운 메뉴를 선택한 다음 보안을 클릭합니다.
    탭을 보여 주는 리포지토리 헤더의 스크린샷. "보안" 탭이 진한 주황색 윤곽선으로 강조 표시됩니다.
  3. 왼쪽 사이드바에서 Code scanning 을(를) 클릭합니다.
  4. 필터 드롭다운 메뉴의 오른쪽에 있는 무료 텍스트 검색 상자에 검색할 키워드를 입력합니다.
    경고 보기의 검색 필드 스크린샷. 필드에는 미리 정의된 필터 "is: open branch:main"과 "sql 또는 injection"의 자유 텍스트가 강조 표시됩니다.
  5. return을 누릅니다. 경고 목록에는 검색 조건과 일치하는 열린 code scanning 경고가 포함됩니다.

code scanning 경고에 대한 응답 감사

GitHub 도구를 사용하여 code scanning 경고에 대한 응답으로 수행된 작업을 감사할 수 있습니다. 자세한 내용은 "보안 경고 감사"을(를) 참조하세요.

추가 참고 자료