Home > 전체기사

눈덩이처럼 불어나는 소프트웨어 디펜던시 문제, 물자표 제도 필요해

  |  입력 : 2021-04-15 14:37
페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기
이제 오픈소스 없이는 소프트웨어를 만드는 게 불가능할 정도가 되었다. 그렇다고 오픈소스를 하나하나 추적해 취약점을 해결한다는 것에도 한계가 있다. 어쩌면 소프트웨어 유통 구조 자체를 변경해야 할지도 모른다.

[보안뉴스 문가용 기자] 소프트웨어 애플리케이들은 평균 500개가 넘는 오픈소스 라이브러리들을 탑재하고 있다고 한다. 2년 전만 해도 298개였으니, 짧은 기간 동안 디펜던시가 77%나 올라갔다는 소리가 된다. 그렇다는 건 소프트웨어를 구성하는 요소들을 하나하나 점검한다는 것이 점점 더 어려워진다는 뜻도 된다. 이러한 내용을 보안 업체 시놉시스(Synopsys)가 발표했다.

[이미지 = Pixabay]


시놉시스의 발표 자료에 의하면 애플리케이션의 98%에서 오픈소스 요소들이 최소 1개 이상 발견되고 있으며, 애플리케이션 코드의 평균 75%가 오픈소스 라이브러리에서 따온 것들이라고 한다. 디펜던시가 광범위해지고 있다는 건데, 그래서 그런지 애플리케이션의 84%에서 최소 한 개 이상의 취약점이 존재한다고 한다. 참고로 한 애플리케이션에 있는 취약점의 개수는 평균 158개였다.

시놉시스의 수석 보안 전략가인 팀 맥키(Tim Mackey)는 “결국 현대 소프트웨어들에는 전부 디펜던시 문제가 있다는 것”이라고 요약한다. “그렇다고 디펜던시를 낮추는 흐름으로 역행할 수는 없습니다. 결국 소프트웨어를 구성하고 있는 수많은 요소들에서 취약점을 찾아내 패치할 수 있는 방안을 마련해야 하겠지요. 지금은 이 부분을 전혀 제대로 하고 있지 못하고, 심지어 고민도 별로 없는 상태입니다. 시장에 계속해서 구멍 난 소프트웨어들만 나오게 될 겁니다.”

오픈소스 디펜던시 문제는 현대 IT 생태계에서 점점 더 심각한 것이 되어 가고 있다. 특별히 자바스크립트 애플리케이션 프레임워크와 관련된 것들에서 그 심각성이 도드라지게 나타나는 중이다. 자바스크립트라는 언어 자체가 가진 특유의 구조 때문이다.

지난 해 활발히 활용되고 있는 4만 5천여 개의 리포지터리들을 분석했을 때 자바스크립트 기반 애플리케이션들은 평균 10개의 직접 디펜던시들을 보유하고 있었다. 하지만 이 10개의 디펜던시들 역시 다른 디펜던시들과 연결되어 있어 결국 한 개 애플리케이션이 700개에 달하는 디펜던시와 엮여 있음이 조사되기도 했었다. PHP 애플리케이션들은 평균 70개, 루비 애플리케이션들은 평균 68개의 디펜던시들을 보유하고 있다는 것을 생각해 보면 자바스크립트의 심각성을 알 수 있다.

“오픈소스 취약점 문제를 해결하려면 제일 먼저 ‘오픈소스에 취약점들이 존재한다’는 것부터 인지해야 합니다. 하지만 많은 조직들에서 개발을 진행하면서 이 부분을 간과하거나 무시하고 있습니다. ‘오픈소스도 취약하다’는 걸 인지하게 되면, 자신이 사용하고 있는 오픈소스 요소의 취약점을 찾아내 해결하고 싶어질 겁니다.” 시놉시스의 설명이다.

오픈소스 요소들에서 나타나는 취약점들 중 이미 발견된 지 오래된 것들도 상당한 비중을 차지하고 있다고 시놉시스는 지적했다. 오픈소스에서 가장 빈번하게 나타나는 고위험군 취약점 10개 중 2020년에 발견된 건 2개 뿐이었다. 2019년에 발견된 취약점은 1개, 2018년에 발견된 것이 3개, 나머지는 다 그 전에 발견된 것들이었다.

