케네스 라트남 체크막스 디렉터 "선의 개발자가 만든 오픈소스도 위험"

케네스 라트남 체크막스 아시아태평양·일본(APJ) 시니어 디렉터는 4일 열린 CIO·CISO 조찬 세미나에서 오픈소스 패키지 다운로드 위험성을 경고했다.
케네스 라트남 체크막스 아시아태평양·일본(APJ) 시니어 디렉터는 4일 열린 CIO·CISO 조찬 세미나에서 오픈소스 패키지 다운로드 위험성을 경고했다.

“오픈소스 패키지는 '의존성의 의존성'이 적용됩니다. 개발자가 다운로드 받는 패키지 뒷단엔 또 다른 패키지가 깔려 있습니다. 개발자도 모르는 사이에 수많은 의존성을 갖는 다른 패키지가 함께 딸려오게 됩니다.”

케네스 라트남 체크막스 아시아태평양·일본(APJ) 시니어 디렉터는 4일 열린 CIO·CISO 조찬 세미나에서 오픈소스 패키지 다운로드 위험성을 경고했다.

개발자는 정해진 기한 내에 프로젝트 완료를 위해 손쉬운 오픈소스 패키지를 활용하는데, 패키지엔 의존성의 의존성에 의해 미처 확인하지 못한 다른 패키지도 함께 포함된다. 개발자가 자주 사용하는 'cncjs'의 경우 811개 패키지가 포함돼 있다. 악의를 가진 개발자가 오픈소스를 노리기 쉽다.

라트남 디렉터는 “최근 애플리케이션 코드 내 오픈소스 사용 비중이 90%에 육박하는 것으로 조사됐다”면서 “기업이 보안을 위해 네트워크 장비에 막대한 투자를 단행하지만, 악의적 행위자는 직접 오픈소스 패키지에 악의적 코드를 심는 등 쉬운 길을 찾아간다”고 말했다.

라트남 디렉터는 누구나 코드를 기여할 수 있는 오픈소스 프로젝트의 취약성 사례를 소개했다. 선의의 개발자인 '파이잘 살만(Faisal Salman)'이 개발한 'UAParser.js' 패키지는 러시아 지하조직에 의해 해킹됐다. 이 패키지는 일주일에 600만~800만회 다운로드를 기록할 정도로 인기가 있었다. 문제는 개발자도 모르는 코드가 패키지에 포함됐고 플랫폼 정책에 따라 다운로드 정지 권한이 살만에게 없었다는 점이다. 살만이 사회관계망서비스(SNS)를 통해 문제를 알린 지 2주가 지난 뒤에야 공식 발표가 나 후속 조치도 늦었다.

라트남 디렉터는 “어릴 적에 '모르는 사람이 주는 음식을 함부로 먹지 마라'며 엄마들이 주의를 주는데, 오늘날 개발자는 모르는 사람의 코드를 그대로 받아 쓰고 있다”면서 “기업은 문제가 발생하면 바로 대응할 수 있어야 하는데 피해 발생 후 시간이 지난 뒤에야 알게 된다”고 꼬집었다.

전자신문 주최로 4일 열린 CIO·CISO 조찬 세미나 모습
전자신문 주최로 4일 열린 CIO·CISO 조찬 세미나 모습

라트남 디렉터는 오픈소스 문제점에 대한 방안으로 자사 공급망 보안 솔루션(SCS)을 제시했다. SCS는 소프트웨어 자재 명세서(SBOM) 상태나 악성 패키지를 감시하는 타사 솔루션에서 나아가 기여자 평판, 행태 분석, 지속적인 결과 처리 등을 제공한다고 강조했다.

라트남 디렉터는 “SCS는 모르는 사람의 코드 사용은 금지하고 오픈소스 프로젝트 내 이상 활용을 파악한다”면서 “정적·동적 분석으로 코드 실행 방식을 확인하는 한편 위협 사냥 및 위협 인텔리전스 데이터베이스(DB)에 피드백을 제공한다”고 말했다.

이어 “오픈소스 패키지 취약점뿐만 아니라 악성코드까지 탐지해주며 악성 패키지 사용을 예방해 리스크는 낮추고 신속한 개발을 지원한다”고 덧붙였다.

조재학기자 2jh@etnews.com