Offcanvas

How To / 개발자 / 데브옵스 / 보안 / 비즈니스|경제 / 애플리케이션

린 개발이 SW 보안을 개선… 어떻게?

2018.04.27 Terena Bell  |  CSO
릴리즈(Release) 사이클을 203일에서 100일로 줄이면서 보안을 강화하고 싶나? 미국 국책 주택담보금융공사인 패니메(Fannie Mae)가 해냈다. 개발 서비스 부사장 마이클 가르시아는 낭비를 최소화하면서 고객 가치 극대화에 초점을 둔 품질 개선 철학인 린(Lean)을 높이 평가했다. 이는 일반적으로 제조사와 관련 있는 전략이다. 패니메는 위젯을 만들지 않으며 사용자도 그럴 필요가 없다. 린 정신은 어디에든 적용할 수 있다.



린 사고는 관리의 초점을 기술과 부서 전반으로 이동하여 고객에 제품이나 서비스를 제공하는 비즈니스의 모든 가치 스트림을 최적화한다. 쉽게 말해서 이미 보유하고 있는 것을 더욱 잘 활용하는 방법을 찾아낸다. 정보 보안을 포함한 모든 비즈니스 부서는 더 나은 성과를 원할 것이다. 가르시아는 "결국, 기술팀은 조직에 서비스를 제공하기 위해 존재하며 우리는 안전한 방식으로 이를 수행해야 한다"고 말했다(그는 인터뷰를 진행한지 얼마 되지 않아 패니메를 떠나 다른 금융 서비스 기업으로 옮겼다). 보안은 본질적으로 고객 가치를 제공하며 이미 성과가 얼마나 높은지에 상관없이 항상 개선할 수 있다.

연속 개선 모델 선택하기
최적화가 린 또는 카이젠(Kaizen)이나 식스시그마 등의 경쟁 시스템의 결과인지에 상관없이 보안을 양보하지 않고 더 짧은 개발 사이클을 원한다면 일정 유형의 연속 개설 모델을 사용해야 한다. 그는 결과를 약속했다. 린은 패니메의 사이클을 절반으로 줄여줄 뿐 아니라 해당 기업은 현재 더 많은 코드를 개발하고 있다. 가르시아는 "같은 기간에 품질이 50% 개선되었다"고 강조했다. 패니메는 2013년부터 린을 사용하기 시작했지만 그렇게 하지 않았다면 "우리가 지금 제공하는 것을 제공하기 위해 수억 달러를 추가로 지출해야 했을 것이다"고 그는 덧붙였다.

가르시아에게는 전적으로 유리해 보인다. 특히, 그가 합류했을 때는 이미 패니메의 CEO가 이 접근방식을 지원하고 있었다. 그는 도입이 하향식으로 결정되었으며 모든 부서에 의무적이라고 말했다. 변화를 유도하는 CEO가 없다면 어떻게 팀을 위해 적절한 개선 방법론을 이행할 수 있을까?

가르시아는 "애자일을 도입하고 부채-손실을 도입하고 뛰어난 운영성을 도입하라"고 출발점을 제시했다. 대부분 품질 모델은 최적화를 이런 단계로 나눈다. <린 사고(Lean Thinking)(Simon & Schuster, 2003)>에서 저자인 짐 워맥과 댄 존스는 목적, 과정, 사람 등 3가지 영역에서 변화에 집중하라고 권고했다.

어떤 기업에서는 조직 구조의 재정비를 의미할 수도 있다. 개발팀과 보안팀이 얼마나 즉각적으로 소통할 수 있나? 단순히 서로 슬랙을 사용하거나 부서 간 협업을 위해 모든 채널에서 승인받고 사전에 계획한 테이블에 앉아서 진행하는 회의가 필요할까? 소통 과정을 간소화하면 사람들의 시간이 절약되기 때문에 업무의 진정한 목적을 되찾을 수 있다.

린 정신: 처음부터 안전한 코드 개발하기
일단 3가지 영역의 낭비를 줄이는 방법부터 찾아볼 수 있다. 그 이상을 원하는 사람들을 위해 LEI(Lean Enterprise Institute)와 ASQ(American Society for Quality)가 교육을 제공한다. 하지만 린 사고를 위한 확고한 지침이 없다. 전적으로 따를 규칙이나 로드맵이 없다. 이 때문에 일부 보안 책임자들이 싫어할 수도 있다. 린은 과정이 아니다. 이것은 정신이다.

규칙이 없을 때의 장점은 팀들이 더욱 민첩해지기 위해 자신만의 방법을 찾을 수 있다는 점이다. 린 문화에는 자기 효율과 자기 개선이 내재되어 있다. 가르시아는 "아이러니하게도 실제로 [정신적으로] 반듯해지면 성과를 낼 수 있고 더욱 빠르게 통합할 수 있다는 점이 흥미롭다"고 말했다.

