Home > 전체기사
개발과 보안 담당자들의 ‘페이스오프’ 진행한 세일즈포스의 경험담
  |  입력 : 2020-08-07 11:53
페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기
세일즈포스, 개발 팀원을 보안 팀에 보내고 보안 팀원을 개발 팀에 보내
냉정한 우선순위 결정과 안전한 점검 회의가 인상 깊어...개발자의 말 들어줘야


[보안뉴스 문가용 기자] 보안 엔지니어링 팀과 소프트웨어 엔지니어링 팀은 서로로부터 배울 것이 많다. 그래서 세일즈포스(Salesforce)에서는 두 팀을 완전히 바꿔놓는 모험을 감행했다. 그 기간 동안 배운 것은 무엇이었을까? 세일즈포스는 양 팀의 직원들을 이번 주 열린 블랙햇 행사로 보내 경험담을 나누게 했다.

[이미지 = utoimage]


먼저 세일즈포스의 수석 보안 엔지니어였던 크레이그 인그램(Craig Ingram)은 ‘런타임 팀’에 들어가게 되었다. 수석 인프라 엔지니어였던 카밀 맥키논(Camile Mackinnon)은 ‘플랫폼 보안 평가 팀’에 들어갔다. 이 둘은 “서로의 역할을 바꾼 기간 동안 배운 것들”을 블랙햇에서 허심탄회하게 나누었다.

먼저 인그램은 “런타임 팀에 있는 동안 기획과 우선순위 확립에 대해 가장 크게 배웠다”고 정리한다. “개발팀의 엔지니어들은 수많은 임무들을 펼쳐 놓고 ‘어느 것부터 해결해야 하는가’를 끝없이 살피고 검토하더군요. 사업상 새로운 기능도 만들고, 동시에 버그도 해결하고, 서비스 속도를 높여야 하니까 말이죠. 이걸 상황과 맥락에 따라 날카롭게 판단하고 결정하는 게 얼마나 중요한지 알 수 있었습니다.”

인그램이 개발자들의 업무 환경에 대해 몰랐던 것은 아니라고 한다. “저만해도 보안 팀에 있으면서 엔지니어들에게 전화를 걸고 협조를 요청한 게 한두 번이 아닙니다. 그런데 진짜 개발 팀에 있어보니까, 정말 쉬지 않고 요청이 오더군요. 일을 진행해야 하는데, 맥이 뚝뚝 끊겨요. 개발 팀에 일이 몰리겠다고 짐작하는 것과, 그 현장에서 내 할 일을 잘 해나가는 것은 완전히 다른 일이었습니다. 모든 걸 다 할 수 없다는 걸 절실히 깨달았고, 따라서 할 일들을 잘게 쪼개서 부지런히 해나가는 걸 익힐 수밖에 없었습니다.”

인그램은 그것이 바로 개발자들의 확장 방법이었다고 말한다. “거대한 임무를 잘게 쪼개는 게 그들의 확장 방법이었어요. 그래서 그런지 ‘목표 및 핵심 결과 지표(objectives and key results, OKR)’를 활용해 어떤 일이 당장 성취되어야 하고, 어떤 목표를 장기적으로 이뤄내야 하는지 능숙하게 결정하더라고요. 개발자들답게 측정 가능한 구체적인 방법으로 프로젝트를 나누고 평가하더군요. 때문에 소통도 쉬웠고 정확했습니다. 우선순의를 정하는 데 있어서는 무자비한 것도 인상 깊었습니다.”

그러면서 인그램은 “보안 담당자들도 이런 점은 분명히 배워야 한다”고 강조했다. “업무가 밀려오는 일은 보안 담당자들도 똑같이 경험합니다. 그런데 이게 ‘안전’과 관련되어 있다 보니 거절을 못해요. 좀 더 객관적으로, 그리고 냉정하게 먼저 해야 할 일을 정할 수 있어야 한다는 걸 깨달았습니다. 그런 의미에서 ‘테스트 주도 개발(test-driven development, TDD)’이 보안 담당자에게 필요한 것이 아닐까 하는 생각이 들었습니다.”

무슨 말일까? “소프트웨어 개발자들은 코드를 작성하고 실험해 봐요. 돌아가는지 안 돌아가는지 확인하면서 일을 진행시키죠. 보안 팀도 그렇게 할 수 있어야 한다고 생각합니다. 보안에 초점을 맞춰 소프트웨어를 계속해서 실험하고 기록함으로써 개발 팀을 도우면 상부상조가 되는 것이죠. 서로 같은 언어로 같은 상황을 끊임없이 공유할 수 있는 것입니다.”

