2019-12-15 03:40 (일)
[황석훈 특별기고] 서버 및 PC 보안 대책 이대로 좋은가
상태바
[황석훈 특별기고] 서버 및 PC 보안 대책 이대로 좋은가
  • 길민권 기자
  • 승인 2019.04.16 19:01
이 기사를 공유합니다

보다 적극적인 보안활동 요구되고 있어

▲ 황석훈 타이거팀 대표이사
▲ 황석훈 타이거팀 대표이사
◇보안활동과 사고 사례

1년 전 빗썸 해킹 사건이 워터링홀 공격에 따른 것으로 나타났다고 2019년 4월 5일자 아이뉴스 단독 기사로 나왔다. 워터링홀 공격이란, 공격자가 특정 웹사이트에 악성코드를 심어두고 접속을 유도하여 감염시키는 공격이다. 이후, 감염된 내부 사용자 PC를 거점으로 내부 공격을 수행하게 된다. 최초 감염 공격은 제로데이 취약점을 이용하여 무작위로 공격하거나 패치를 제대로 하지 못한 PC를 주 타깃으로 한다.

2017년에 발생했던 워너크라이 랜섬웨어 사건은 내부 사용자 PC를 이메일에 악성코드를 첨부하는 등의 여러 방법으로 감염시킨 후 악성코드가 스스로 내부에서 내부로 전파 공격하여 확대된 공격이었다. 이 또한 이터널블루라고 하는 제로데이 취약점을 이용했었다. 이후 탐지 패턴이 나왔지만, 계속해서 변종들의 공격이 이루어졌었다.

이렇듯 악성코드 관련 사건들의 공통점은 한 대 이상의 내부 사용자 PC를 감염시킨 후 다양한 권한을 획득하거나 다른 구간으로 전파 공격으로 피해를 확산하거나 정보를 유출하거나 파괴하기도 한다. 그리고 이러한 유사 사례들은 매년 발생할 만큼 많다.

이에 많은 보안담당자 또는 운영자는 악성코드 탐지 솔루션이나 Anti-Virus, PC 또는 서버에 패치 활동을 강화하고 주기적으로 이를 점검하고 있다. 현재 악성코드 유입을 원천적으로 차단할 기술적 대안이 없으므로 신속한 패치 활동 및 지속적 탐지 패턴 업데이트 등을 통해서 이러한 공격을 막아내고자 하는 것이다. 하지만 아쉽게도 성공하는 대다수의 공격들은 제로데이 취약점을 이용하고 유저의 실수들로 인해 발생하기 때문에 이러한 노력이 큰 결실을 얻기 어려운 것이 사실이다.

사이버 인텔리젼스 활동으로 신규 취약점 정보를 수집하는 일이 쉽지는 않다. 최신 취약점을 발견한 해커가 관련 정보를 대중에 쉽게 노출하지 않으며 관련 정보를 정부 기관이나 벤더사에 직접 제공하기도 하지만 음지에서 거래하기도 하기 때문이다.

대다수의 패턴기반의 보안 솔루션의 경우 악성코드 패턴이 신종이거나 변경될 경우 정확히 탐지하기가 어렵다. 공격 이후에 샘플 분석을 통해서 다양한 방어 패턴이 나오기 때문에 우리가 처음 공격지가 되지 않기를 바랄 수 밖에 없다. 실제 공격이 발생하면 벤더사에서 패치가 나오거나 보안솔루션 업체에서 패턴이 업데이트될 때까지 임시방편의 활동 외에 할 수 있는게 많지 않다는 것이 현실이다.

즉, 우리는 이제 패치나 현재의 보안솔루션으로 우리가 제로데이 공격을 사전에 막는 것은 많은 노력과 훈련을 통해서 줄일 수는 있을지 몰라도 원천적으로 막아낼 수 없음을 고려하고 보안 대책을 강구해야 하지 않을까 생각한다.

◇사이버 킬 체인(Cyber Kill Chain)과 MITRE ATT&CK를 통해서 우리가 할 수 있는 것을 엿보다.

