Home > 전체기사
보안 강화하려는 개발팀을 위한 8가지 질문
  |  입력 : 2015-06-22 17:04
페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기

보안은 습관의 문제, 익히기 어렵지만 행하긴 쉬워

자동화 기능도 필요하고 인간의 분석능력도 필요하고


[보안뉴스 문가용] 소프트웨어 개발자로서 사회에 첫 발을 내딛었던 필자가 정보보안으로 옮기게 된 가장 큰 이유는 스택 오버플로우(Stack Overflow)로 유명한 조엘 스폴스키(Joel Spolsky)의 어떤 글이었다. 제목은 ‘조엘식 테스트’로 개발팀이 앞으로 성공할 것인지 실패할 것인지를 빠르게 가늠해볼 수 있는 지표들을 나열한 내용이었다. 나름 간결하고 명료했지만 전체 맥락은 강경하고 분명했다. 그 지표들은 여전히 내 뇌리에 남아 개발자들과 보안을 논할 때 항상 남몰래 꺼내보곤 한다.

 


하지만 놀라운 건 조엘 스폴스키와 같은 인물뿐 아니라 여러 위대한 선진들이 소프트웨어 개발과 보안에 대해 그렇게나 여러 번 강조했음에도 여전히 개발자들은 정보보안의 기본개념조차 받아들이려 하지 않는다는 것이다. 개발의 여건과 환경을 만드는 데에는 크게 기능적인 사항과 비기능적인 사항이 있는데, 보안을 비기능적인 사항 중 하나로 여기는 데에 문제가 있다. 그런 개발팀을 맞닥트리면 나는 조엘식 테스트를 떠올리고 안전한 소프트웨어 개발을 할 수 있도록 최대한 돕는다. 이때 내가 이들에게 묻는 건 다음과 같다.


1. 애플리케이션을 목록화하고 있는가?

여러 개의 애플리케이션을 개발하거나 사용하는 조직이라면 애플리케이션들에 대한 메타데이터를 한 곳에 보관할 필요가 있다. “애플리케이션과 관련해 연락할 사람은 누구인가?”, “어떤 앱이나 기능, 하드웨어와 상호작용하는가?”, “어디에 주로 활용되는가?”, “시스템과 데이터가 가진 중요도는 어느 정도인가?”, “어디에 종속되어 있는가?” 등의 질문을 물어봐가며 정리하면 도움이 될 것이다. 이런 질문들은 개발부서 외부 인원이지만 개발 프로젝트와 연관이 있는 사람들이 궁금해 할만한 내용이다. 즉, 이렇게 애플리케이션 및 관련 정보를 보기 좋게 정리해두는 건 이들이 개발자 한 명 한 명 붙잡고 얘기해서 쓸 데 없는 정보가 새나가지 않도록 하기 위함이다.


2. 환경을 짧은 시간 안에 구축하는 게 가능한가?

보안 실험은 보통 대단히 복잡하다. 로그 분량을 다 잡아먹고 트래픽까지 느려터지게 만드는 것에 그치면 ‘깔끔했다’는 평을 들을 정도니 최악의 경우는 어떻겠는가? 네트워크 환경 전체가 통째로 마비되기 일쑤다. 즉 업무자체가 마비된다는 것이다. 그러므로 이런 대단위 실험을 위한 완벽한 환경을 뚝딱 만들어낼 수 있다면 실험결과의 신뢰도도 훨씬 높아질 뿐 아니라 보안성도 더 높아진다. 또한 실험하면서 흔히 발생하는 환경설정 오류 및 취약점도 크게 줄일 수 있다.


3. 위협 모델링 작업을 하는가?

보안을 위주로 하는 사고방식이란 개발자들의 보통 사고방식과 크게 다르다. 개발을 진행하는 과정 중에 이런저런 위협 요소가 있을 수 있다고 미리 예측해 문서로 꾸리는 작업인 위협 모델링은 보안을 염두에 둔 개발 과정에서 아주 큰 부분을 차지하는데, 위협 모델링을 작업 계획에 넣는다는 것 자체가 최초 아키텍처와 초기 구성 단계에서부터 보안을 중요하게 생각하겠다는 뜻이 된다. 게다가 이 문서에 나와 있는 위협 요소들이 실제로 발생한다면 시작단계의 ‘염려’가 건강한 ‘의식’으로 바뀌는 걸 경험할 수 있다.


