달콤한 가상 허니넷, 침입탐지에 특효약

일반입력 :2006/05/29 10:04

Deb Shinder

침입자를 방어하는 일반적인 대응 방법을 넘어서 좀 더 사전 대비적인 방법을 사용하려고 하는가? 침입자들이 쳐들어오기를 기다리는 것 대신, 가짜 서버를 만들거나 허니팟(honeypot 혹은 허니넷(honeynet)이라 불리는 가짜 네트워크를 만들어 그들을 꾀어내어 심지어 잡을 수도 있다.침입 탐지나 방지는 IT 보안 계획의 중요한 목표이며 최선의 침입 탐지 전략은 여러 개의 요소로 구성된다. 이전의 기사에서, 나는 회사의 규모에 맞는 IDS/IPS 장비나 소프트웨어 제품을 고르는 방법에 관해 이야기하였다. 이는 당신의 네트워크 보안의 약점을 찾아내어 침입하려는 침입자들에 대항하는 대응 방법들이다. 몇몇 기관에서는 허니팟이나 허니팟으로 구성된 네트워크를 설치함으로써 좀 더 사전에 대비할 수 있는 방법을 취하고 있다. 허니팟은 해커들이 공격하도록 실제 사용 중인 기계인 것처럼 보이도록 하는 서버이다. 이제, 침입 탐지와 방지 방법의 일부분으로 어떻게 허니팟이나 허니넷을 만들 수 있는지 그리고 실제 네트워크 규모가 커질 때 허니팟도 함께 규모를 늘리는 방법을 알아보자.침입자들을 꾀어내는 방법허니팟이나 허니넷은 온라인 '함정수사' 방법을 기본으로 동작한다. 허니팟은 나쁜 사람들을 꾀어내고 거기서 실제 사용 중인 네트워크에 위험을 주는 일 없이 그들이 무엇을 하는지 추적할 수 있다. 이 방법은 인기를 얻어 허니블로그(honeyblog)라는 블로그 사이트도 있다.허니팟 컴퓨터는 네트워크의 일부처럼 보이지만, 사실 분리되어 있고 보호되어 있기 때문에 그 컴퓨터를 해킹하려는 침입자들은 네트워크의 다른 부분에 접근할 수 없다. 허니팟의 가장 매력적인 점은 그 안에 저장되어 있는 정보들이다. 이 정보들은 해커들이 관심 있어 하는 민감하거나 비밀 파일처럼 보이도록 되어 있다. 허니팟은 빈틈없이 모니터링 하여, 침입자들은 초기에 발각될 수 있고 어디에서 침입했는지 추적할 수 있다.허니팟은 실제 사용 중인 네트워크로부터 해커들을 떼어 놓을 수 있기 때문에 해커들의 주의를 딴 데로 뺏으려는 두 번째 목적도 수행할 수 있다.허니팟, 허니넷 설치침입 탐지 혹은 방지 전략에 '허니' 전략을 추가하기로 했으면, 다음의 몇 가지 사항을 결정해야한다.* 허니팟/허니넷을 네트워크 어디에 둘 것인가?* 단독 허니팟을 설치할 것인가? 혹은 여러 대의 허니넷을 설치할 것인가?* 실제 물리적인 컴퓨터 가상화 소프트웨어를 사용할 것인가 혹은 허니팟을 목적으로 여러 대의 컴퓨터를 에뮬레이션 하는 특수한 허니팟 소프트웨어를 사용할 것인가?허니팟 설치 방법허니팟을 내부 네트워크에 설치할 수 있지만, 일반적인 내부 네트워크는 인터넷으로 부터의 공격을 막도록 되어 있을 것이다. 그러나 내부 허니팟도 랜 내부에서의 공격을 검출하는데 유용하다. 만약 내부 허니팟이 인터넷으로 공격당하면, 이는 네트워크 주변 보안에 문제가 있는 것을 뜻하며, 만약 허니팟은 충분히 주의를 끌었다면 그런 문제 상황에서도 중요한 내부 서버가 처음으로 공격당하는 것을 막을 수 있다.많은 기관은 인터넷에 허니팟이 바로 연결되어 있다. 이는 쉽게 공격당할 수 있고 많은 침입 정보를 쌓게 된다. 그러나 이런 허니팟은 노련한 해커들에게 의심을 살 수도 있게 된다.대부분의 일반적인 방법은 인터넷과 내부 랜 사이에 위치하며 파이어월로 보호받는 DMZ나 네트워크 주변에 허니팟을 설치하는 것이다.허니팟이나 가상 허니팟 컴퓨터는 다른 일을 하지 않는 단독 시스템이어야만 한다.허니넷 키우기작은 회사에서는 단독 허니팟 서버로 충분하다. 회사의 규모가 커지고 허니팟을 이용하여 침입자들을 잡는데 익숙해지면, 허니팟 네트워크 즉 허니넷을 만들 수 있다. 이를 위해 여러 대의 실제 컴퓨터를 구입하는 것은 비용이 많이 들 수 있다. 하지만, 대신 공격당하길 기다리고 있는 여러 대의 서버를 가진 것처럼 보이도록 VMWare나 MS의 Virtual PC/Virtual Server와 같은 가상화 소프트웨어를 이용할 수 있다. 각 가상 컴퓨터는 각각의 IP 주소를 가지고 있으며 다른 VM에 다른 OS를 동작시킬 수 있다. 따라서 스패머들을 꾀어내는 가상 이메일 서버를 만들 수도 있다. 단, OS에 따라 가상 서버를 위한 OS 라이선스 비용을 지불해야할 필요가 있다.허니넷에 802.11 무선 AP 연결도 추가 할 수 있다. 무선 네트워크는 자동차를 타고 다니며 무선 연결에 접속하는 사람들의 좋은 목표가 되기 때문에, 허니WAP은 공짜 무선 네트워크를 찾으려는 사람들을 꾀어내고 혼란스럽게 만들 수 있다. 블랙 알케미 엔터프라이즈(Black Alchemy Enterprises)의 페이크AP(FakeAP)는 리눅스에서 동작하는 오픈 소스 프로그램이고 53,000개의 가짜 AP를 만들 수 있게 해준다. 이는 http://www.blackalchemy.to/project/fakeap/ 에서 다운 받을 수 있다.허니팟 소프트웨어함정을 만들기 위해 사용할 수 있는 다른 허니팟이나 허니넷 소프트웨어는 다음과 같다. * Honeyd는 리눅스에서 실행되는 데몬이며 다른 OS나 서비스를 수행하고 있는 것처럼 보이도록 설정할 수 있는 가상 호스트를 만든다. 단일 컴퓨터는 65,000 대 이상의 네트워크 연결된 컴퓨터를 에뮬레이션 할 수 있으며 가상 컴퓨터들에 ping이나 traceroute를 할 수 있다. 여기에서 자세한 내용과 다운로드를 받을 수 있다. 윈도우 버전도 존재한다.* HoneyBOT은 네트워크에 1000개 이상의 공격 받기 쉬운 서비스를 만들어 낼 수 있고 공격자 및 침입자들의 시도를 잡아내어 로그 정보를 남긴다. 윈도우 2000 이상에서 동작하고 아토믹 소프트웨어 솔루션에서 무료로 제공하고 있다.* NetBait는 가상 네트워크를 만들고 침입자들을 실제 네트워크에서 가상 네트워크로 떼어 놓는다. 특히 중소 규모의 조직에서 부터 대규모 조직까지 지원이 가능하다. 이전 버전은 웹 기반의 사이트 외부 서비스였으며 그 후 버전은 사이트 내부 솔루션으로 동작한다. 다음에서 상세한 내용을 볼 수 있다.* Honeywall은 허니넷을 설치하는데 사용되는 CD-ROM이며 허니넷 프로젝트(Honeynet Project)에서 다운 받을 수 있다.허니넷 프로젝트에 좀 더 관심이 있으면 특별한 서버나 서비스를 에뮬레이션 하는 다음 소프트웨어를 사용할 수 있다.* Spampot은 릴레이 기능을 열어놓은 가짜 SMPT 서버를 에뮬레이션 한다. 다음에서 다운 받을 수 있다.* ProxyPot은 열려있는 프록시를 에뮬레이션하고 스패머들을 가로막도록 만들어졌다.* Sandtrap은 열려있는 모뎀을 에뮬레이션하고 이를 이용하려는 공격자들을 찾아내고 수신자 ID와 로긴 시도 정보를 남긴다.@