조남용 한국EMC RSA 수석보안 컨설턴트 nycho@rsa.com
외부 해킹으로 대량의 개인정보 유출, 대규모 시스템 장애 등 사고가 빈번히 발생한다. 이러한 사고에서 공통적으로 드러나는 공격 방식은 지능형지속공격(APT·Advanced Persistent Threat)이다. 보안체계를 잘 갖추고 있던 조직들도 APT 앞에 무력하게 당하는 사건들을 접하면서 많은 기업 및 조직들이 대응 방안 마련에 고심하고 있다.
보안 전문가들은 APT가 새로 개발된 특정한 공격 기술이라기보다는 새로운 공격전략으로 이해하고 있다. APT는 기존부터 있어 왔던 악성코드, 익스플로이트 킷(Exploit kit), 터널링, 스테가노그라피 등 다양한 공격 기법을 복합적으로 사용한다는 점에서 이전과 유사하다. 반면 공격 전략을 기존 보안체계를 우회할 수 있는 방향으로 발전시켰다는 점에서 차이가 난다. 문제는 APT 공격이 날로 치밀하고 조직적이면서도 전문화된 양상을 띠고 있고, 그에 따른 피해도 커지고 있다는 것이다.
APT는 SK커뮤니케이션즈나 넥슨 사례에서 보듯 초기 기획부터 대상을 명확히 설정, 집중적으로 공격한다. 이런 점에서 불특정 다수에게 행해지는 피싱공격이나 트로얀(Trojan) 공격과 구별된다. 일반적으로 APT는 경제적 이득이 큰 경우 행해진다. 전용 악성코드, 익스플로이트 킷 구입 및 봇넷 등 대여를 위해 충분한 비용을 투자하고 전문 인력도 장기간 투입한다. APT는 조직 핵심 자원을 직접 공격하지 않고 조직 구성원인 개인을 공격한다. 일반적으로 조직 내 개인이 사용하는 PC는 주요 서버에 비해 상대적으로 관리가 취약한 편이다. APT에서는 이러한 PC를 공격 침입 경로로 이용해 효과적이고 은밀하게 조직 내부에 침투한다.
다른 특징은 사회공학적인 방법까지 활용하고 있다는 점이다. APT는 소셜 네트워크 검색을 비롯한 다양한 경로의 정보 수집 및 철저한 사전 조사로 대상에 최적화된 공격을 수행한다. 예를 들면 조직 내부 PC를 감염시키기 위해 악성코드가 삽입된 이메일을 해당 PC사용자 업무와 관련된 내용으로 발송하거나 해당 사용자가 자주 이용하는 웹 사이트를 해킹해 악성코드를 배포하기도 한다.
APT가 지능적이라고 하는 것은 그것이 탐지를 회피하기 위해 ‘로우 앤 슬로우(Low and slow)’ 전략을 사용한다는 데 있다. 해당 공격을 위한 전용 악성코드를 신규로 제작해 안티 바이러스 솔루션 탐지를 회피한다. 해당 악성코드를 특정 공격 대상에게만 배포해 해당 파일이 발각될 확률도 적다. 80·443 등 알려진 포트로 감염된 내부 PC로부터 외부 원격 조종 서버로 연결을 하며 오랜 시간을 투자해 은밀하게 활동한다.
내부에서 획득한 정보를 반출하기 위해 자체 개발한 암호화 방식을 사용하거나 데이터 은닉기술(Steganography)을 이용해 소량씩 여러 번에 걸쳐 전송한다. 이러한 공격 전략은 기존 바이러스 백신 탐지를 회피해 방화벽 및 침입탐지 솔루션을 우회하고 보안관제에 탐지되지 않는 특성을 가진다.
APT를 어떻게 막을 것인가. APT는 전문화된 인력과 조직에 의해 매우 정교하게 이뤄진다. 이러한 공격을 효과적으로 탐지하고 대응하기 위해 기존 보안 정책, 운영 인력 및 프로세스, 보안 솔루션 전반에 개선이 필요하다. 먼저 전문 인력 확보 및 능동적 대응체계를 갖춰야 한다. APT는 자동화된 도구에 의해 행해지는 패턴화 된 공격이 아닌 상대방의 가장 취약한 부분을 능동적으로 파악해 최적화된 공격을 가한다.
APT가 이슈가 되면서 국내에서도 다양한 대응 솔루션이 출시됐다. 그렇지만 정교한 공격은 자동화된 탐지를 제공하는 솔루션만으로는 해결이 어렵다. 최신 공격기법 및 전략에 대해 능동적인 파악과 적절한 대응 체계를 운영할 전문 침해대응 인력이 필요하다.
두 번째로 알려지지 않은 악성코드 대응 체계도 갖춰야 한다. APT에서는 주로 알려지지 않은 악성코드를 조직 내부 PC에 감염시켜 공격을 수행한다. 대부분 안티 바이러스 솔루션이 알려지지 않은 악성코드에 대해 적절한 대응을 하지 못하기 때문이다. 안티바이러스 솔루션은 이미 발견한 악성코드 시그니처를 기반으로 악성코드를 탐지하고 이를 삭제한다. 이는 불특정 다수에게 유포되는 악성코드 탐지에는 효과적일 수 있으나 특정 조직만을 타깃으로 개발한 악성코드를 유포하는 경우에는 효과적이지 못하다. 알려지지 않은 악성코드에 대응하기 위해 외부 유입된 실행 파일 위험도 분석으로 의심스런 파일을 신고하고 분석·대응을 할 수 있는 체계를 갖춰야 한다.
네트워크 트래픽 분석으로 악성코드 유입 경로를 추적하고 이를 차단해 추가 감염을 막아야 한다. 여기에 네트워크 트래픽 분석은 필수적이다. 악성코드에 감염된 PC는 알려진 포트를 이용해 외부 공격자와 연결하고 공격자는 해당 PC를 원격조종 하며 내부 네트워크에 장기간 침투해 원하는 정보를 수집한다.
매우 교묘하게 자신들 행위를 위장하기 때문에 네트워크 트래픽을 정교하게 분석 해야만 탐지할 수 있다. 모든 트래픽을 저장하고 세션 단위로 재조합해 트래픽 내용까지 상세 분석할 수 있는 체계를 마련해야 한다. 트래픽 상세 분석으로 감염된 좀비 PC의 외부 접속 행위를 차단하고 해당 PC를 치료해 공격을 초기 단계에서 차단해야 한다.
기업들은 한정된 인력으로 효율적인 보안 관리를 위해 자동화를 추진해 왔다. 자동 탐지, 자동 차단기능을 주로 제공하는 보안 솔루션들이 많은 호응을 받는 이유도 여기에 있다. 하지만 우리를 공격하는 이들은 매우 창조적인 ‘사람’이다. 시스템이 자동으로 탐지·차단이 가능한 패턴 공격도 하지 않는다. 날로 지능화, 첨단화되는 공격자들에 맞서 그들보다 더 지능적이고 전문적인 대응 체계를 갖춰나가야 한다. 보안에 대한 실질적인 투자와 관심이 필요하다.
관련 통계자료 다운로드 APT 공격단계