2015.09.14

"돈 없이도 할 수 있다" 보안 예산이 부족한 CISO를 위한 성공 전략

Todd Bell | CSO
필자는 얼마 전 미국 10대 케이블 업체 가운데 한 곳에 새로 부임한 CISO와 이야기를 나눌 기회가 있었다. 자리에 앉자마자 그는 파이어아이, 팔로알토 네트웍스, 사이랜스(Cylance) 등 필요한 툴들은 넘쳐나는데 배정된 사이버 보안 예산은 한 푼도 없다며 한탄을 늘어놨다.



하지만 이가 없으면 잇몸으로라도 살아가야 하는 법. 노련한 보안 전문가답게 그는 '기본에 충실'하는 방법으로 운용 가능한 예산이 없는 열악한 상황 속에서도 사이버 보안 문제를 해결하고 리스크를 해소할 수 있었다.

그는 가장 정석적인 방법으로 보안 통제 구조와 환경 기준을 확립하고 보안 아키텍처를 조정함으로써 기업의 사이버 보안 역량을 여느 기업 부럽지 않은 수준으로 끌어올릴 수 있었다고 설명했다.

현직 CISO의 입에서 직접 상황의 어려움을 들으며 많은 이들이 "그럼 오픈소스 툴을 쓰면 되지 않나?"라고 의아해할지 모르겠다. 실제로 오픈소스 환경을 잘 살펴보면 여러 훌륭한 사이버 보안 프로그램들을 공짜로 획득할 수 있다.

하지만 이런 일반적인 시각과 달리 그는 어떤 오픈소스 툴에도 의지하지 않고, 계층화 보안만으로 기업 전반의 사이버 리스크를 축소시켰다. 그야말로 무에서 유를 창조해낸 것이다.

지난 수 년에 걸쳐 필자는 사이버 보안에 관한 매우 중요한 교훈을 얻을 수 있었다. 바로, 대부분의 사이버 보안 사고는 아키텍처의 개선을 통해 해결이 가능하다는 사실이다.

그러나 이것이 말처럼 쉬운 과정만은 아니다. 기존의 방화벽 규칙에 의존하는 애플리케이션들과 '평면(flat)' 네트워크를 보유하고 있는 기업들이라면 어떤 집단에도 타격을 주지 않고 아키텍처를 개편하기란 절대 불가능한 과정이다.

지금까지 필자는 여러 포춘 500대 기업의 의뢰로 그들의 아키텍처 구상을 실험해보고 각 모델들의 장점을 분석하는 작업을 진행해왔다. 그리고 그간의 경험을 통해 기업들에게 실제적 효과를 전달할 수 있는 기초적이고 이론적인 아키텍처 방법론을 개발할 수 있었다.

여기 필자가 개발한, 벨 시큐리티 엔터프라이즈 아키텍처(Bell Security Enterprise Archtecture) 방법론의 기본적인 내용을 소개해본다.

1. 악성코드에 집착하지 말라. 우리는 제로-트러스트(zero-trust) 모델을 받아들여 악성코드 감염 환경에서 공존하는 법을 배울 필요가 있다. 모든 것이 연결된 오늘날 내부 네트워크를 인터넷과 구별해 바라보는 것은 어리석은 생각이다.

2. 시장 1위 벤더의 최신, 최고급 툴만이 정답이 아니다. 보안 툴들의 대응 능력에 대한 의문은 지속적으로 제기되고 있으며, 이것으로 인한 하드웨어 성능 저하 문제 역시 무시할 수 어려운 수준임을 기억하자.

3. 핵심 시스템(개인식별정보 데이터, 사회보장번호 데이터, 신용 카드, 지적 자산 등과 관련한 시스템)에 데이터 보호 역량을 집중하자. 물론 기업 전반을 지키는 것이 자신의 임무겠지만, '목숨을 걸어야'할 영역은 확실히 좁히는 것이 좋다.

4. 가상화 방식을 이용하면 내부의 아무 시스템도 이동하지 않고도 기존 기업 아키텍처에 원하는 보안 아키텍처를 덧씌울 수 있다. 이런 방식을 이용하면 아키텍처의 어떤 부분에도 손상이 가해지지 않는다.

또한 민감한 데이터와 관련한 기존 시스템 주위에 '보안 구역(security zone)'을 생성하면 내부 네트워크에서 해당 시스템만을 별도로 분리할 수 있다. 보안 구역 설정은 민감 데이터가 위치하는 모든 서버 각각에 대해 진행하는 것이 옳다.

