안전한 종속 항목 관리
종속 항목 버전을 고정하고, CVE를 모니터링하며, 잠금 파일을 사용하고, CI 파이프라인에서 SCA를 자동화합니다.
안전한 종속 항목 관리은(는) CoddyKit의 무료 Cyber Security Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cyber Security Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cyber Security Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
종속성이 위험한 이유
현대 애플리케이션은 수백 개의 서드파티 패키지를 가져옵니다. 각 종속성과 그 전이 종속성은 공격 표면을 넓힙니다. Log4j의 Log4Shell과 같은 인기 라이브러리의 취약점은 수천 개 애플리케이션을 동시에 노출할 수 있습니다.
잠금 파일과 버전 고정
잠금 파일(package-lock.json, yarn.lock, Pipfile.lock)은 모든 종속성을 전이 종속성까지 포함해 정확한 버전에 고정합니다. 잠금 파일을 버전 관리에 커밋하십시오. 이를 통해 재현 가능한 빌드를 보장하고, 취약점을 도입할 수 있는 의도하지 않은 버전 업그레이드를 방지합니다.
소프트웨어 구성 분석 (SCA)
SCA 도구는 종속성 트리를 CVE 데이터베이스와 대조하여 취약한 패키지를 식별합니다. OWASP Dependency-Check, Snyk, GitHub Dependabot은 알려진 취약점을 자동으로 탐지하고, 해결 지침과 함께 패치된 버전을 제안합니다.
자동 종속성 업데이트
Dependabot과 Renovate Bot은 새롭고 호환성이 깨지지 않는 버전을 사용할 수 있을 때 자동으로 풀 리퀘스트를 생성합니다. 보안 업데이트를 우선 처리합니다. 지속적 통합을 통과한 패치 업데이트에 자동 병합을 구성하면 수동 작업을 최소화하면서 종속성을 최신 상태로 유지할 수 있습니다.
새 의존성 평가
의존성을 추가하기 전에 다운로드 수, 최근 커밋 활동, 열린 이슈 수, 라이선스 호환성 및 알려진 CVE 이력을 확인하십시오. 유지 관리가 잘되고 활발한 보안 대응 절차를 갖춘 패키지를 유지 관리되지 않는 대안보다 우선하십시오.
전이 의존성의 위험
직접 의존성은 자체 의존성을 추가로 가져옵니다. event-stream 사건에서는 공격자가 수백만 개 패키지에서 사용되던 전이 의존성을 장악했습니다. 직접 의존성만이 아니라 전체 의존성 트리를 감사하십시오.
비공개 패키지 레지스트리
의존성 혼동 공격은 내부 패키지와 같은 이름의 악성 패키지를 공개 레지스트리에 게시하는 방식으로 이루어집니다. 범위가 지정된 패키지 이름, 비공개 레지스트리 인증, 그리고 .npmrc 또는 pip.conf에서 승인된 레지스트리만 허용하는 목록을 사용하여 완화하십시오.
소프트웨어 공급망 보안: SBOM
소프트웨어 구성 요소 명세서(SBOM)는 소프트웨어에 포함된 모든 구성 요소를 기계가 읽을 수 있는 형식으로 정리한 목록입니다. Syft 또는 CycloneDX로 SBOM을 생성하십시오. 새로운 CVE가 공개되면 SBOM을 통해 취약점의 영향을 신속하게 평가할 수 있습니다. 영향을 받는 버전을 몇 분 안에 식별할 수 있습니다.
라이선스 준수
OSS 라이선스에는 준수해야 할 의무가 있습니다. GPL은 소스 공개를 요구할 수 있습니다. MIT와 Apache 2.0은 허용 범위가 넓은 라이선스입니다. FOSSA와 TLDR-Legal은 라이선스 호환성을 평가하는 데 도움이 됩니다. 상용 제품에 실수로 GPL 코드가 포함되는 것을 방지하려면 지속적 통합에 라이선스 검사를 통합하십시오.
무결성 검증
CDN에서 호스팅되는 스크립트에 사용하는 하위 리소스 무결성(SRI)은 integrity 특성에 암호화 해시를 넣는 방식입니다. npm package.json에는 integrity 필드가 포함되어 있습니다. 공급망 변조를 탐지하려면 지속적 통합에서 패키지를 다운로드할 때 체크섬을 검증하십시오.
의존성을 최신 상태로 유지하기
심각한 취약점은 CVE가 공개된 후 24~48시간 이내에 보안 패치를 적용하십시오. 우선순위를 정할 때 CVSS 점수와 악용 가능성 데이터를 사용하십시오. 호환성을 깨뜨리는 변경 사항을 도입하는 패치된 의존성이 있더라도, 운영 환경에 악용 가능한 취약점이 존재하는 것보다는 낫습니다.
지식 확인
의존성 혼동 공격이란 무엇인가요?
요약
안전한 의존성 관리를 위해서는 잠금 파일에 버전을 고정하고, 지속적 통합 및 지속적 배포에서 SCA 검사를 실행하며, 패치 업데이트를 자동화하고, 영향 평가를 위해 SBOM을 생성해야 합니다. 또한 새 의존성을 도입하기 전에 해당 의존성의 보안 상태를 평가해야 합니다.
자주 묻는 질문
“안전한 종속 항목 관리” 강의는 무료인가요?
네 — “안전한 종속 항목 관리” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cyber Security Academy 강의 전체를 잠금 해제할 수 있습니다. Cyber Security Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“안전한 종속 항목 관리”에서 뭘 배우나요?
종속 항목 버전을 고정하고, CVE를 모니터링하며, 잠금 파일을 사용하고, CI 파이프라인에서 SCA를 자동화합니다. 브라우저에서 직접 실행하는 실습 코드로 Cyber Security Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Cyber Security Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Cyber Security Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“안전한 종속 항목 관리” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Cyber Security Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Cyber Security Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.