그렇다면 다음 대응에서 우리가 할 수 있는 것은 무엇일까? “Cyber Kill-Chain”과 “MITRE ATT&CK Model”(https://attack.mitre.org/matrices/enterprise/)에서 힌트를 얻을 수 있지 않을까 한다.

H-1.jpg
Cyber Kill-Chain은 2009년 록히드 마틴사에서 제안한 개념으로 위의 그림과 같이 공격을 7단계로 구분하여 정의하고 일반적으로 공격들이 진행되는 단계가 위와 같이 연결되어 있다는 점에서 'Chain'이라는 개념을 가진다. 즉 방어자 입장에서는 공격을 사전 단계에서 무력화하면 가장 이상적이겠지만 그렇지 못할 경우 단계별로 대응 방안을 수립하여 공격 체인을 단절하는 방식으로 무력화하거나 지연시킬 수 있다는 개념을 말한다.

다음으로 MITRE의 ATT&CK의 내용은 다양한 해킹 기법들을 11가지의 공격방법(tactics)로 분류하고 세부적으로 총 219가지의 개별 기술 항목을 분류해 놓고 있다. 대다수의 내용을 보면 APT 공격 기술을 세분화해서 정리한 것 같다.

▲ https://attack.mitre.org
▲ https://attack.mitre.org

하지만 이 Cyber Kill-Chain의 개념이 MITRE의 ATT&CK 모델과 같이 조합을 해서 공격 기술들을 분석해보면 보다 구체적인 기술요소들을 식별할 수 있다.

▲ [이미지] https://attack.mitre.org/resources/pre-introduction
▲ [이미지] https://attack.mitre.org/resources/pre-introduction

아래의 공격 예시를 보자.

▲ 출처 : http://magazine.milcyber.org/stories/cyberthreatheat-mapping
▲ 출처 : http://magazine.milcyber.org/stories/cyberthreatheat-mapping

위의 그림은 공격자가 새로운 공격을 수행함에 있어서 악성코드를 유포하는데 워드 매크로 관련 기술을 이용하였고 이를 통해서 내부까지 침투하는 일련의 과정을 Cyber Kill-Chain으로 도식화 한 것인데, 관련 내용들이 이미 APT1, 28, 29에서 사용되었던 기술이라는 의미이다.

▲ 출처 : http://magazine.milcyber.org/stories/cyberthreatheat-mapping
▲ 출처 : http://magazine.milcyber.org/stories/cyberthreatheat-mapping

위의 7단계 내용을 MITRE ATT&CK의 세부 기술에 구체적으로 접목을 시키면 위의 그림처럼 공격이 도식화 된다.

◇지금 해야 할 일은 감염 이후를 고민해야 한다.

Cyber Kill-Chain의 개념을 통해 보자면 악성코드에 의해 내부 사용자PC가 감염되는 것을 100% 통제하기 어렵다면 그 다음에 흐름을 통제하거나 차단하면 된다는 것이다. 즉 1차 통제가 어렵다면 내부 확산 등과 같은 가능한 2차 공격을 미리 파악하고 이를 사전에 차단하면 내부 PC 한 대 이상의 피해를 당하지 않을 수 있다는 설명이며 이러한 개념을 구현한 솔루션군을 BAS(Breach and Attack Simulation)라고 한다.

다음 흐름을 사전에 차단하는 것은 악성코드가 내부확산 및 정보유출 사고가 발생하는 것을 막기 위해서 반드시 필요한 활동이다. 이는 결국 감염된 특정 PC로 공격의 피해를 국한하는 것이다.

그러기 위해서는 최소한 ATT&CK에서 제시하는 219가지의 세부 기술들을 모두 내부 네트워크에 적용시켜볼 필요가 있으며 추가적으로 새로운 공격 기술들을 수집•분석하여 내부 네트워크 를 선제적이며 주기적으로 검토해야 한다. 내부의 특정 구간에 있는 한대의 PC가 감염된다면 어디까지 피해가 전파될 수 있으며 어떤 문제가 발생할 수 있는지 그리고 외부로 정보 유출 등이 발생할 수 있는지를 말이다.

◇적용후 우리가 해야 할 일들은 무엇인가?

위에서 이미 언급했지만 이러한 점검을 자동으로 해주는 도구를 BAS(Breach And Attack Simulation) 솔루션이라고 부른다. 이는 가트너가 2017년에 도메인을 지정하면서 생긴 말이다.

미국과 유렵 등지에서 2018년부터 기하급수적으로 고객사 증가하고 있다. 그들도 만약 해커가 내부 사용자PC를 장악했다면 또한 내부의 누군가가 악의적인 마음을 먹는다면 공격한다면 어디까지 할 수 있는지 확인이 필요하다고 판단했고 지금까지 이를 자동으로 해주던 솔루션이 없었기에 더욱 열광적으로 BAS제품군에 관심을 가진다고 생각된다.

참고로, BAS(Breach and Attack Simulation)제품군은 현재 10여 종 이상 해외 시장에 있는 것으로 파악되고 있고 국내에는 SafeBreach와 AttackIQ 제품만이 총판을 통해서 영업적 활동을 하고 있는 것으로 파악되고 있다. 현재 국내에서 SafeBreach의 경우 다수의 POC를 진행 중에 있다.

이를 적용해서 조사를 해보면 우리가 생각했던 보다 휠씬 더 많은 것들이 있다는 것을 알게 된다. 때로는 결과가 당황스럽게 생각될 수도 있다.

하지만 그러한 도구들의 도움으로 우리가 얻을 수 있는 가장 중요한 점은 만약 악성코드가 유입된다면 우리는 얼마나 많은 피해를 당할 수 있는지를 낱낱이 알아낼 수 있다는 점이며 현재 우리가 투자한 보안솔루션들이 얼마나 우리를 보호해주는지도 정확히 파악이 가능하며 향후 우리가 악의적인 공격을 보다 효과적으로 막아내기 위해서 해야 할 일들이 명확하게 제시된다는 점이다. 또한 지속적으로 새로이 발견되는 악성코드 및 공격들을 우리 네트워크가 잘 대응할 수 있는지를 확인할 수 있다는 점이다.

물론 발견된 내용 중에서 직접 조치가 어려운 내용이나 현재 보유한 솔루션이나 기술로 해결하기 어려운 것이 존재할 수 있다. 이러한 경우 향후 보다 안전한 운영을 위해서 그리고 보다 완벽한 차단을 위해서 우리가 투자해야 할 부분을 찾아낼 수 있으며 그러한 활동은 수치화되어 얼마나 내부 시스템이 안전해지고 있는지를 알 수 있다는 것은 분명 매력적인 관리 방법이라 할 수 있을 것이다.

[글. 황석훈 타이거팀 대표 / h9430@tigerteam.kr]

★정보보안 대표 미디어 데일리시큐!★