5. 보안 구역이란 극소수의 규정과 접근 통제 목록(ACL)을 갖춘 서버 전면의 저비용 방화벽으로 구성된다. 각 보안 구역들은 두 지점간 암호화를 통해 상호 커뮤니케이션을 진행한다. 서버 상태 모니터링을 위한 여타 연결은 보안 구역 방화벽을 통한 비암호화 커뮤니케이션으로 진행된다.

6. 기존 시스템의 민감한 데이터를 전통적인 보안 고립(security enclave)/가상랜(VLAN)으로 이전하는 대신, 보안 구역을 활용해 가상 '네트워크 오버레이'를 생성하는 아키텍처 방법론을 적용한다면 비즈니스에 가해지는 타격은 크게 줄어들게 된다.

시스템을 옮기는 과정에서는 기존 방화벽 규칙으로 인해 애플리케이션이 손상될 위험이 있는 반면 보안 구역들은 보안 암호화 터널을 통해 VPN 혹은 TLS 경유 커뮤니케이션을 진행하기 때문에 보안 영역 외부의 나머지 네트워크 영역에서 일어나는 일을 신경쓰지 않아도 된다.

7. 각 주요 데이터 서버 전면에 '점프 박스'를 적용한다면 모든 접속 내역을 추적해준다. 점프 박스는 또 2요소 인증 이용을 권고해 각 보안 구역이 추가적 보안 계층을 갖추도록 해준다. 점프 박스는 각 보안 구역의 모든 접속을 기록, 통제하는 역할을 할 것이다.

8. 가능하다면, 암호화와 토큰화를 통해 저장된 민감한 데이터를 평가절하하는 것이 나머지 데이터들을 위해 좋다. 데이터베이스 암호화가 어려운 경우라도 최소한 애플리케이션 레벨 암호화는 진행할 것을 권장한다. 암호화는 데이터베이스 관리자가 민감한 데이터를 열람할 가능성을 차단해 주는 역할을 한다.

9. 암호화 키를 암호화와 같은 서버에 보관해서는 안된다. 슬릿-키(slit-key) 방식으로 키들을 파일 디렉토리 승인 기능을 갖춘 서로 다른 서버에 저장하는 것이 올바른 방식이다.

10. 또한 데이터를 최대한 분산하는 것도 신경써야 할 부분이다. 데이터들은 그 용도에 따라 서로 연결될 필요가 있다(일반적으로 '암호화를 통한 테이블 조인(table join)'이라 부른다). 이는 성능 이슈 및 지연과 관련한 문제다.

11. 네트워크 트래픽을 쪼개는 비대칭 회로망(asymmetrical network) 라우팅을 인터넷에 적용하면 50%의 데이터 상실이 이뤄지고, 이를 통해 악성코드 패킷 스니핑(packet sniffing)의 위협을 줄일 수 있다.

12. 맞춤 제작 애플리케이션들을 통해 RAM 메모리를 갉아먹는 시도를 방지하려면 메모리 암호화도 필요하다. 암호/복호화 키를 이용하고 민감한 데이터를 RAM에 일시 저장 하는 것은 안전하지 못한 방법이다. 악성코드는 이미 메모리 공간을 훼손하고 있기 때문이다. 'TRESOR 리눅스 커널 패치'나 크립트프로텍트메모리(CryptProtectMemory) 등의 솔루션을 연구해보자.

이런 아키텍처 방법론은 다음과 같은 가치를 제공해준다.
- CIO와 비즈니스 운영자들과 말씨름할 일이 줄어든다.
- 보다 유연하고 '비즈니스 친화적'인 CISO라는 인상을 줄 수 있다.
- 쓰는 예산이 줄어들면 다른 부분에서 보다 자유로운 활동이 가능해진다.
- 궁극적으로 사이버 보안 역량을 개선되고 보안 리스크는 감소할 것이다.
- 기존 아키텍처를 유지함으로써 비즈니스에 가해지는 혼란을 줄일 수 있고, 또 외부 아키텍트에게 무언가를 의뢰할 일도 없어진다.


지금까지 설명한 아키텍처 방법론은 필요한 예산이 부족한 상황에서 적용해 볼 수 있는 성공적인 사이버 보안 프로그램을 실행하는 여러 방법 가운데 하나일 뿐이다. 자사에 알맞는 방법론들을 고민해보는 것도 중요한 노력임을 기억하자. editor@itworld.co.kr