그는 새로운 코드가 처음부터 더욱 안전하게 설계된다고 설명했다. "왜냐하면 더 조금씩 늘리면서 제공하고 신속하게 시험하기 때문이다. 항상 시험하고 이에 전념하게 된다." 더 작은 푸시는 해결이 더 쉽고 엔지니어들은 이런 반복된 해결을 통해 더욱 즉각적으로 학습할 수 있다. 통합된 소통은 보안 부문에서 사전에 취약성을 파악하는 데 도움이 된다.

식스시그마: 더욱 구조화된 접근방식
하지만 더욱 명확한 파라미터를 선호하는 사람들은 최적화를 정의, 측정, 분석, 개선, 관리 등의 5단계로 나누는 상표화된 과정인 식스시그마가 있다. 너무 많은 것을 기억해야 한다는 생각이 든다면 약어인 DMAIC만 기억하면 된다. 심지어 지도도 제공된다

식스시그마의 경우 코드 기반이 개발 중인 상태에서 더욱 안전하기를 원한다면 이런 단계를 순서대로 따라야 한다.

1. 문제 정의: 개발은 안전하지 않은 코드를 작성하는 것이다.
2. 성과 측정 또는 정량화: 해킹하기 쉬운 줄이 있는가? 아니면 푸시 전체가 나쁜가?
3. 문제의 기저 원인을 판단하기 위한 분석: 개발부서에서는 작성하고 있는 것이 취약하다는 사실을 모를까? 아니면 관심이 없을까?
4. 주소 개선 또는 원인 제거
5. 관리는 재발을 방지하는 방법을 찾는다.

패니메가 식스시그마 대신 린을 선택한 이유
패니메의 경우 식스시그마는 단계가 너무 많다. 100일 개발 사이클은 대형 프로젝트만을 위한 것이었다. 가르시아는 "많은 경우에 [린이] 훨씬 빠르다. 나는 기본적으로 기술 부문에서 민첩한 데브옵스 혁신 제공을 담당하고 있으며 우리는 린 혁신과 관련하여 비즈니스 부문과 긴밀하게 협력했다"고 말했다. 그는 “패니메가 모기지 산업을 지원하기 때문이다. 우리는 과거의 집중적인 관리 분배를 살펴보고 이것을 우리의 기술에 통합하여 자동화되고 더 빠르며 신뢰할 수 있도록 해야 했다"고 설명했다. 린은 그들에게 적합했으며 그는 "결과로 알 수 있다"고 밝혔다.

팀 간의 소통 개선 외에 가르시아는 린을 통해 패니메가 SDLC(System Development Life Cycle)의 체크포인트 수를 줄일 수 있었다고 말하면서 "더욱 안전하고 자동화된 관리"라고 덧붙였다. 또한 그는 그들이 "사람들이 의사를 결정하는 방법을 고려하는 위험 수용 과정"을 개발했다고 말하면서 "사람들은 항상 무엇인가를 확인하고 위험 결정을 내린다"고 설명했다.

완전한 기능을 갖춘 시스템이 야심차게 들린다면 잠재적인 결정의 교환을 측정하기 위해 비용 대비 확률을 판단하는 베이즈(Bayesian) 결정 이론도 있다. 최소한 가장 최적화된 옵션을 선택하는 데 도움이 될 수 있다. 가르시아는 "베이즈 의사 결정을 보면 이런 느낌이다. 그래 당신이 옳다. 그 과정에는 공백이 있지만 75년 동안 아무런 문제가 없었고 아직도 문제가 없다... 사람들이 의사 결정 방법을 고려하는 위험 수용 과정이 있어야 한다"고 이야기했다.

누가 알겠는가? 경영진이 팀의 급격한 개선을 보고 보안을 더욱 진지하게 고려하도록 도와줄 수 있다. 가르시아는 "팀 혁신과 우리의 업무 방식에서 발견한 것은 기본적으로 이런 신뢰 기반을 확보하여 팀들이 협력할 때 그 과정을 투입하는 것이다. 그러면 보안 인력이 확보되고 인프라 인력이 확보되며 변호사도 확보되고 비즈니스 인력도 확보된다. 모두가 한 가지, 즉 고객에 초점을 둔 방식으로 이런 문제를 살펴보게 된다"고 전했다. 낭비를 줄이고 고객들이 받는 보안을 개선할 수 있다면 비즈니스 가치를 부정할 수 없게 된다. ciokr@idg.co.kr
 
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

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

Copyright © 2024 International Data Group. All rights reserved.