메인메뉴로 이동 본문으로 이동

컨텐츠 내용

  1. 고객센터
  2. OSS뉴스

OSS뉴스

OSS뉴스 조회 페이지
리눅스 재단과 하버드 대학, 널리 사용되는 오픈소스 조사했더니 관리자 / 2020.02.24

리눅스 재단과 하버드 대학, 널리 사용되는 오픈소스 조사했더니

 

기업 환경에서 사용되는 앱의 80~90%, 무료 및 오픈소스 소프트웨어 포함하고 있어
이름을 짓는 방법과 유지보수에 대한 체계 전혀 잡혀있지 않아...공격자들만 좋은 상황

 

리눅스 재단(Linux Foundation)과 하버드대학의 혁신과학연구소(Laboratory for Innovation Science)가 현재 기업 환경에서 가장 널리 사용되고 있는 무료 및 오픈소스 소프트웨어를 다량으로 분석한 결과 보고서를 발표했다.

 

보고서에서 두 연구 단체는 제일 먼저 “무료 및 오픈소스 소프트웨어 요소들 사이에는 표준 네이밍 규칙이 없어 취약하거나 의심되는 부분들을 정확하고 빠르게 파악하는 데 어려움이 생기고 있다”고 지적했다. 또한 오픈소스 커뮤니티에서 활동하고, 실제 여러 프로젝트에 참여하는 개발자들이 계정 보호를 제대로 하지 않아 발생하는 사고도 대단히 많다고 밝혔다.

“무료 및 오픈소스 소프트웨어 요소들에는 대단히 오래된 패키지들이 포함되어 있는 경우가 많습니다. 이 패키지들도 위험합니다. 시간이 흐를수록 위험해지는, 시한폭탄과 같은 것이죠. 개발된 지 오래돼서 지원이 끝난 OS나 소프트웨어가 위험한 것과 동일한 원리입니다.”

하버드 비즈니스스쿨의 교수이자 이번 연구에 참여한 프랭크 네이글(Frank Nagle)은 “오픈소스 및 무료 소프트웨어 요소들은 현대 사회에서 사용되고 있는 거의 모든 소프트웨어에 포함되어 있다”며, “그러니 더 깊은 이해도가 있어야 마땅하지만, 사실 우리는 타성에 젖어 익숙하게 사용할 뿐 정체를 잘 모르고 있다”고 지적했다. “게다가 오픈소스 관리 인프라라는 것도 사실상 존재하지 않는 것이나 다름이 없죠.”

이번 연구에는 두 가지 목표가 있었다.
1) 무료 및 오픈소스 소프트웨어(Free and Open Source Software, FOSS)가 기업 내에서 어느 정도로 광범위하게 활용되고 있는지 파악한다
2) FOSS 요소들을 사용할 때의 위험성과 위험 요소들을 구체적으로 파악한다
그리고 현재 기업 환경에서 사용되는 애플리케이션의 80~90%가 FOSS 요소들로 이뤄져 있다는 충격적인 결과가 나왔다고 한다. 보안 점검 및 관리가 이뤄지지 않는 요소들도 대단히 많았다.

광범위하게 사용되지만 관리와 유지보수에 참여하는 개발자가 적은 FOSS의 경우 특히 취약점이 오랜 시간 남아있을 확률이 높은 것으로 나타났다. 오픈SSL(OpenSSL)이 대표적인 사례였다.

보고서를 통해 연구원들은 “FOSS 관리는 정부, 전문가, 조직들이 함께 진행해야 한다”고 촉구하기도 했다. “오픈소스 소프트웨어를 대상으로 한 감사, 버그바운티, 해커톤, 컨퍼런스를 고루 진행해 다각도적인 접근을 해야 하죠. 무엇보다 현재 FOSS 요소가 어느 정도로 활용되고 있는지 정확히 파악하는 것부터 실시해야 합니다. 보안 스캔을 하든, 코드 감사를 하든, FOSS 재료표를 대대적으로 완성시키든 해서 말이죠.”

한편 이번 연구를 통해 기업 내에서 가장 많이 활용되는 FOSS 패키지 10개가 다음과 같이 꼽히기도 했다.
1) async
2) inherts
3) isarray
4) kindof
5) lodash
6) minimist
7) natives
8) qs
9) readable-stream
10) string-decoder

비(非)자바스크립트 패키지들 중 가장 많이 사용되는 FOSS는 다음과 같았다.
1) com.fasterxml.jackson.core:jackson-core
2) com.fasterxml.jackson.core:Jackson-databind
3) com.google.guava:guava
4) commons-codec

그런데 가장 많이 사용되는 오픈소스 소프트웨어 프로젝트 10개 중 7개가 개인 개발자 계정에 호스팅 되어 있었다. 개인 계정이기 때문에 기업에서 운영하는 계정보다 보안 장치가 적을 수밖에 없었다. 이에 연구자들은 보고서를 통해 “개인이 관리했을 때 코드를 변경하고 업데이트하는 작업 자체는 훨씬 간단해지지만, 오히려 그러한 특성 때문에 악성 행위가 눈에 띄지 않을 수 있다”고 짚었다.

공격자들도 이를 잘 알고 있는 모양이다. 왜냐하면 “이러한 개인 개발자의 계정을 노리는 사이버 공격이 증가하고 있기 때문”이다. “공격자들은 계정 접근 권한을 탈취한 뒤, 백도어 등의 악성 코드를 덧붙입니다. 오픈소스 소프트웨어는 그렇게 오염이 된 채 퍼지고, 공격자들은 수많은 조직들에 접근할 수 있게 됩니다. 오픈소스를 관리하는 개발자들은 자신의 계정에 최소한 이중 인증 정도는 적용해야 합니다.”

심지어 불화나 충돌이 일어났을 때 홧김에 오픈소스가 호스팅된 계정이나 코드 자체를 삭제하는 경우도 있다고 한다. 이 역시 커다란 위험이 될 수 있다고 연구원들은 경고했다. “그렇기 때문에 자주 사용되는 FOSS는 조직적이 관리가 이뤄져야 합니다. 그래야 보안성과 안전성만이 아니라 가용성도 지킬 수 있습니다.”

위에서 언급된 ‘네이밍 규칙’도 문제다. “네이밍에 대한 표준 규칙이 정립된 바가 없습니다. 그러니 아무나 아무 이름을 붙이고, 그걸 또 여러 개발자들이 퍼가죠. 그래서 같은 FOSS인데 여러 이름으로 유통되거나, 여러 버전이 존재해 관리가 힘들어지기도 합니다. 전혀 다른 FOSS가 비슷한 이름으로 돌아다녀 혼동을 유발하기도 하고요.”

 

[출처] https://www.boannews.com/media/view.asp?idx=86518 (보안뉴스)