{"meta":{"title":"종속성 유지 관리 모범 사례","intro":"도움이 될 수 있는 보안 제품을 포함하여 GitHub사용하는 종속성을 유지 관리하기 위한 지침 및 권장 사항입니다.","product":"보안 및 코드 품질","breadcrumbs":[{"href":"/ko/code-security","title":"보안 및 코드 품질"},{"href":"/ko/code-security/concepts","title":"Concepts"},{"href":"/ko/code-security/concepts/supply-chain-security","title":"공급망 보안"},{"href":"/ko/code-security/concepts/supply-chain-security/best-practices-for-maintaining-dependencies","title":"종속성 모범 사례"}],"documentType":"article"},"body":"# 종속성 유지 관리 모범 사례\n\n도움이 될 수 있는 보안 제품을 포함하여 GitHub사용하는 종속성을 유지 관리하기 위한 지침 및 권장 사항입니다.\n\n## 종속성 유지 관리 모범 사례\n\n종속성을 최신 상태로 유지하는 것은 보안 소프트웨어 환경을 유지하는 데 중요합니다. 몇 가지 권장 사항입니다.\n\n**보안 중심 종속성 관리 도구 채택**\n\n* 취약점의 종속성을 검사하고 업데이트를 자동으로 제안하는 도구를 사용하고 설정합니다.\n* 연속 모니터링 및 업데이트를 위해 이러한 도구가 CI/CD 파이프라인에 통합되어 있는지 확인합니다.\n* 프로세스를 설정하여 불호환 변경을 방지하기 위해 시맨틱 버전 관리를 따르도록 하십시오.\n\n**정기적인 취약성 검사 및 감사 수행**\n\n* 정기적인 종속성 감사 및 종속성 검사를 예약하여 오래되었거나 취약한 종속성을 식별합니다.\n\n**보안 패치 관리 자동화**\n\n* 보안 패치를 자동으로 적용하도록 종속성 관리 도구를 구성합니다.\n* 중요한 보안 업데이트에 대한 자동 끌어오기 요청을 설정하여 신속하게 검토하고 병합할 수 있습니다.\n\n**종속성 사용에 대한 정책 적용**\n\n* 보안 버전의 종속성 사용을 적용하는 정책을 구현합니다.\n* 취약성을 발생하거나 취약한 종속성을 업데이트하지 못하는 경우 끌어오기 요청의 병합을 차단할 수 있는 도구를 사용합니다.\n\n**CI/CD에서 보안 테스트 통합**\n\n* CI/CD 파이프라인에 보안 테스트 도구를 통합합니다.\n* 종속성 업데이트가 보안 준수 여부를 자동으로 테스트되는지 확인합니다.\n\n**잠금 파일 및 종속성 고정 사용하기**\n\n* 잠금 파일(예: `package-lock.json`, `yarn.lock`, `Pipfile.lock`)을 사용하여 알려진 보안 버전에 종속성을 고정합니다.\n* 이러한 잠금 파일을 정기적으로 업데이트하고 검토하여 의도하지 않은 보안 문제 없이 종속성이 최신 상태인지 확인합니다.\n\n**보안 권고 모니터링**\n\n* 사용하는 언어 및 프레임워크에 대한 보안 권고를 구독합니다.\n* 새로운 취약점의 최신 정보를 지속적으로 확인하기 위해 권고 사항을 개발 워크플로에 자동으로 통합합니다.\n* 종속성 관리 도구에서 제공하는 대시보드를 주기적으로 확인합니다.\n* 중요한 업데이트, 특히 보안 패치에 유의하고 이를 우선 순위로 지정합니다.\n\n**버전 제어 및 변경 관리**\n\n* 버전 제어의 종속성 변경 내용을 추적합니다(예: 자동화된 끌어오기 요청 활용).\n\n* 업데이트에 새로운 취약성이 발생하지 않도록 정기적인 코드 검토를 수행합니다.\n\n**교육 및 인식**\n\n* 개발 및 운영 팀에게 종속성 보안 및 최신 상태 유지의 중요성에 대해 교육합니다.\n* 종속성 관리 및 보안 도구를 효과적으로 사용하는 방법에 대한 교육을 제공합니다.\n\n**취약성 대응 계획**\n\n* 종속성에서 취약성이 식별되는 경우에 대한 명확한 인시던트 대응 계획을 세워야 합니다.\n* 팀이 보안 문제를 신속하게 해결하고 완화하는 방법을 알고 있는지 확인합니다.\n\n이러한 사례를 따르면 오래되고 취약한 종속성으로 인해 발생하는 위험을 크게 줄이고 더욱 안전한 환경을 유지할 수 있습니다.\n\n## 어떻게 GitHub가 도움이 될 수 있는지\n\nGitHub 에서는 종속성을 유지하는 데 도움이 되는 보안 기능을 제공합니다.\n\n**종속성 그래프**: 프로젝트 종속성을 추적하고 취약성을 식별합니다.\n[종속성 그래프](/ko/code-security/concepts/supply-chain-security/dependency-graph)을(를) 참조하세요.\n\n**종속성 검토**: 병합되기 전에 풀 리퀘스트에서 안전하지 않은 종속성을 검토합니다. 또한 검사에 종속성 검토 작업 실패할 수 있으며 분기 보호 규칙에 필요한 경우 취약성을 발생시키는 끌어오기 요청이 병합되지 않도록 방지할 수 있습니다.\n[종속성 검토](/ko/code-security/concepts/supply-chain-security/dependency-review)을(를) 참조하세요.\n\n\\*\\*\nDependabot\n\\*\\*: 취약성을 자동으로 검색하고, 경고를 만들고, 끌어오기 요청을 열어 취약하거나 오래된 종속성을 업데이트합니다. 여러 업데이트를 단일 끌어오기 요청으로 그룹화하여 검토를 간소화할 수 있습니다.\n[Dependabot 경고](/ko/code-security/concepts/supply-chain-security/dependabot-alerts)을(를) 참조하세요.\n\n\\*\\*\nGitHub Advisory Database\n\\*\\*: Dependabot의 취약성 탐지를 지원하는 보안 권고를 제공합니다.\n[GitHub 권고 데이터베이스](/ko/code-security/concepts/vulnerability-reporting-and-management/github-advisory-database)을 참조하세요.\n\n**프라이빗 취약성 보고**: 유지 관리자가 공개되기 전에 취약성 보고서를 비공개로 수신, 논의 및 수정할 수 있습니다.\n\n**보안 개요**: 위험에 처한 리포지토리, 경고 추세 및 기능 사용 상태에 대한 대시보드를 사용하여 조직의 보안 태세를 보여 줍니다.\n[보안 개요](/ko/code-security/concepts/security-at-scale/security-overview)을(를) 참조하세요.\n\n엔드투엔드 공급망 지침은 [엔드투엔드 공급망 보안](/ko/code-security/tutorials/implement-supply-chain-best-practices/end-to-end-supply-chain-overview)을 참조하세요."}