현대의 소프트웨어, 이미 우리가 알고 있던 그 소프트웨어가 아니다

오픈소스는 현대 소프트웨어 산업을 통째로 바꿨다. 그렇기에 그에 맞는 새 보안, 새 관리 방법이 필요하다. 그리고 그 새 접근법의 핵심은 ‘오픈소스’일 수밖에 없다.

 

[보안뉴스 문정후 기자] IT와 보안 업계의 컨퍼런스 시즌이 시작되고 있다. 매년 컨퍼런스가 다가올 때마다 느끼지만 이 업계가 이렇게나 지식 공유에 열심이었나 싶어 놀라곤 한다. 컨퍼런스에는 늘 발표자가 필요하기 때문에 반쯤은 필요에 의해 강제적으로 발굴되기도 하는 것이지만, 아무튼 이런 스피커들의 발표 자료들이 모이고 나면 보안 업계 전체가 한층 윤택해지는 게 사실이다.

 

올해 RSAC 행사에서도 많은 전문가들이 놀라운 연구 결과와 통찰력을 다양한 면으로 마음껏 자랑했다. 그럼에도 눈에 띌 수밖에 없던 건 ‘오픈소스에 대한 산업 전체의 관심’이 부쩍 높아졌다는 것이다. 오픈소스는 아는 사람들끼리만 돌려서 사용하는, 그런 ‘일부 리거들만의 전유물’을 탈피한 지 오래됐다. 우리가 지금 말하는 소프트웨어가 불과 몇 년전에 말하던 소프트웨어와 전혀 다른 물건이 됐기 때문이다. 이름만 같지, 우리는 완전히 다른 것을 지칭하고 있다.

 

스스로 소프트웨어를 만드는 사람이 남아 있는가?
보안 전문가들에게 있어 소프트웨어는 끝없는 연구 대상이다. 누가 어떻게 조립하고, 실험하고, 구축하고, 배포하고, 패치하는지 알아야 보안 계획을 수립할 수 있기 때문이다. 게다가 이제 소프트웨어는 모든 산업과 기업에 반드시 있어야 할 요소다. 소프트웨어를 다루는 팀들과, 소프트웨어를 다루는 방법론은 갈수록 복잡해지고 있다. 그러면서 더 많은 소프트웨어가 더욱 빠르게 세상에 나와야만 하는 때가 됐다.

그래서 어떻게 됐나? 타겟(Target)의 데브옵스 부문 수석 국장인 제니퍼 차플류스키(Jennifer Czaplewski)는 “이제 소프트웨어를 작성하지 않고 조립하는 시대가 됐다”고 말한다. 백지를 펼쳐놓고 프로그램을 작성하는 건 현대 환경이 요구하는 속도에 부합할 수 없다. 부지런히 부품들을 모아 이리 저리 조립하는 게 훨씬 빠르다. 이건 그냥 한 사람의 의견이 아니다. 오픈소스라는 소프트웨어의 부속품들이 소프트웨어 산업에 어느 정도나 활용되고 있느냐고 조사를 하면 조사에 따라 적게는 70%, 많게는 100%까지 나온다. 이러니 오픈소스에 대해 관심을 갖지 않을 수가 없다.

이런 저런 코드를 가지고 프로그램을 조립하다 보면 ‘디펜던시(dependency)’라는 게 생겨날 수밖에 없다. 코드 하나가 자체적으로 소프트웨어의 기능을 다 구현할 수 없으니 다른 코드를 불러오고, 그 코드는 또 다른 코드를 불러오는 식으로 코드들이 서로 맞물리게 되는데, 이렇게 불러올 수밖에 없는 코드나 패키지, 라이브러리 등을 디펜던시라고 부른다. 어떤 디펜던시들은 소프트웨어의 매우 깊은 곳에 위치하고 있어 도무지 찾아낼 수가 없기도 하다. 그러면서 소프트웨어 점검이나 유지 절차에서 벗어나게 된다.

 

