IT 관리 / 개발자 / 보안

글로벌 칼럼 | 믿었던 '오픈소스 라이브러리'에 뒷통수 맞는다

Lucian Constantin | IDG News Service 2015.01.02

서드파티 소프트웨어 라이브러리의 결함이 제품의 하자로 이어지는 경우가 많다. 이는 개발자와 시스템 관리자에게는 큰 문제가 될 수도 있다.

애자일 소프트웨어 개발과 제품 출시 주기가 짧아짐에 따라 서드파티 라이브러리와 컴포넌트로 작업하는 개발자가 증가하는 추세다. 개발자가 활용하는 많은 라이브러리는 장기간 추진된 오프소스 프로젝트로부터 만들어진 ‘산물’이기 때문이다. 장기간에 걸쳐 보수된 만큼 개발자들은 당연히 이들 라이브러리의 품질이 우수하고, 버그도 없을 것으로 생각한다. 하지만 이는 잘못된 생각이다.

지난 2014년 하트블리드(Heartbleed), 셸쇼크(Shellshock), 푸들(POODLE) 결함으로 촉발된 대규모 패칭 배포는 서드파티가 제공하는 소스 코드에 중대한 취약점이 있음을 시사한다. 이런 결함은 서버와 데스크톱 컴퓨터, 모바일 기기, 하드웨어 어플라이언스에서 실행되는 소프트웨어를 통해 수백만의 소비자와 기업에 영향을 미쳤다.

이처럼 비교적 규모가 큰 사고로 인해 잘 알려진 취약점 외에도 숨겨진 ‘폭탄’은 많다. OpenSSL, LibTIFF, Libpng, OpenJPEG, FFmpeg, Libav 등 많은 라이브러리에서 앞서 언급한 비슷한 결함이 발견됐다. 오랜 시간에 걸쳐 다수의 제품에 반영된 라이브러리들이다.

최종 버전의 제품에서 버그가 발견된 이유 가운데 하나는 개발자들의 잘못된 통념 때문이다. 개발자들은 많은 이들이 사용하고 있다는 이유로 서드파티 코드가 안전하다고 믿고, 이를 개발에 십분 활용해왔다.

버그와 관련된 통념
취약점 추적 전문 회사인 리스크드 베이스드 시큐리티(Risk Based Security)의 CISO 인 제이크 쿤즈는 "누구나 검토를 할 수 있고, 취약점을 없앨 '눈'이 많아서 오픈소스는 안전하다고 여기는 통념이 존재한다. 그러나 현실은 다르다. 누구나 코드를 확인할 수 있지만, 누구나 이를 실천하는 것은 아니다. 또 이 때문에 누구도 품질을 책임지지 않는 경향이 있다. 다시 말해, 개발자와 기업은 서드파티 라이브러리를 사용하면서 자신의 자원을 투자해 보안을 점검하지 않는다. 다른 사람이 개발한 코드이기 때문이다. 모든 사람이 다른 누군가가 취약점을 발견할 것이며, 완성된 코드는 안전하다고 생각한다"고 지적했다.

재원과 인력 투자가 미흡한 오픈 소스 프로젝트가 많은 것이 현실이다. 심지어는 인터넷 인프라에 중요한 코드와 관련된 프로젝트도 마찬가지이다. 전문적인 코드 감사에 필요한 자원이 투자되지 않는다. 구식 코드를 개선하기 위한 인력 투자도 마찬가지이다.

OpenSSL이 대표적인 사례이다. 이 밖에도 많은 사례가 있다. 지난 4월 하트블리드 버그가 공개된 이후, OpenSSL 프로젝트에 투입된 풀타임 개발자는 단 한 명뿐이었다는 사실도 알려졌다. 또 OpenSSL은 계약에 바탕을 둔 프로젝트로, 전담 개발자 이외의 팀원들은 SSL/TLS 전문가가 필요한 회사들을 위해 남는 시간에 작업했다.

OpenBSD 개발자들은 OpenSSL이 소수만 중시하는 플랫폼의 구식 코드를 적용했으며, 이에 더 깨끗한 LibreSSL를 파생시키기로 했다고 비판을 했다.

리스크 베이스드 시큐리티의 최고 연구 책임자인 카스텐 에이람자에 따르면, 구식 코드, 성숙기에 접어들지 못한 코드, 미흡한 감사 또는 퍼징(애플리케이션에 자동으로 무작위 인풋을 피딩 해 취약점을 찾는 프로세스), 소수의 유지보수 관리자 등이 오픈소스 라이브러리의 결함을 초래하는 요인들이다. 에이람은 "최신 버전의 퍼저(Fuzzer)를 실행시키는 것만으로도 많은 취약점을 발견할 수 있다. 이는 문제의 라이브러리를 이용하는 기업이나 유지보수 관리자 스스로가 처리할 수 있는 작업들이다. 소프트웨어 업체들은 이들 라이브러리를 신속하게 제품에 반영한다. 그러나 감사나 퍼징을 하는 경우는 아주 드물다"고 말했다.

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.