[오픈테크넷 2024] "오픈소스 필수 시대, 84%는 취약점 있다..." 효과적인 관리법은?
[디지털데일리 이건한 기자] 최근 소프트웨어 개발에서 '오픈소스'를 빼놓을 수 없게 된 가운데, 안전한 오픈소스 관리 및 활용에 필요한 지침이 간과되어 보안 위협 대응 및 소프트웨어 관리에 어려움을 겪는 사례도 증가하고 있다.
이에 시놉시스 코리아의 정성훈 부장은 24일 서울 양재 엘타워에서 열린 '오픈테크넷 2024'에서 '오픈소스 소프트웨어 위험관리 전략'을 발표했다. 오픈테크넷은 과학기술정보통신부, 정보통신산업진흥원, 디지털데일리가 주최하는 행사로 올해 11회차를 맞이했다.
핵심은 ▲오픈소스 라이선스 위험 인지 ▲알려진 보안 취약점 확인 ▲운영 측면의 노하우 등 3가지 요소다. 오픈소스는 기본적으로 공개된 코드이므로 활용이 쉽고, 널리 쓰이는 오픈소스 프로젝트의 코드들은 상당히 높은 수준을 자랑한다. 문제는 보안 취약점이 포함된 경우도 많다는 점이다.
시놉시스가 매년 발간하는 오픈소스 보안 위험 분석 리포트 'OSSRA'에 따르면, 지난해 전 산업군에서 1067개에 달하는 소프트웨어의 코드 베이스를 분석한 결과 대부분 코드 베이스에 오픈소스가 포함돼 있었다. 코드베이스 내 비중도 50% 이상인 경우가 많았다. 이는 최근 개발 트렌드에서 오픈소스 없이 소프트웨어 개발이 불가능한 수준임을 의미한다.
문제는 쉽게 간과되는 오픈소스 사용의 위험성이다. 정 부장은 "오픈소스는 주기적인 보안 업데이트가 제공되는 상용 소프트웨어와 달리, 내부에서 관리하지 않으면 아무도 업데이트해주지 않는다"고 강조했다.
실제로 개발한 소프트웨어에 오픈소스가 포함되는 경로는 매우 다양하다. 이때 일차로 어떤 코드가 소프트웨어에 담기는지, 라이선스 문제와 보안 문제는 없는지 확인하는 것이 중요하다. 정 부장이 언급한 OSSRA 보고서에는 분석한 1067개의 코드 베이스 중 84%가 오픈소스 취약점을 가지고 있었으며, 그중 74%는 고위험 취약점이 포함됐을 만큼, 관련 위험은 가볍지 않은 상황이다.
또한 약 31%는 라이선스가 없는 오픈소스를 가져다 쓴 경우인데, 추후 저작권 문제가 발생할 가능성이 있으므로 라이선스가 없는 오픈소스는 기본적으로 쓰지 않아야 한다. 또한 운영 측면에서 오래된 오픈소스도 잠재적 보안, 관리의 위험 요인이 된다. 정 부장은 "조사 결과 최신 버전보다 10개 버전 이상을 건너뛴 경우도 있었다"며 "오픈소스 관리 담당자가 내부에 없으면 개발자는 기능적 측면의 구현과 개발일정 맞추기 등에 급급해져 버그 픽스에 문제가 생길 수밖에 없다"고 말했다.
오픈소스 활용의 이런 한계로, 최근 미국과 유럽, 국내 등 전세계에선 정부 차원의 SBOM(소프트웨어 자재명세서) 준비와 활용의 중요성이 높아지고 있다. SBOM은 기업 간 소프트웨어 거래 시 소프트웨어 안의 포함된 구성 요소를 상세히 목록화하고 일종의 규격으로 만든 것이다. 체계적인 소프트웨어 거래 및 중요한 정부 누락을 막고, 개발 기업의 관리 및 책임 의무 강화를 위함이다.
실제로 SBOM 안에는 소프트웨어 이름, 버전, 기업보안 담당자 연락처 등이 포함되며, 경우에 따라 SBOM과 더불어 개발 시 프로세스에 보안 검증 절차가 잘 지켜졌는지 기업이 자기증명을 해야 하는 경우도 생겨나고 있다. 관련해 국내에선 과학기술정보통신부, 디지털플랫폼정부위원회에서 지난 5월 소프트웨어 공급망 보안 가이드라인 지침 1.0을 발표한 바 있다.
정 부장은 안전한 오픈소스 활용을 위해선 결국 개발 초기 단계부터 상세한 검증과 위험요인 제거가 중요하다고 거듭 강조했다. 기본적으로 오픈소스가 들어오는 다양한 경로를 모두 파악하고 분야별로 상세한 검증 프로세스를 추가하는 것이 중요하다. 다소 번거로울 수 있지만, 개발 초기 단계에서 이를 수행하지 않을 경우 개발 후기 테스트 및 양산, 실제 제품 출시 단계에서 문제가 발생할수록 대응이 더욱 어려워진다는 것이 정 부장의 설명이다.
SBOM의 적극적인 활용도 제안했다. 정 부장은 "SBOM을 잘 활용하면 개발단계에서 관계자 간 의사전달이 명확해진다"며 "어떤 코드와 소프트웨어가 쓰였고, 버전, 문제 발생 요인이 명확해지면 다양한 소프트웨어 관련 규정 준수에도 도움이 된다. SBOM 제출을 요구받는 경우에도 내외부적인 소프트웨어 거래에 도움이 되는 것도 장점"이라고 말했다. 또한 "추후 보안 취약점 발생 시 보다 빠른 원인 분석과 취약점 개선도 가능하다"고 덧붙였다.
끝으로 기업의 SBOM 관리 방안에 대한 가이드를 제시했다. 핵심은 단계별 SBOM 생성 및 취합을 통한 확장이다. 우선 각 소프트웨어 공급업체별로 SBOM을 생성해 받고, 내부에서 개발한 소프트웨어에 대한 SBOM을 생성 후 취합해 데이터베이스로 만든다. 추후 이를 납품 형태에 따라 다시 각 SBOM을 생성해 제시할 경우 다양한 이슈 관리 및 중장기적 서비스 유지보수도 훨씬 편리해진다는 설명이다.
[현장] 티빙·웨이브 합병 두고 CEO별 온도차…"주주 동의 필요 vs 無 관여"
2024-12-19 17:13:57[DD퇴근길] 갈길 먼 AI 기본법…바디프랜드, '가구' 선보인 이유는
2024-12-19 16:52:18유상임 과기정통부 장관이 SKT·네이버 CTO 만난 이유는
2024-12-19 16:35:25네이버페이, 대안신용평가 모델 앞세워 협력사 확장 ‘가속’...한투저축은행과 맞손
2024-12-19 16:03:57