본문 바로가기

POST/Insight

오픈소스 보안에 대한 오해 바로잡기

 

 

 

 

오픈소스는 수십 년 동안 존재해 왔으며 현재도 NASA 및 Amazon을 포함해 다방면에서 많이 사용되고 있지만 여전히 보안에 대한 오해는 많이 남아 있습니다. 오픈소스 보안의 현주소를 살펴보고, 오픈소스의 수명, 테스트, 검증 및 기업 생존 가능성에 대한 우려를 포함한 오픈소스 위험에 대해 보편적으로 가지고 있는 몇 가지 오해들에 대해 알아보았습니다. 

 

 

- 오픈소스 소프트웨어 얼마나 안전한가요?  

 

100% 안전한 소프트웨어 시스템을 만드는 것은 사실상 불가능합니다. 컴퓨터는 믿을 수 없을 정도로 복잡한 기계이며, 설계된 프로그램의 모든 결과는 IT분야의 최고 전문가라 하더라도 전부 이해할 수 없습니다. 또한 다운로드할 수 있는 오픈소스 프로젝트가 수천 개 있다는 사실도 중요합니다. 이러한 내용을 살펴보면 모든 오픈소스 소프트웨어가 동일하게 만들어지지 않는다는 것을 알 수 있습니다. 고등학생이 지하실에서 만든 오픈소스 소프트웨어부터 세계 최대 규모 기업의 컨소시엄을 통해 개발한 오픈소스 소프트웨어까지, 소프트웨어의 품질과 보안 수준에 엄청난 차이가 있을 것이라고 생각할 수 있습니다만 오픈소스 소프트웨어가 상업용 또는 독점 소프트웨어보다 덜 안전하다고 볼 순 없습니다. 오히려 독점 소프트웨어를 사용하는 경우 보안 문제나 취약점에 대한 지식은 공급업체의 투명성에 따라 크게 달라질 수 있습니다.  

 

이러한 부분을 염두에 두고 오픈소스 소프트웨어의 품질과 보안에 련해서 IT자, 개발자, 시스템 자가 자문해 볼 수 있는 현실적인 질문은 내가 조직의 인프라에 배포하려고 하는 오픈소스 프로젝트가 모든 프로덕션에 사용된 소프트웨어에 존재하는 최소한의 보안 요구 사항이나 정책들을 충족하는가 혹은 벗어나는가?입니다. 조직에서는 조직에서는 오픈소스 소프트웨어의 보안 취약성에 대한 문제를 완화하는데 도움이 되는 오픈소스 거버넌스, 정책 도입하는 것이 좋습니다.  

 

 

오픈소스 보안에 대한 일반적인 오해  

 

오픈소스 보안에 관한 일반적인 우려 사항 중 하나는 테스트와 검증의 부족이라는 점입니다. 또한 조직에서는 오픈소스 소프트웨어의 지속성과 기업용 애플리케이션으로써 오픈소스의 적합성을 자주 언급합니다.  

 

 

오해 #1: 오픈소스 소프트웨어는 테스트받지 않는다?  

 

오픈소스 소프트웨어는 대규모 개발자 커뮤니티에서 공동으로 유지 및 개발되므로 버그와 보안 취약점이 신속하게 식별되고 수정됩니다. 또한 성숙한 오픈소스 프로젝트는 출시 전에 엄격한 테스트 프로세스를 따릅니다. Apache Foundation, Linux Foundation 또는 Cloud Native Computing Foundation (CNCF)와 같은 재단의 일부인 오픈소스 프로젝트는 소프트웨어 릴리스를 위한 최고 품질을 보장하기 위해 엄격한 프로세스와 정책을 시행합니다. 예를 들어, Apache 테스트 프로젝트는 Apache HTTP 서버용 테스트 도구 설계에 중점을 두고 있습니다.   

그러나 소프트웨어에 대한 궁극적인 테스트는 다양한 종류의 Use Case 처리하기 위한 프로덕션환경에 배포될 때 이루어집니다. 수많오픈소스 프로젝트가 수십 년 동안 전 세계 수천 개의 조직에서 많은 생산 환경에서 사용되었다는 점을 고려하면 오픈소스 프로젝트는 일반적으로 상업용 프로젝트보다 더 잘 테스트되었다고 말하고 싶습니다.   

 

 

