[보안뉴스 문가용] 금세기 최고의 품질대가인 에드워즈 데밍(W. Edwards Deming)은 일찍이 생산 및 공급과정 관리에 대한 규칙을 정립한 바 있다. 그런 앞서가는 규칙들이 있어 그가 최고의 품질대가라는 명성을 얻을 수 있었다. 이를 약간 바꾸면 현대 보안의 ‘지속적인 배포’와 ‘데브옵스’ 프로세스에도 훌륭하게 적용이 가능하다.

1. 한 개의 애플리케이션에 대한 소프트웨어 BOM을 만들라
BOM은 간단히 말해 ‘이 제품은 이러이러한 재료들로 구성되어 있다’라는 정보다. 애플리케이션을 구성하는 소프트웨어 목록을 만들면 애플리케이션의 구조에 대한 대략적인 가시성을 확보할 수 있게 된다. 이미 애플리케이션의 BOM을 작성해주는 서비스가 존재한다.
소프트웨어 BOM을 확보함으로써, 애플리케이션에 들어가는 ‘부품’들에 대한 정보도 얻을 수 있을 뿐 아니라 각 소프트웨어의 출처와 공급책도 알 수 있게 된다. 그밖에 얼마나 오래된 건지, 인지도는 어느 정도인지, 버전 현황은 어떻게 되는지, 알려진 관련 취약점은 무엇이 있는지도 자연스럽게 드러난다.
2. 창고에 보관된 물품의 목록을 만들라
소프트웨어 개발팀들은 이미 ‘창고 관리’를 어느 정도 하고 있다. 소프트웨어 개발이라는 것이 작은 부품들 혹은 모듈들을 활용, 재활용해 조합하는 방식으로 구성되기 때문에 ‘가지고 있는 게 무엇인지’ 파악하는 건 대단히 중요한 임무가 되었다. 이 ‘관리’는 단순히 뭐가 있는지 파악하는 것만을 말하는 게 아니다. 연식이 얼마나 되었는지, 취약점이 무엇인지, 어떤 식의 공격이 가능한지도 모두 알고 있어야 한다. 이러한 관리 프로그램 또한 존재하니, 너무 겁먹지 말 것.
3. 생산 및 공급 과정은 막힘이 없고 유연하며 자동화되어야 한다
제품을 하나하나 살피면 얼마나 좋겠느냐만, 현대의 생산량과 생산속도를 맞추려면 불가능한 이야기가 된다. 그러므로 생산 및 공급 과정에서의 정책을 꼼꼼하고 빈틈없이 정하되, 너무 엄격하고 빡빡해서 생산 단계 자체에 차질이 있지는 않을 정도로 한다. 너무 느슨하면 품질이 떨어지고, 너무 빡빡하면 사람들이 정책을 교묘히 어기기 시작한다. 그러므로 유연하고, 상황에 따라 바뀔 수도 있어야 한다. 처음 작성할 때부터 얼마든지 바뀔 수 있다는 마음가짐을 갖는 편이 좋다. 다만, 직원들이 그래서는 안 된다. 지킬 건 지켜야 한다. 잘 정해진 정책은 자동화하기도 좋다.
4. 개발자의 결정을 존중하라
소프트웨어 공급망의 최초 소비자는 다름 아니라 개발자들이다. 최근의 애플리케이션들은 소프트웨어 조각들의 배합으로 만들어진다. 80%가 그렇다. 나머지 20% 정도가 개발자들이 직접 코딩한 것들이다. 그러니 그들의 편의를 존중해야 한다. 개발자들에게 안전한 데이터를 제공하거나 어디서 그런 데이터를 구할 수 있는지 출처를 알려주어야 한다. 그것도 개발의 초기 단계에 해야 효과를 제대로 볼 수 있다. 이렇게 초기 단계에서부터 개발에 들어가는 각종 요소들의 퀄리티를 보장하면, 중간에 낯선 업무 프로세스를 삽입했을 때보다 훨씬 생산률이 높아진다. 퀄리티는 말할 것도 없다.
5. 가시성과 추적 가능성을 염두에 두라
소프트웨어의 개발 생애주기를 통틀어 수많은 요소들이 중간중간 끼어든다. 개발자들은 단계별로 주어진 임무를 완수하기 위해 상황에 맞는 툴들을 새롭게 투입시켜 작업을 진행한다. 이렇게 갑작스럽게 끼어든 요소들을 처음 기획 단계에서부터 전부 커버하기란 쉽지 않다. 그러므로 개발 상황 전반을 ‘지속적으로 모니터링’할 수 있도록 프로세스 전체의 ‘가시성’을 미리미리 확보해야 하고, 취약점 등이 발견되면 즉시 경보를 발령해야 할 수 있어야 한다. 이런 지속적인 모니터링은 문제 발생 시 추적 또한 용이하게 만든다.
글 : 데렉 윅스(Derek Weeks)
Copyrighted 2015. UBM-Tech. 117153:0515BC
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>