현재 세상에 존재하는 거의 모든 기업들이 이런 식으로 구성된 소프트웨어를 하나 이상 사용하고 있으며, 그러므로 오픈소스는 세상에 편만하게 퍼져 있다고 해도 과장이 아니다. 그렇다는 건 디펜던시 문제 역시 세상 곳곳에 잠재되어 있다는 뜻이 되고, 따라서 오픈소스를 안전하게 활용하고 관리할 방법이 어디에나 필요하다는 결론을 내릴 수 있다.

 

신뢰를 촉진하고 협업을 돕는 장치들
한 가지 기억해야 할 건 오픈소스가 단순히 IT 분야 혹은 IT 담당자들만의 문제가 아니라는 것이다. 프로그래머들만 잘 하면 될 문제도 아니고, 개발 프로세스의 문제도 아니며, 사람의 실수나 허점과 관련된 ‘인간 본연과 관련된 문제’도 아니다. 그 모든 것이다. 개발자도 잘 해야 하고, CISO와 보안 담당자들도 신경을 써야 하고, 정책을 마련하고 시행하는 책임자도 관심을 가져야 한다. 관계된 모든 사람들이 신뢰를 구축하고 협업해야 한다. 조각난 관계와 업무 구조 안에서는 오픈소스가 안전할 수 없다.

관계된 모든 사람을 효과적으로 묶을 수 있는 방법 중 하나로 ‘소프트웨어 물자표(software bill of materials, SBOM)’가 주목을 받고 있다. 2021년 5월 미국 바이든 대통령이 행정명령을 통해 소프트웨어 물자표라는 것을 언급하면서 더더욱 인기가 올라갔다. 도입도 서서히 이뤄지는 중인데 그러면서 장점들이 하나 둘 나타나고 있다. 자산에 대한 가시성이 높아지고, 그에 따라 제어와 관리도 쉬워지며, 취약점에 대한 총체적인 대응이 보다 빨라지고 있다. 소프트웨어 생애주기 관리가 전체적으로 나아지는 중이라고 볼 수 있다.

‘소프트웨어 물자표’가 꽤나 괜찮은 효과를 내고 있다는 소문이 나면서 다른 종류의 물자표들이 등장하고 있다. 데이터 물자표(DBOM), 하드웨어 물자표(HBOM), 파이프라인 물자표(PBOM), 사이버 보안 물자표(CBOM) 등이 전문가들 사이에서 한두 번씩 언급되고 있는 ‘물자표’ 시리즈라고 볼 수 있다. 물론 이것들이 완전히 정착한 것은 아니다. 시간이 지남에 따라 살아남을 건 살아남고 폐기될 건 폐기될 것이다. 중요한 건 이러한 ‘물자표 유행’이 문제에 대한 우리의 접근법을 다시 생각해 볼 계기가 되어주고 있다는 것이다.

그 외에도 여러 가지 도구들이 다양한 단체들로부터 만들어지는 중이기도 하다. 대표적으로 꼽아보면 다음과 같다.
1) 오픈소스소프트웨어보호법(Securing Open Source Software Act)
2) 소프트웨어 생성물을 위한 단계별 공급망 프레임워크(Supply chain Levels for Software Artifacts)
3) 보안소프트웨어개발프레임워크(Secure Software Development Framework)
4) 오픈소스소프트웨어 안전공급망 프레임워크(Open Source Software Secure Supply Chain Framework)
이런 도구들을 통해 우리는 오픈소스를 더 안전하게, 그러므로 더 적극적으로 활용할 수 있게 될 것이라고 IT 분야는 예상하고 있다.

오픈소스, 이미 개발자들의 좋은 친구
개발자들은 이미 자신들의 업무를 수행하는 데 있어 오픈소스에 크게 의존하고 있다. 오픈소스 없이 중요한 기능과 보안 요소들을 삽입하고, CI/CD 파이프라인을 구축할 수 있는 개발자들이 얼마나 있을까 싶을 정도다. 그것 자체가 나쁜 건 아니다. 오히려 짧은 시간에 더 많은 기능을 누릴 수 있게 해 준다는 건 분명 커다란 장점이다. [기사 더보기]
 

글 : 브리타 글레이드(Britta Glade), VP, RSA Conference

[출처] 보안뉴스 | 문정후 | globoan@boannews.com

[원문] https://www.boannews.com/media/view.asp?idx=114442