4. 안전한 개발의 라이프사이클이라는 개념이 확립되어 있는가?

안전한 개발의 라이프사이클(secure development lifecycle)이란, 용어가 좀 거창한 느낌이 있긴 하지만 결국에는 개발의 모든 과정에 의도적으로 보안과 관련된 사고와 행동을 한다는 것이다. 즉 보안을 한 번에 덧입힐 수 있는 어떤 거대한 장치가 아니라 매일 조금씩 소스코드나 개발 과정에 집어넣어야 하는 영양소 같은 존재라고 봐야 한다는 게 포인트다.  이게 습관으로 굳어지지 않았다면 처음엔 필요한 사항들을 체크리스트로 만들어 확인하는 것도 좋다.


5. 개발자 훈련 및 교육에 보안도 들어있는가?

보안에 대한 인식을 가지고 개발한다는 게 꼭 어렵거나 머리가 좋아야만 되는 건 아니다. 보안과 개발은 완전히 다른 두 개의 독립된 분야이긴 하지만 법과 외국어를 동시에 공부하는 것만큼이나 어렵고 까다로운 건 아니다. 보안은 오히려 습관과 관계된 것이기 때문에 누구라도 익힐 수 있다. 나의 경우는 코딩을 한참 하다가 하루 정도 손을 놓고 다른 일을 한다. 내가 직접 짠 코드에 대한 내 자신의 선입견을 최대한 없애려는 것이다. 그런 후 코딩을 다시 검토하면 보안의 측면에서 고쳐야 할 것이 꽤나 많이 보일 때가 있다. 개발교육은 새로운 언어 하나 더 가르쳐주는 것이 아니라 이렇게 ‘정보보안을 최대한 단단하게 할 수 있는 태도’도 포함해야 한다.


6. 자동화된 스캐닝 및 실험 툴을 사용하는가?

보안 실험은 페이로드와 컨텍스트가 조합된 수많은 경우의 수를 모두 대입해보는 과정을 필요로 한다. 너무 많아서 수작업으로 대입하기에는 한계가 분명하다. 가능한 건 자동화뿐이고, 이 부분에 특화된 소프트웨어와 툴들도 시장에 다수 나와 있다. 사실 해커들도 비슷한 작업을 해서 취약점을 찾는다. 이들 역시 자동화된 툴을 사용해 여러 가지 경우의 수를 대입해본다. 방어하는 입장에서 공격자와 기술력의 수준을 맞추지 않는다면 해커에게 당할 수밖에 없다.


7. 침투 실험을 하는가?

자동화된 방법으로 꽤나 많은 경우의 수를 실험해볼 수 있다는 건 네트워크 내에서 광범위한 범위를 커버한다는 뜻도 된다. 그러나 가능성 높은 취약점을 ‘발견’하는 것과, 그것이 현실 속에서 구체화되는 걸 상상한다는 건 다른 문제다. 즉 툴이 발견한 취약점을 해커가 어떻게 활용할 것인지 곧바로 답이 나오지는 않는다는 것이다. 이럴 때는 목표물을 구체적으로 상정한 채 실시하는 침투 실험이 효과를 나타낸다. 해커의 입장에서 좀 더 생각해볼 수 있도록 하기 때문이다.


8. 임원들 중에 보안을 1순위로 놓고 있는 인물이 있는가?

개발부서는 기업이라는 큰 틀에서만 움직일 수 있을 뿐이다. 아무리 대단한 능력과 꼼꼼한 보안습관을 갖추고 있다고 해도 기업 전체가 가지고 있는 규칙이나 분위기에 따라 전혀 다른 결과가 나오기도 한다. 회사 임원들 중 보안을 고려하는 이가 한 명도 없다면 보안에 돈이고 인력이고 시간이고 투자되지 않을 것이고, 이는 곧 ‘시한부’ 보안을 의미한다. 보안에도 자원이 들기 때문이다.


글 : 패트릭 토마스(Patrick Thomas)

Copyrighted 2015. UBM-Tech. 117153:0515BC

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


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

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


  •  SNS에서도 보안뉴스를 받아보세요!! 