2015.09.14

"돈 없이도 할 수 있다" 보안 예산이 부족한 CISO를 위한 성공 전략

Todd Bell | CSO
필자는 얼마 전 미국 10대 케이블 업체 가운데 한 곳에 새로 부임한 CISO와 이야기를 나눌 기회가 있었다. 자리에 앉자마자 그는 파이어아이, 팔로알토 네트웍스, 사이랜스(Cylance) 등 필요한 툴들은 넘쳐나는데 배정된 사이버 보안 예산은 한 푼도 없다며 한탄을 늘어놨다.



하지만 이가 없으면 잇몸으로라도 살아가야 하는 법. 노련한 보안 전문가답게 그는 '기본에 충실'하는 방법으로 운용 가능한 예산이 없는 열악한 상황 속에서도 사이버 보안 문제를 해결하고 리스크를 해소할 수 있었다.

그는 가장 정석적인 방법으로 보안 통제 구조와 환경 기준을 확립하고 보안 아키텍처를 조정함으로써 기업의 사이버 보안 역량을 여느 기업 부럽지 않은 수준으로 끌어올릴 수 있었다고 설명했다.

현직 CISO의 입에서 직접 상황의 어려움을 들으며 많은 이들이 "그럼 오픈소스 툴을 쓰면 되지 않나?"라고 의아해할지 모르겠다. 실제로 오픈소스 환경을 잘 살펴보면 여러 훌륭한 사이버 보안 프로그램들을 공짜로 획득할 수 있다.

하지만 이런 일반적인 시각과 달리 그는 어떤 오픈소스 툴에도 의지하지 않고, 계층화 보안만으로 기업 전반의 사이버 리스크를 축소시켰다. 그야말로 무에서 유를 창조해낸 것이다.

지난 수 년에 걸쳐 필자는 사이버 보안에 관한 매우 중요한 교훈을 얻을 수 있었다. 바로, 대부분의 사이버 보안 사고는 아키텍처의 개선을 통해 해결이 가능하다는 사실이다.

그러나 이것이 말처럼 쉬운 과정만은 아니다. 기존의 방화벽 규칙에 의존하는 애플리케이션들과 '평면(flat)' 네트워크를 보유하고 있는 기업들이라면 어떤 집단에도 타격을 주지 않고 아키텍처를 개편하기란 절대 불가능한 과정이다.

지금까지 필자는 여러 포춘 500대 기업의 의뢰로 그들의 아키텍처 구상을 실험해보고 각 모델들의 장점을 분석하는 작업을 진행해왔다. 그리고 그간의 경험을 통해 기업들에게 실제적 효과를 전달할 수 있는 기초적이고 이론적인 아키텍처 방법론을 개발할 수 있었다.

여기 필자가 개발한, 벨 시큐리티 엔터프라이즈 아키텍처(Bell Security Enterprise Archtecture) 방법론의 기본적인 내용을 소개해본다.

1. 악성코드에 집착하지 말라. 우리는 제로-트러스트(zero-trust) 모델을 받아들여 악성코드 감염 환경에서 공존하는 법을 배울 필요가 있다. 모든 것이 연결된 오늘날 내부 네트워크를 인터넷과 구별해 바라보는 것은 어리석은 생각이다.

2. 시장 1위 벤더의 최신, 최고급 툴만이 정답이 아니다. 보안 툴들의 대응 능력에 대한 의문은 지속적으로 제기되고 있으며, 이것으로 인한 하드웨어 성능 저하 문제 역시 무시할 수 어려운 수준임을 기억하자.

3. 핵심 시스템(개인식별정보 데이터, 사회보장번호 데이터, 신용 카드, 지적 자산 등과 관련한 시스템)에 데이터 보호 역량을 집중하자. 물론 기업 전반을 지키는 것이 자신의 임무겠지만, '목숨을 걸어야'할 영역은 확실히 좁히는 것이 좋다.

4. 가상화 방식을 이용하면 내부의 아무 시스템도 이동하지 않고도 기존 기업 아키텍처에 원하는 보안 아키텍처를 덧씌울 수 있다. 이런 방식을 이용하면 아키텍처의 어떤 부분에도 손상이 가해지지 않는다.

또한 민감한 데이터와 관련한 기존 시스템 주위에 '보안 구역(security zone)'을 생성하면 내부 네트워크에서 해당 시스템만을 별도로 분리할 수 있다. 보안 구역 설정은 민감 데이터가 위치하는 모든 서버 각각에 대해 진행하는 것이 옳다.

