의존성 취약점 스캐너
package.json, package-lock.json 또는 pnpm-lock.yaml을 붙여넣기만 하면 됩니다. 각 npm 패키지를 OSV.dev(Google이 운영하는 오픈 취약점 데이터베이스)와 대조하여, 알려진 CVE와 심각도, 수정 버전을 함께 보여줍니다.
의존성 파일을 붙여넣고 ‘스캔’을 누르면 여기에 결과가 표시됩니다. 처음이신가요? 위의 ‘예제 사용해 보기’를 누르세요.
사용 방법
- 1
프로젝트의 package.json, 또는 package-lock.json / pnpm-lock.yaml의 내용을 붙여넣습니다.
- 2
‘스캔’을 누르면 각 패키지를 OSV.dev와 대조합니다(lockfile이면 실제로 고정된 버전을, package.json이면 선언된 범위에서 추정합니다).
- 3
발견된 취약점은 심각도순으로 표시됩니다. 수정 버전으로 업그레이드하고, 아래 AI 프롬프트로 안전하게 올리는 절차를 생성할 수 있습니다.
왜 중요한가
자주 묻는 질문
Q붙여넣은 의존성 목록은 어딘가로 전송되나요?
이 사이트로는 전송되지 않습니다. 분석은 브라우저 내에서 이루어지며, 대조는 사용자의 브라우저에서 OSV.dev(api.osv.dev)로 HTTPS를 통해 직접 수행됩니다. 이 사이트는 저장·기록·중계를 일절 하지 않습니다.
Qpackage.json과 lockfile 중 어느 것을 붙여넣어야 하나요?
정확도를 원한다면 lockfile(package-lock.json 또는 pnpm-lock.yaml)을 사용하세요. 전이 의존성을 포함한 실제 설치 버전을 반영하기 때문입니다. package.json은 선언된 범위(^1.2.3 등)에서 추정하는 것이므로 간단한 참고용으로 유용합니다.
Q취약점이 0으로 나오면 안전한가요?
아니요. 아직 OSV에 등록되지 않은 취약점, 설정 오류, 직접 작성한 코드의 결함은 탐지할 수 없습니다. 이는 알려진 CVE에 대한 일차 점검입니다. 지속적인 보호는 CI의 자동 감사(Dependabot / pnpm audit / osv-scanner)에서 나옵니다.
Q어떤 형식을 지원하나요?
현재는 npm 생태계(package.json / package-lock.json / pnpm-lock.yaml)를 지원합니다. yarn.lock과 기타 생태계(PyPI, Go 등)는 아직 지원하지 않습니다 — OSV.dev 자체는 다중 생태계를 지원하므로 향후 확장 후보입니다.