Skip to main content

Dependabot 빠른 시작 가이드

Dependabot을(를) 사용하면 리포지토리가 알려진 취약성이 있는 소프트웨어 종속성을 사용하는 경우 경고를 받을 수 있습니다. 이 가이드는 리포지토리에 Dependabot을(를) 사용하도록 설정하고 보고된 경고를 탐색하는 데 도움이 됩니다.

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

Dependabot alerts은(는) GitHub의 모든 리포지토리에 자유롭게 사용할 수 있습니다. 연결성 분석이나 사용자 지정 자동 심사 규칙을(를) 만드는 기능 같은 고급 기능은 모든 조직 소유 리포지토리에서 이용할 수 있습니다. 단, GitHub Advanced Security 라이선스가 있어야 합니다.

Dependabot

이 빠른 시작 가이드에서는 Dependabot의 설정 및 활성화와 리포지토리의 Dependabot alerts 및 업데이트 보기를 설명합니다.

Dependabot은(는) 종속성 관리에 도움이 되는 세 가지 기능으로 구성됩니다.

  • Dependabot alerts - 리포지토리에서 사용하는 종속성의 취약점을 알려줍니다.
  • Dependabot security updates - 끌어오기 요청을 자동으로 생성하여 알려진 보안 취약성이 있는 종속성을 업데이트합니다.
  • Dependabot version updates - 끌어오기 요청을 자동으로 생성하여 종속성을 최신 상태로 유지합니다.

필수 조건

이 가이드에서는 데모 리포지토리를 사용하여 Dependabot이(가) 종속성에서 취약성을 찾는 방법, GitHub에서 Dependabot alerts을(를) 보는 방법, 이러한 경고를 탐색, 수정 또는 해제하는 방법을 설명합니다.

먼저 데모 리포지토리를 포크해야 합니다.

  1. https://github.com/dependabot/demo으로 이동합니다.
  2. 페이지 위쪽의 오른쪽에서 포크를 클릭합니다.
  3. 소유자(GitHub 개인 계정 선택 가능)를 선택하고 리포지토리 이름을 입력합니다. 리포지토리를 포크하는 방법에 대한 자세한 내용은 "리포지토리 포크"을 참조하세요.
  4. 포크 만들기를 클릭합니다.

리포지토리에 Dependabot 사용용

"필수 구성 요소"에서 포크한 리포지토리에 대해 다음 단계를 따라야 합니다.

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

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

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

  3. 사이드바의 "보안" 섹션에서 코드 보안 및 분석을 클릭합니다.

  4. "코드 보안 및 분석"에서 Dependabot alerts,의 오른쪽에 있는 Dependabot alerts, Dependabot security updates, Dependabot version updates 사용을 클릭합니다.

  5. 필요에 따라 Dependabot version updates 사용에 관심이 있다면 .github/dependabot.yml을 클릭합니다. 리포지토리의 /.github디렉터리에 기본 dependabot.yml 구성 파일이 생성됩니다. 리포지토리에서 Dependabot version updates을(를) 사용하려면 일반적으로 기본 파일을 편집하고 변경 내용을 커밋하여 필요에 맞게 이 파일을 구성합니다. 예를 들어 "Dependabot 버전 업데이트 구성"에 제공된 코드 조각을 참조할 수 있습니다.

참고: 종속성 그래프가 아직 리포지토리에서 사용하도록 설정되지 않은 경우 Dependabot을(를) 사용하도록 설정하면 GitHub이(가) 자동으로 종속성 그래프를 활성화합니다.

Dependabot 기능을 각각 구성하는 방법에 대한 자세한 내용은 "Dependabot 경고 구성," "Dependabot 보안 업데이트 구성.," "Dependabot 버전 업데이트 구성"을 참조하세요.

리포지토리의 Dependabot alerts 보기

리포지토리에서 Dependabot alerts을(를) 사용하도록 설정한 경우 리포지토리의 "보안" 탭에서 Dependabot alerts을(를) 볼 수 있습니다. 이전 섹션에서 Dependabot alerts을(를) 사용하도록 설정한 포크된 리포지토리를 사용할 수 있습니다.

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

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

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

  3. 보안 개요의 "취약성 경고" 사이드바에서 Dependabot 을(를) 클릭합니다. 이 옵션을 누락하면 보안 경고에 액세스할 수 없으며 액세스 권한이 부여되어야 합니다. 자세한 내용은 "리포지토리에 대한 보안 및 분석 설정 관리"을 참조하세요.

    "Dependabot" 탭이 진한 주황색 윤곽선으로 강조 표시된 보안 개요의 스크린샷.

  4. Dependabot alerts 페이지에서 열린 경고를 검토합니다. 기본적으로 페이지에는 열려 있는 경고가 나열된 열기 탭이 표시됩니다. (닫힘을 클릭하면 모든 닫힌 경고를 볼 수 있습니다.)

    데모 리포지토리에 대한 Dependabot 경고 목록을 보여 주는 스크린샷

    다양한 필터 또는 레이블을 사용하여 목록에서 Dependabot alerts을(를) 필터링할 수 있습니다. 자세한 내용은 "Dependabot 경고 보기 및 업데이트"을 참조하세요. 또한 Dependabot 자동 심사 규칙 경고 규칙을 사용하여 관심 없는 가양성 경고 또는 경고를 필터링할 수 있습니다. 자세한 내용은 "Dependabot 자동 심사 규칙 정보" 항목을 참조하세요.

  5. javascript/package-lock.json 파일에서 "lodash에 명령 삽입" 경고를 클릭합니다. 경고의 세부 정보 페이지에는 다음 정보가 표시됩니다(일부 정보는 일부 경고에 적용되지 않을 수 있음).

    • Dependabot이(가) 취약성을 해결하는 끌어오기 요청을 만들었는지 여부입니다. 보안 업데이트 검토를 클릭하여 제안된 보안 업데이트를 검토할 수 있습니다.
    • 관련된 패키지
    • 영향을 받는 버전
    • 패치된 버전
    • 취약성에 대한 간략한 설명

    주요 정보를 보여 주는 데모 리포지토리의 경고에 대한 상세 페이지 스크린샷

  6. 필요에 따라 페이지 오른쪽에 있는 정보를 탐색할 수 있습니다. 스크린샷에 표시된 일부 정보는 모든 경고에 적용되지 않을 수 있습니다.

    • 심각도

    • CVSS 메트릭 - CVSS 수준을 사용하여 심각도 수준을 할당합니다. 자세한 내용은 "GitHub Advisory Database 정보"을(를) 참조하세요.

    • 태그

    • 약점 - 해당되는 경우 취약성과 관련된 CWU 목록

    • CVE ID - 해당되는 경우 취약성에 대한 고유한 CVE 식별자

    • GHSA ID - GitHub Advisory Database에 대한 해당 권고의 고유 식별자 자세한 내용은 "GitHub Advisory Database 정보"을(를) 참조하세요.

    • GitHub Advisory Database에 대한 권고로 이동하는 옵션

    • 이 취약성의 영향을 받는 모든 리포지토리를 확인하는 옵션

    • GitHub Advisory Database의 권고에 대한 개선 사항을 제안하는 옵션

    페이지 오른쪽에 표시되는 정보를 보여주는 데모 리포지토리의 경고에 대한 상세 페이지 스크린샷