5. 보안 구역이란 극소수의 규정과 접근 통제 목록(ACL)을 갖춘 서버 전면의 저비용 방화벽으로 구성된다. 각 보안 구역들은 두 지점간 암호화를 통해 상호 커뮤니케이션을 진행한다. 서버 상태 모니터링을 위한 여타 연결은 보안 구역 방화벽을 통한 비암호화 커뮤니케이션으로 진행된다.

6. 기존 시스템의 민감한 데이터를 전통적인 보안 고립(security enclave)/가상랜(VLAN)으로 이전하는 대신, 보안 구역을 활용해 가상 '네트워크 오버레이'를 생성하는 아키텍처 방법론을 적용한다면 비즈니스에 가해지는 타격은 크게 줄어들게 된다.

시스템을 옮기는 과정에서는 기존 방화벽 규칙으로 인해 애플리케이션이 손상될 위험이 있는 반면 보안 구역들은 보안 암호화 터널을 통해 VPN 혹은 TLS 경유 커뮤니케이션을 진행하기 때문에 보안 영역 외부의 나머지 네트워크 영역에서 일어나는 일을 신경쓰지 않아도 된다.

7. 각 주요 데이터 서버 전면에 '점프 박스'를 적용한다면 모든 접속 내역을 추적해준다. 점프 박스는 또 2요소 인증 이용을 권고해 각 보안 구역이 추가적 보안 계층을 갖추도록 해준다. 점프 박스는 각 보안 구역의 모든 접속을 기록, 통제하는 역할을 할 것이다.

8. 가능하다면, 암호화와 토큰화를 통해 저장된 민감한 데이터를 평가절하하는 것이 나머지 데이터들을 위해 좋다. 데이터베이스 암호화가 어려운 경우라도 최소한 애플리케이션 레벨 암호화는 진행할 것을 권장한다. 암호화는 데이터베이스 관리자가 민감한 데이터를 열람할 가능성을 차단해 주는 역할을 한다.

9. 암호화 키를 암호화와 같은 서버에 보관해서는 안된다. 슬릿-키(slit-key) 방식으로 키들을 파일 디렉토리 승인 기능을 갖춘 서로 다른 서버에 저장하는 것이 올바른 방식이다.

10. 또한 데이터를 최대한 분산하는 것도 신경써야 할 부분이다. 데이터들은 그 용도에 따라 서로 연결될 필요가 있다(일반적으로 '암호화를 통한 테이블 조인(table join)'이라 부른다). 이는 성능 이슈 및 지연과 관련한 문제다.

11. 네트워크 트래픽을 쪼개는 비대칭 회로망(asymmetrical network) 라우팅을 인터넷에 적용하면 50%의 데이터 상실이 이뤄지고, 이를 통해 악성코드 패킷 스니핑(packet sniffing)의 위협을 줄일 수 있다.

12. 맞춤 제작 애플리케이션들을 통해 RAM 메모리를 갉아먹는 시도를 방지하려면 메모리 암호화도 필요하다. 암호/복호화 키를 이용하고 민감한 데이터를 RAM에 일시 저장 하는 것은 안전하지 못한 방법이다. 악성코드는 이미 메모리 공간을 훼손하고 있기 때문이다. 'TRESOR 리눅스 커널 패치'나 크립트프로텍트메모리(CryptProtectMemory) 등의 솔루션을 연구해보자.

이런 아키텍처 방법론은 다음과 같은 가치를 제공해준다.
- CIO와 비즈니스 운영자들과 말씨름할 일이 줄어든다.
- 보다 유연하고 '비즈니스 친화적'인 CISO라는 인상을 줄 수 있다.
- 쓰는 예산이 줄어들면 다른 부분에서 보다 자유로운 활동이 가능해진다.
- 궁극적으로 사이버 보안 역량을 개선되고 보안 리스크는 감소할 것이다.
- 기존 아키텍처를 유지함으로써 비즈니스에 가해지는 혼란을 줄일 수 있고, 또 외부 아키텍트에게 무언가를 의뢰할 일도 없어진다.


지금까지 설명한 아키텍처 방법론은 필요한 예산이 부족한 상황에서 적용해 볼 수 있는 성공적인 사이버 보안 프로그램을 실행하는 여러 방법 가운데 하나일 뿐이다. 자사에 알맞는 방법론들을 고민해보는 것도 중요한 노력임을 기억하자. editor@itworld.co.kr

X