런타임 팀에서 겪었던 또 다른 장점은 ‘점검 회의’라고 한다. “개발 팀원들은 1주일에 한 번씩 자신들의 성과를 점검하는 회의를 하더군요. 어떤 것이 잘 진행되고 있고, 어떤 것이 잘 안 되고 있는지 안전하고 편안한 환경에서 나누더라고요. 그러면서 어떤 것을 계속해야 하고, 어떤 부분이 고쳐져야 하며, 어떤 부분을 향상시킬지가 자연스럽게 이야기 되고요. 처음 계획을 끝까지 다 지키려면 중간 중간에 확인하는 시간이 필요하다는 걸 깨달았습니다.”

이는 보안 팀들의 업무에도 적용이 될 만한 부분이다. 예를 들어 2주에 한 번씩 지난 행적들을 점검하는 시간을 갖는 것이다. “2주 동안 뭔가를 시도해봤는데, 그것이 효과를 발휘하고 있는지, 보안 팀으로서 사업 진행과 변화에 뒤쳐져 있는 건 아닌지, 안전에 대한 고객들의 기대치가 변했는지, 확인해야 하겠죠. 그리고 이 회의 시간 자체가 ‘안전해야’ 합니다. 인민재판 분위기가 나면 누가 솔직하게 일의 진행 상황을 나누겠어요? 점검 회의는 범인 찾기 시간이 아닙니다. 이게 정말 중요해요. 이걸 기억해야 회의 시간이 생산적으로 변해요.”

한편 플랫폼 보안 평가 팀에 배치된 맥키논의 경우 엔지니어들의 말과 의견을 적극 구하는 것의 중요성을 깨달았다고 한다. “개발 팀은 생산 기획 팀과 사용자 연구 전문 팀으로부터 의견을 받습니다. 고객과의 면담도 하고요. 왜 그럴까요? 바로 그들의 필요를 아는 것이 생산의 초석이 되기 때문입니다. 보안 팀도 이런 식의 접근이 필요해 보입니다. 사용자의 필요를 파악한다는 게 보안에는 좀 낯선 개념이더라고요. 분야의 특성상 그럴 수 있습니다만, 보안 팀 내부의 의견만으로 전체 조직에 영향을 주는 프로젝트를 결정하고 진행할 수는 없습니다. 보안 솔루션과 정책의 사용자들의 의견을 찾아 듣고 이걸 반영할 필요가 있습니다. 그러한 고민이 보안 팀 내부에 있다는 것, 즉 개발자의 말을 들어준다는 것만으로도 보안에 대한 마음이 열리게 됩니다.”

맥키논은 보안과 개발자의 소통이 얼마나 중요한지도 절실히 느꼈다고 한다. “보안은 기획과 설계 단계에서부터 포함되는 게 제일 좋습니다. 그러려면 개발자들이 ‘보안 담당자들과 말이 잘 통한다’는 걸 체험적으로 알고 있어야 합니다. 보안 담당자들이 소프트웨어 개발 과정에 대해 이해하면 이해할 수록 이 부분이 쉽게 이뤄집니다. 제가 개발 업무를 하다 왔다는 것이 이 부분에서 큰 도움이 됐습니다.”

인그램은 “작은 변화부터 시작하고, 그것에 감사하는 것이 중요하다”고 강조한다. “지금 저희가 말한 것은 나름 큰 변화입니다. 하루아침에 이뤄질 수 없다는 것이죠. 그리고 결산이 중요합니다. 안전한 결산이요. 그런 후 ‘내가 어디에 귀를 기울여야 하는가’, ‘내가 놓치고 있는 의견들이 어디에 있는가’도 찾아내야 합니다. 하나하나 해보세요. 어느 덧 더 나은 팀이 되어 있다는 걸 느낄 수 있을 겁니다.”

3줄 요약
1. 보안 엔지니어링 팀과 개발 팀의 인원을 살짝 바꿔본 세일즈포스.
2. 개발 팀에 간 보안 담당자, “칼 같은 우선순위, 안전한 피드백” 강조.
3. 보안 팀에 간 개발 전문가, “개발자가 보안의 사용자, 귀 여는 법” 강조.

[국제부 문가용 기자(globoan@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>

  •  
  • 0
  • 페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기


  •  SNS에서도 보안뉴스를 받아보세요!! 
그린존시큐리티 4개월 배너모니터랩 파워비즈 6개월 2020년6월22~12월 22일 까지넷앤드 파워비즈 진행 2020년1월8일 시작~2021년 1월8일까지위즈디엔에스 2018파워비즈배너 시작 11월6일 20181105-20200131
설문조사
코로나19 팬더믹 이후, 가장 기승을 부리고 있는 사이버 공격 유형은 무엇이라고 보시나요?
랜섬웨어
피싱/스미싱
스피어피싱(표적 공격)/국가 지원 해킹 공격
디도스 공격
혹스(사기) 메일
악성 앱
해적판 소프트웨어
기타(댓글로)