Dependabot alerts 보기, 우선 순위 지정, 정렬에 대한 자세한 내용은 "Dependabot 경고 보기 및 업데이트"을 참조하세요.

Dependabot 경고 수정 또는 해제

GitHub에서 Dependabot alerts을(를) 수정하거나 해제할 수 있습니다. 포크된 리포지토리와 이전 섹션에서 설명한 "lodash에 명령 삽입" 경고를 계속 사용하겠습니다.

  1. 리포지토리의 Dependabot alerts 탭으로 이동합니다. 자세한 내용은 위의 "리포지토리의 Dependabot alerts 보기" 섹션을 참조하세요.
  2. 경고를 클릭합니다.
  3. javascript/package-lock.json 파일에서 "lodash에 명령 삽입" 경고를 클릭합니다.
  4. 경고를 검토합니다. 마케팅 목록의 구성원을 관리할 수 있습니다.
    • 보안 업데이트 검토를 클릭하여 제안된 보안 업데이트를 검토합니다. 그러면 보안 수정 사항으로 Dependabot에서 생성된 끌어오기 요청이 열립니다.

      선택한 경고로 강조 표시된 보안 취약성을 해결하기 위해 Dependabot에서 생성된 끌어오기 요청 스크린샷

      • 끌어오기 요청 설명에서 커밋을 클릭하고 끌어오기 요청에 포함된 커밋을 탐색할 수 있습니다.
      • 또한 Dependabot 명령 및 옵션을 클릭하고 끌어오기 요청과 상호 작용하는 데 사용할 수 있는 명령을 알아볼 수 있습니다.
      • 종속성을 업데이트하고 취약성을 해결할 준비가 되면 끌어오기 요청을 병합합니다.
    • 경고를 해제하려면

      • 경고 세부 정보 페이지로 돌아갑니다.

      • 오른쪽 위 모서리에서 경고 해제를 클릭합니다.

        진한 주황색 윤곽선이 강조 표시된 경고 해제 단추, 드롭다운 메뉴 옵션, 해제 메모 상자가 있는 경고 세부 정보 페이지 스크린샷

      • 경고를 해제하는 이유를 선택합니다.

      • 필요에 따라 해제 설명을 추가합니다. 해제 설명은 경고 타임라인에 추가되며 감사 및 보고 중에 근거로 사용할 수 있습니다.

      • 경고 해제를 클릭합니다. 해당 경고는 열림 탭에서 더 이상 표시되지 않으며 닫힌 탭에서 볼 수 있습니다.

Dependabot alerts 검토 및 업데이트에 대한 자세한 내용은 "Dependabot 경고 보기 및 업데이트"을 참조하세요.

문제 해결

다음과 같은 경우 몇 가지 문제 해결이 필요할 수 있습니다.

  • Dependabot이(가) 경고 수정을 위해 끌어오기 요청을 만들 수 없습니다.
  • Dependabot에서 보고한 정보가 예상과 다릅니다.

자세한 내용은 "Dependabot 오류 문제 해결", "취약한 종속성 검색 문제 해결"을(를) 각각 참조하세요.

다음 단계

Dependabot 업데이트 구성에 대한 자세한 내용은 "Dependabot 보안 업데이트 구성.", "Dependabot 버전 업데이트 구성"을(를) 참조하세요.

조직의 Dependabot 구성에 대한 자세한 내용은 "Dependabot 경고 구성" 항목을 참조하세요.

Dependabot에서 연 끌어오기 요청 보기에 대한 자세한 내용은 "종속성 업데이트에 대한 끌어오기 요청 관리"을(를) 참조하세요.

Dependabot alerts에 기여하는 보안 공지에 대한 자세한 내용은 "GitHub Advisory Database에서 보안 권고 탐색"을(를) 참조하세요.

Dependabot alerts 관련 알림 구성에 대한 자세한 내용은 "Dependabot 알림에 대한 경고 구성"을(를) 참조하세요.