오픈소스 프로젝트와 관련한 취약점 문제 해결을 위해 구글은 취약점 데이터베이스인 OSV(Open Source Vulnerabilities)를 구축하고 있다. 2021년 6월 24일 발표에선 OSV가 취급하는 오픈소스 프로젝트 범위가 파이썬, 러스트, Go, DWF까지 확대된 것으로 밝혀졌다.
많은 기업이나 개발자가 소스코드를 공개한 오픈소스 소프트웨어를 사용하고 있지만 특성상 오픈소스 소프트웨어는 특정 보안 위험이 있다. 예를 들어 지금까지 조사에선 상용 코드베이스 84%에 오픈소스 취약점 하나 이상이 포함되어 있다는 게 확인되고 있다. 오픈소스 라이브러리 취약점은 간단한 업데이트로 수정할 수 있지만 개발자 중 79%는 코드 타사 라이브러리를 업데이트하지 않는 것으로 판명되고 있다. 이런 상황에서 많은 코드 기반 오픈소스 취약점이 수정되지 않은 상태로 되어 있다는 문제가 지적되고 있다.
이런 문제를 해결하기 위해 구글은 2월 OSV를 시작했다. 오픈소스 취약점을 해결하려면 먼저 취약점 위험을 평가하는 취약점 심사가 필요하지만 여기에는 노력과 시간이 필요하다. OSV는 취약점 심사 과정을 개선하기 위한 노력이다.
OSV는 취약점이 처음으로 확인되고 수정된 위치 데이터를 기록하는 것으로 개발자가 취약점 영향을 이해하는데 도움이 된다. 공개 시점 구글은 다양한 오픈소스를 대상으로 한 퍼즈(fuzz. 예측할 수 없는 입려 데이터)에서 얻은 데이터를 OSV에 저장했다.
이어 6월 24일 구글은 새롭게 OSV가 취급하는 오픈소스 프로젝트 범위를 파이썬과 러스트, Go, DWF까지 확대한다고 발표한 것.
오픈소스 취약점 데이터베이스는 기업이나 조직이 개별적으로 만들 수 있는 수많은 독특한 형식으로 작성된다. 따라서 클라이언트는 여러 데이터베이스에서 취약점을 추적하고 각각 개별적으로 처리할 필요가 있다는 게 과제가 되고 있다. 구글은 다양한 오픈소스 커뮤니티와 협력해 취약점 교환 스키마에 임했다. 이 스키마에 따라 인간과 자동화 도구를 모두 사용할 수 있는 형식으로 여러 오픈소스 프로젝트에 걸쳐 취약점이 작성되게 됐다.
구글은 다양한 커뮤니티 협력을 얻어 피드백을 얻으면서 OSV 확대를 진행했다. 구글 측은 형식이 안정된 뒤 커뮤니티 참가자는 이들이 갖고 있던 기존 취약점 데이터세트에 OSV 스키마 형식과 일치시키기 위한 수정을 했으며 이로 인해 OSV 스키마에서 이들 데이터세트 통합이 실현되면 누구나 취약점을 조회할 수 있다고 밝혔다. 관련 내용은 이곳에서 확인할 수 있다.