오해 #2: 오픈소스 소프트웨어는 검증되지 않았다?  

 

WildFly와 같은 오픈소스 JEE(Java Enterprise Edition) 애플리케이션 서버는 "JEE 호환 인증"을 위해 타사 평가 프로세스를 거쳐야 합니다.  

CNCF의 Certified Kubernetes Conformance Program 통해 공급업체 자사 제품이 핵심 Kubernetes API 세트를 준수하고 다른 Kubernetes 구현과 상호 운용 가능함을 증명할있습니다. 

Linux 테스트 프로젝트는 SGI가 시작하고 IBM, Cisco, Fujitsu, SUSE, Red Hat 등이 리눅스의 성, 견고성 및 안정성을 검증하는 테스트 스위트를 오픈소스 커뮤니티에 제공하는 것을 목표로 개발 및 유지 하는 공동 프로젝트입니다.  

그러나 궁극적인 검증은 전 세계 기업의 수많은 문제를 해결하기 위해 소프트웨어가 얼마나 광범위하게 배포되는지입니다. Apache HTTP 서버는 세계에서 가장 널리 사용되는서버입니다. Chrome 웹 브라우저는 매일 수백만 명이 사용합니다. Linux는 IoT 장치와 같은 가장 작은 서버부터 세계에서 가장 빠른 슈퍼컴퓨터에 이르기까지 다양한 곳에서 발견됩니다. 이와 같은 예는 이러한 오픈소스 프로젝트가 전성기를 맞이할 준비가 되었음을 보여줍니다.  

 

 

오해 #3: 오픈소스는 유행이다?  

 

수년에 걸쳐 기업과 벤처 캐피털의 투자가 증가함에 따라 오픈소스에 대한 심이 당분간 사라지지 않을 것임은 분명합니다. 다음은 최근 몇 년간 오픈소스 소프트웨어 분야에 이루어진 주요 투자의 일부 목록입니다. 

  • 2018 IBM, Red Hat을 340억 달러에 인수(역사상 최대 규모의 소프트웨어 인수!) 
  • 2018년 마이크로소프트, 75억 달러에 GitHub 인수 
  • 2018 Salesforce, Mulesoft를 65억 달러에 인수 
  • 2019 VMWare, 27억 달러에 Pivotal 인수 
  • 2020 Progress Software, Chef를 2억 2천만 달러에 인수 
  • 2022 Snowflake, Streamlit을 8억 달러에 인수 
 

오픈소스 소프트웨어 대한 투자가 기하급수적으로 증가하고 있고 오픈소스가 수많 인프라의 핵심 부분에 사용되고 있다는 점을 고려하면 과거의 독점 방식으로 돌아갈 수는 없습니다. 

  

오해 #4: 오픈소스는 규제받지 않는다? 

 

규정 준수는 오픈소스 보안에서 큰 부분을 차지하며 기업 환경에서 미션 크리티컬 앱을 실행하는 오픈소스 기술은 일반적으로 폐쇄 소스 소프트웨어만큼 규제됩니다. 오픈소스 규정 준수와 련하여 조직은 연방에서 시행하는 내부 IT 정책과 외부 규정을 모두 적용받을 수 있습니다.   

내부 오픈소스 규정 준수 요구 사항 

  • 현재 릴리스의 최 버전 실행 
  • 단종(EOL) 소프트웨어 없음  
  • 공식적인 기술 지원  
  • 모든 오픈소스 구성 요소에 대 라이선스 적용 
 

외부 규정 준수 표준은 공급업체에서 제공하는 보안 패치를 적용하고 지원되지 않는 소프트웨어 버전을 사용하지 않는 등의 사항에 초점을 맞추는 경향이 있습니다. 또한 정부 기 위한 FedRAMP, 용 카드 거래를 위한 PSI-DSS와 같은 특정 부문 및 사용 사례에 특정한 규정뿐만 아니라 CIS벤치마크와 같은 일반적인 규정도 있습니다. 

 

 

 

Open Source Program Office 무엇입니까? 