맥키는 “디펜던시 문제가 까다로운 이유는, 디펜던시가 또 다른 디펜던시를, 그 디펜던시가 또 다른 디펜던시와 엮여 있어 취약점 추적이 대단히 길어질 수 있기 때문”이라고 설명한다. “단순 취약점 스캔만으로는 가장 직접적인 오픈소스 요소들까지만 점검할 수 있습니다. 그 뒤에 길게 이어진 디펜던시의 사슬들까지 다 보지 못합니다.”

그렇기 때문에 취약점을 최소 한 개라도 가진 애플리케이션들이 전체 애플리케이션의 84%를 차지하고 있다는 결과가 나온다고 시놉시스는 설명한다. 산업별로 봤을 때 마케팅 기술 분야에서 가장 많은 취약점이 발견됐다. 감사를 거친 애플리케이션들 중 95%가 취약한 오픈소스를 사용하고 있었던 것이다. 에너지, 도소매, 전자상거래, 의료, 사물인터넷 제조 등이 65~80%를 기록하며 마케팅 기술 분야의 뒤를 이었다.

이러한 문제를 어떻게 해결해야 할까? “오픈소스를 사용하는 기업들이 모든 디펜던시들을 추적해 하나하나 점검할 수 있습니다. 하지만 소프트웨어 구조가 대단히 복잡하다면 꽤나 비효율적인 방법이 되겠지요. 아마 불가능한 경우도 있을 겁니다. 또한 취약점이 발견된다 하더라도 패치를 금방 구할 수 없어 대체품을 찾느라 다시 발품을 팔아야 할 수도 있습니다. 오픈소스 요소들을 꼼꼼하게 점검하라고 권고하긴 하지만, 노력한 만큼의 성과가 나오지 않을 수 있는 상황이라는 겁니다.”

그래서 맥키는 “결국 오픈소스 커뮤니티 및 개발 관리 책임자가 능동적으로 취약점 관리를 하고 패치를 내야 하는 문제에 봉착하게 된다”며 “소프트웨어 생태계에서도 물자표(BOM) 체계가 도입되어야 한다”고 주장한다. 물자표란 어떤 제품을 생산하는 데 있어 소요된 부품의 양을 나타내는 문건이다. “오픈소스의 활용도가 높아지면 높아질수록 생태계 구조가 바뀌어야 할 겁니다. 각 소프트웨어가 어떤 요소들로 구성되어 있는지 표기하는 걸 필수로 할 필요도 있어 보입니다.”

3줄 요약
1. 오픈소스에 대한 의존도, 갈수록 높아지고 있어 오픈소스 없이 소프트웨어 개발도 불가능한 상황.
2. 그런데 이 오픈소스에 있는 취약점은 간과되고 있는 상황.
3. 소프트웨어를 구성하는 요소들을 표시하는 ‘물자표’ 제도가 필요하다는 주장이 나오고 있음.

[국제부 문가용 기자(globoan@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>

  •  
  • 0
  • 페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기

  •  SNS에서도 보안뉴스를 받아보세요!! 
파워비즈배너 시작 11월6일 20181105-20200131위즈디엔에스 2018
설문조사
보안전문 기자들이 뽑은 2022년 보안 핫키워드 10개 가운데 가장 주목되는 키워드는?
다크웹의 대중화 추세, 사이버범죄의 확산을 이끌다
월패드 등 가정집 노리는 해킹, IoT 보안의 패러다임을 바꿔라
클라우드 확산에 따른 보안 위협, 이제부터가 진짜 시작
전략의 혁신으로 중흥기 맞은 랜섬웨어
분산 네트워크와 제로트러스트의 대두
대선·올림픽·월드컵 등 대형 이벤트 노린 사이버공격 대응
메타버스·NFT 등 가상세계 플랫폼 확산과 보안위협
수술실·지하철·요양원까지... CCTV 의무 설치 확대
중대재해처벌법 시행에 따른 안전과 보안장비의 융합
비대면 트렌드에 따른 인증수단 다양화와 보안 강화