IBM 파워비즈 배너 2019년2월8일~2020년2월7일까지/7월25일 수정모니터랩 파워비즈 5월 31일까지파워비즈배너 시작 11월6일 20181105-20200131
설문조사
최근 디지털 도어록이 등록되지 않은 스마트워치로 무방비로 열리는 취약점이 발견돼 이슈가 되고 있는데요. 현재 귀하의 집에 설치된 디지털 도어록의 경우 비밀번호와 함께 주로 사용하고 있는 개폐 수단은 무엇인가요?
생체인식
카드키
교통카드(티머니)
스마트워치
스마트폰
기타(댓글로)
      

이노뎁
VMS

인콘
통합관제 / 소방방재

현대틸스
팬틸트 / 카메라

파나소닉코리아
Sevurity Camera / CCTV

시큐인포
CCTV / NVR

한화테크윈
CCTV 카메라 / 영상감시

Videotec
PTZ 카메라

대명코퍼레이션
DVR / IP카메라

티제이원
영상 보안 / 출입 통제

하이크비전 코리아
CCTV / IP / NVR

원우이엔지
줌카메라

쿠도커뮤니케이션
스마트 관제 솔루션

다후아 코리아
CCTV / DVR

씨앤비텍
통합보안솔루션

지케이테코
출입통제 / 얼굴인식

아이디스
DVR / IP / VMS

한국하니웰
CCTV / DVR

이화트론
DVR / IP / CCTV

경인씨엔에스
CCTV / 자동복구장치

테크스피어
손혈관 / 차량하부 검색기

씨게이트
보안감시전용 드라이브

슈프리마
출입통제 / 얼굴인식

한국씨텍
PTZ CCTV

아이티엑스엠투엠
DVR / NVR / IP CAMERA

링크플로우
이동형 CCTV 솔루션

엔토스정보통신
DVR / NVR / CCTV

트루엔
IP 카메라

다민정보산업
기업형 스토리지

비전정보통신
IP카메라 / VMS / 폴

씨오피코리아
CCTV 영상 전송장비

씨엠아이텍
근태관리 소프트웨어 / 홍채 스케너

디비시스
CCTV토탈솔루션

테크어헤드
얼굴인식 소프트웨어

에스카
CCTV / 영상개선

옵티언스
IR 투광기

옵텍스코리아
실내 실외 센서

구네보코리아
보안게이트

엑사비스
사이보 보안 CCTV

화이트박스로보틱스
CCTV / 카메라

신우테크
팬틸드 / 하우징

네이즈

케이제이테크
지문 / 얼굴 출입 통제기

혜인에스앤에스
통합보안시스템

셀링스시스템
IP 카메라 / 비디오 서버

사라다
지능형 객체 인식 시스템

일산정밀
CCTV / 부품 / 윈도우

수퍼락
출입통제 시스템

아이엔아이
울타리 침입 감지 시스템

이노뎁
VMS

파이브지티
얼굴인식 시스템

새눈
CCTV 상태관리 솔루션

파이브지티
얼굴인식 시스템

케이티앤씨
CCTV / 모듈 / 도어락

다원테크
CCTV / POLE / 브라켓

티에스아이솔루션
출입 통제 솔루션

엘림광통신
광전송링크

퍼시픽솔루션
IP 카메라 / DVR

금성보안
CCTV / 출입통제 / NVR

지와이네트웍스
CCTV 영상분석

이후커뮤니케이션
CCTV / DVR

지에스티엔지니어링
게이트 / 스피드게이트

넷플로우
IP인터폰 / 방송시스템

아이유플러스
레이더 / 카메라

DK솔루션
메트릭스 / 망전송시스템

두레옵트로닉스
카메라 렌즈

에프에스네트웍스
스피드 돔 카메라

엔클라우드
VMS / 스위치

KPN
안티버그 카메라

싸이닉스
스피드 돔 카메라

대산시큐리티
CCTV 폴 / 함체 / 랙

포커스에이치앤에스
지능형 / 카메라

휴컴스
PTZ 카메라 / 줌카메라

창우
폴대

유진시스템코리아
팬틸트 / 하우징

브이유텍
플랫폼 기반 통합 NVR

글로넥스
카드리더 / 데드볼트

카티스
출입통제 / 외곽경비

세환엠에스
시큐리티 게이트

화인박스
콘트롤박스 / 배전향