더 많은 조직이 업무상 중요한 소프트웨어 인프라에 오픈소스 사용함에 따라 많은 기업이 조직 내에서 오픈소스 사용되는 방식을 조정하고 하는 전담 팀인 OSPO(Open Source Program Office) 만들었습니다. OSPO는 다음과 같은 작업을 처리합니다. 

  • 오픈소스 거버넌스 및 정책 개발: 조직 내에서 오픈소스 사용하는 방법에 대한 정책, 지침 및 모범 사례를 확립하고 준수합니다.  
  • SBOM(소프트웨어 명세서) 유지  : SBOM은 프로젝트에 포함된 모든 오픈소스 구성 요소종속성에 대한 목록을 제공하고 버전라이선스에 대한 정보를 제공합니다. OSPO는 알려진 취약점기타 요소를 기반으로 조직 내에서 사용해야 하는 오픈소스 버전을 지정하는 정책을 제정할있습니다.  
  • 위험  : 위험 평가를 수행하고, 취약성 데이터베이스를 모니터링하고, 이를 즉시 완화하는 프로세스를 구현하여 오픈소스 소프트웨어 구성 요소 사용과 련된 위험을 사전에 하면 보안 사고를 예방하고 발생 시 영향을 줄이는 데 도움이 될 수 있습니다. 
  • 취약성  : OSPO는 취약성 교정을 위한 프로세스를 구현합니다. 새로운 취약점이 보고되면 OSPO 팀은 SBOM을 사용하여 시스템이 영향을 받는지 속하게 확인하고 개발 팀과 협력하여 문제를 해결함으로써 노출 위험을 크게 줄일있습니다. 

 

오해 #5: 오픈소스 소프트웨어는 기업용이 아니다?  

 

인기 있는 오픈소스 프로젝트 중 다수는 대기업 내에서부터 시작되었습니다. Kubernetes는 이에 대한 완벽한 예입니다.

2015년 구글이 오픈소스 커뮤니티에 기부한 이후 2022 Cloud Native Computing Foundation의 설문 조사에 포함된 기업의 64%가 프로덕션 환경에서 Kubernetes 실행하고 있다고 보고했습니다. Linux  Apache와 같이 인기 있는 오픈소스 소프트웨어 프로젝트 중 다수는 이미 많은 기업에서 사용됩니다.  

음은 기업 내부에서 시작된  다른 주목할만한 오픈소스 소프트웨어 기술 목록입니다. 

  • 크롬 - 구글 
  • 쿠버네티스 - 구글 
  • 카산드라 - 페이스북 
  • 아파치 카프카 - 트위터 
  • 개방형 서비스 메시 - Microsoft 

또한 Netflix는 비즈니스를 운영하는 데 사용하는 많은 기술을 오픈소스 활용했습니. 

 

그러나 조직이 특정 오픈소스 패키지를 평가하여 해당 패키지가 기업에 배포하기 위한 최소 요구 사항을 충족하는지 확인하는 프로세스를 갖추는 것은 여전히 중요합니다. 핵심 요구 사항 중 하나는 "생산이 중단될 경우 이 패키지에 대해 즉시 연중무휴 기술 지원을 받을 수 있습니까?"입니다. 

 

압박감이 심한 상황에서 이에 대한 답변을 얻기 위해 커뮤니티에 의존하는 것이 최선의 선택이 아닐 수도 있습니다. 이 문제를 해결하기 위해 조직은 세계에서 가장 널리 사용되는 오픈소스 패키지에 대한 SLA 지원을 위해 오픈소스 전문 케어 컨설팅 업체와 제휴할 수 있습니다. 이를 통해 추가 개발자를 고용하는데 드는 내부 비용을 추가 부담하지 않고도 오픈소스 소프트웨어에 내재된 모든 이점을 활용할 수 있습니다. 

 

OSC코리아는 국내 40여 개 기업을 대상으로 오픈소스 기반의 데브옵스(DevOps), 다양한 MSA아키텍처 구축 및 유지보수 실무 경험을 갖춘 전문 인력을 통해 오픈소스 기술 지원 서비스인 오픈소스케어팩(OSS케어팩)과 OpenMSA컨설팅 서비스 등을 제공하고 있습니다. OSS케어팩 서비스를 통해 보다 나은 업무 환경을 구현하실 수 있습니다. 

 

 

🔍OSS케어팩 톺아보기🔍

 

 

✅OSS케어팩 서비스 문의 

E: sales@osckorea.com

T: 02-539-3690 

 

 

 

자료 출처 및 참고)