허니팟

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

허니팟은 사이버 공격을 방지하기 위한 기술로, 공격자를 유인하여 공격 정보를 수집하고 대응 시간을 확보하는 데 사용된다. 허니팟은 물리적 또는 가상 시스템 형태로 존재하며, 배포 및 관여 수준, 설계 기준에 따라 다양한 유형으로 분류된다. 허니팟은 악성코드, 스팸, 데이터베이스 공격, 산업 제어 시스템 등 특정 목적에 맞게 설계될 수 있으며, 여러 허니팟을 연결한 허니넷 형태로 운영되기도 한다. 하지만 허니팟은 공격자가 운영 시스템을 침투하는 데 사용될 수 있으며, 합법적인 사용자를 유인할 수 있다는 위험성도 존재한다.

허니팟
개요
종류컴퓨터 보안 메커니즘
목적공격 유인, 공격 분석, 시스템 보호
작동 방식공격자가 흥미를 느낄 만한 가짜 시스템 또는 취약점을 만들어 공격을 유도하고, 공격자의 활동을 감시 및 분석함
특징
장점공격 분석을 통한 보안 강화
실제 시스템 피해 방지
오탐 감소
단점유지 관리의 복잡성
공격자에 의해 우회될 가능성
잘못된 정보 수집 가능성
유형
상호 작용 수준저대응 허니팟: 간단한 서비스 에뮬레이션, 설치 및 유지 관리 용이, 정보 수집 제한적
고대응 허니팟: 실제 운영체제 및 애플리케이션 사용, 더 많은 정보 수집 가능, 보안 위험 증가
배치 목적연구용 허니팟: 공격 트렌드 및 새로운 공격 기법 연구
생산용 허니팟: 네트워크 방어 및 위협 감지
아키텍처
순수 허니팟실제 시스템, 완벽한 활동 로그 기록, 높은 위험 부담
가상 허니팟가상 머신에서 실행, 위험 감소, 리소스 효율적 사용
활용
탐지 대상맬웨어, 스팸 발송자, 무단 접근 시도 등
활용 분야네트워크 침입 탐지 시스템 (NIDS)
침입 방지 시스템 (IPS)
보안 연구
기타
참고데미안 브래디
랜스 스피츠너
닐 프로보스
📚 더 읽어볼만한 페이지
  • 네트워크 보안 - 스파이웨어
  • 네트워크 보안 - 가상 사설 서버
    가상 사설 서버(VPS)는 공유 웹 호스팅과 전용 호스팅의 중간 단계 서비스로, 가상화 기술을 기반으로 슈퍼유저 수준의 접근 권한, 높은 운용 자유도와 향상된 보안성을 제공하지만, 환경 유지 관리 필요성, 상대적으로 높은 비용, 회선 공유 문제 등의 단점도 가진다.

2. 역사

초창기 개념은 "미끼"라고 불렸으며, FIPS 39 (1976)에서 "침투 시도를 감지하거나 침입자가 어떤 결함을 이용해야 할지 혼란스럽게 만들 목적으로 시스템에 명백한 결함을 의도적으로 심는 것"으로 정의된다.

클리포드 스톨은 1989년 저서 뻐꾸기 알에서 가장 초창기 허니팟 기법을 묘사했다.

1991년 1월 7일, AT&T 벨 연구소에서 근무하던 체스윅은 크래커가 암호 파일 사본을 얻으려고 시도하는 것을 관찰했다. 그는 동료들과 함께 공격자를 몇 달 동안 관찰할 수 있도록 "chroot "Jail" (또는 "바퀴벌레 모텔")"을 구축했다. 이는 사이버 보안에서 허니팟을 사용한 가장 초창기 사례 중 하나이다.

2017년, 네덜란드 경찰은 허니팟 기술을 사용하여 다크넷 마켓 한사 사용자를 추적했다.

꿀에 이끌린 곰이 꿀을 훔치는 비유는 게르만, 켈트, 슬라브를 포함한 많은 전통에서 흔히 사용된다. 곰을 지칭하는 흔한 슬라브어 단어는 medved "꿀 먹는 자"이다. 곰이 꿀을 훔치는 전통은 특히 잘 알려진 곰돌이 푸를 비롯한 이야기와 민속을 통해 전해져 내려왔다.

3. 기술적 방법

일반적인 허니팟 기술은 운영체제(OS)나 응용 프로그램에 취약점을 남겨 공격받는 부분, 공격으로 인해 외부로의 발판이 되지 않도록 통신을 제어하는 기술, 공격자의 무단 접근으로 변경된 점을 감지하는 기술로 구성된다. 또한, 허니팟과 별도로 통신 로그를 기록하는 것도 중요하다.

CPU나 네트워크 리소스를 제공하는 컴퓨터는 해커에게 좋은 공격 대상이 되므로, 내부 자원이나 정보를 얻으려고 공격을 시도한다. 그러나 해당 컴퓨터에 미리 장치를 해두고, 특정 호스트로부터의 통신이 집중되면 "유지 보수를 위해 10분 후에 종료됩니다"라는 메시지를 내보내 통신을 잠시 차단하거나, (가상의) 사용자가 다수 이용하는 것처럼 보이게 하여 극단적으로 반응 속도를 늦추기도 한다. (이와 동시에, 외부에는 알려지지 않도록 통신 로그를 계속 기록한다.) 이렇게 하면 해커는 더욱 내용이 궁금해져, 이후에는 이 서버의 내용만 보려고 열중하게 된다.

이메일의 제3자 중계를 허용하는 설정으로 보이게 하는 방법도 있다. 실제로는 로그만 출력하도록 하고, 제3자 중계를 허용하는 것처럼 보이게 하면, 스팸 발신자가 흥미로운 발자취를 남길 수도 있다. 또한, 모두 가상의 이메일 주소로 설정된 메일링 리스트를 준비해두면, 그쪽으로도 스팸 메일을 보내려고 할 것이다.

이러한 기능을 통합적으로 제공하는 소프트웨어 제품도 판매되고 있다.

4. 유형

허니팟은 구현 방법에 따라 다음과 같이 나눌 수 있다.

👆
좌우로 밀어서 보기
구분설명장점단점예시
고도화형
(하이 인터랙션)
실제 취약점을 가진 OS나 애플리케이션을 사용한다.상세한 정보 획득 가능침입 시 위험 부담이 큼허니넷
특정 용도 특화형
(로우 인터랙션)
특정 OS나 애플리케이션을 에뮬레이션하여 감시한다.비교적 안전정보량 제한Honeyd, Spector, GHH, mwcollect
가상 머신 구성VMware나 Xen 등 가상 머신으로 구성한다.위험 억제, 관리 용이침입자가 허니팟임을 감지할 가능성 존재
집중 관리형원격지 허니팟 데이터를 집중 관리, 분석한다.데이터 집중 관리 및 분석
원격 감시형GRE 등으로 전송된 통신을 수집하여 감시한다.침입 위험 분산, 원격 감시 가능전송 지연, 침입자에게 허니팟 팜 노출 가능성


슈가케인은 오픈 프록시로 위장한 허니팟이다. 잘못 구성된 HTTP 프록시처럼 보이도록 설계된 서버 형태일 수 있다. sendmail (1998년 이전 버전 8.9.0)의 기본 구성이 대표적인 오픈 프록시 예시이며, 모든 대상에게 이메일을 전달했다.

4.1. 물리적 허니팟과 가상 허니팟

허니팟은 물리적인지 가상적인지에 따라 구분할 수 있다.

* 물리적 허니팟: 자체 IP 주소를 가진 실제 시스템으로, 시스템에서 모델링된 동작을 시뮬레이션한다. 이 방식은 새로운 기기 구매, 유지 보수, 특수 하드웨어 구성과 관련된 복잡성으로 인해 비용이 많이 들어 자주 사용되지 않는다.
* 가상 허니팟: 서로 다른 운영 체제에서 네트워크에 호스트를 설치하고 시뮬레이션할 수 있지만, 대상 운영 체제의 TCP/IP를 시뮬레이션해야 한다. 이 방식이 더 일반적이다.

4.2. 배포 및 관여 수준에 따른 분류

허니팟은 배포 및 관여 수준에 따라 다음과 같이 분류할 수 있다.

* 생산 허니팟
* 연구 허니팟

생산 허니팟은 사용하기 쉽고 제한된 정보만 캡처하며 주로 기업에서 사용한다. 생산 허니팟은 조직의 전반적인 보안 상태를 개선하기 위해 다른 생산 서버와 함께 생산 네트워크 내부에 배치된다. 일반적으로 생산 허니팟은 배포하기 쉬운 낮은 상호 작용 허니팟이다. 연구 허니팟보다 공격 또는 공격자에 대한 정보를 적게 제공한다.

연구 허니팟은 다양한 네트워크를 대상으로 하는 블랙 햇 커뮤니티의 동기 및 전술에 대한 정보를 수집하기 위해 운영된다. 이러한 허니팟은 특정 조직에 직접적인 가치를 추가하지 않고, 대신 조직이 직면한 위협을 연구하고 해당 위협으로부터 더 잘 보호하는 방법을 배우는 데 사용된다. 연구 허니팟은 배포 및 유지 관리가 복잡하고, 광범위한 정보를 캡처하며, 주로 연구, 군사 또는 정부 조직에서 사용된다.

설계 기준에 따라 허니팟은 다음과 같이 분류할 수 있다.

* 순수 허니팟
* 높은 상호 작용 허니팟
* 낮은 상호 작용 허니팟

순수 허니팟은 완벽한 생산 시스템이다. 공격자의 활동은 허니팟의 네트워크 링크에 설치된 버그 탭을 사용하여 모니터링된다. 다른 소프트웨어를 설치할 필요가 없다. 순수 허니팟이 유용하지만, 더 제어된 메커니즘을 통해 방어 메커니즘의 은밀성을 보장할 수 있다.

높은 상호 작용 허니팟은 다양한 서비스를 호스팅하는 생산 시스템의 활동을 모방하므로 공격자는 많은 서비스를 사용할 수 있어 시간을 낭비할 수 있다. 가상 머신을 사용하여 여러 개의 허니팟을 단일 물리적 시스템에 호스팅할 수 있다. 따라서 허니팟이 손상되더라도 더 빠르게 복원할 수 있다. 일반적으로 높은 상호 작용 허니팟은 탐지하기 어렵기 때문에 더 많은 보안을 제공하지만, 유지 관리 비용이 많이 든다. 가상 머신을 사용할 수 없는 경우, 각 허니팟에 대해 하나의 물리적 컴퓨터를 유지 관리해야 하며, 이는 과도하게 비쌀 수 있다. 예시: 허니넷 프로젝트.

낮은 상호 작용 허니팟은 공격자가 자주 요청하는 서비스만 시뮬레이션한다. 상대적으로 적은 리소스를 소비하므로 여러 가상 머신을 하나의 물리적 시스템에 쉽게 호스팅할 수 있으며, 가상 시스템은 짧은 응답 시간을 가지고, 코드가 덜 필요하므로 가상 시스템의 보안 복잡성이 줄어든다. 예시: Honeyd. 이 유형의 허니팟은 90년대 후반에 처음 만들어진 유형 중 하나였으며, 주로 공격을 연구하는 것이 아니라 탐지하는 데 사용되었다.

4.3. 설계 기준에 따른 분류

허니팟은 설계 기준에 따라 다음과 같이 분류할 수 있다.

* 순수 허니팟은 완벽한 생산 시스템이다. 공격자의 활동은 허니팟의 네트워크 링크에 설치된 버그 탭을 사용하여 감시한다. 다른 소프트웨어를 설치할 필요가 없다. 순수 허니팟이 유용하지만, 더 제어된 메커니즘을 통해 방어 메커니즘의 은밀성을 보장할 수 있다.

* 높은 상호 작용 허니팟은 다양한 서비스를 호스팅하는 생산 시스템의 활동을 모방하므로, 공격자는 많은 서비스를 사용할 수 있어 시간을 낭비할 수 있다. 가상 머신을 사용하여 여러 개의 허니팟을 단일 물리적 시스템에 호스팅할 수 있다. 따라서 허니팟이 손상되더라도 더 빠르게 복원할 수 있다. 일반적으로 높은 상호 작용 허니팟은 탐지하기 어렵기 때문에 더 많은 보안을 제공하지만, 유지 관리 비용이 많이 든다. 가상 머신을 사용할 수 없는 경우, 각 허니팟에 대해 하나의 물리적 컴퓨터를 유지 관리해야 하며, 이는 과도하게 비쌀 수 있다. 예시: 허니넷 프로젝트.

* 낮은 상호 작용 허니팟은 공격자가 자주 요청하는 서비스만 시뮬레이션한다. 상대적으로 적은 리소스를 소비하므로 여러 가상 머신을 하나의 물리적 시스템에 쉽게 호스팅할 수 있으며, 가상 시스템은 짧은 응답 시간을 가지고, 코드가 덜 필요하므로 가상 시스템의 보안 복잡성이 줄어든다. 예시: Honeyd. 이 유형의 허니팟은 90년대 후반에 처음 만들어진 유형 중 하나였으며, 주로 공격을 연구하는 것이 아니라 탐지하는 데 사용되었다.

4.4. 특수 목적 허니팟

허니팟은 특수한 목적에 따라 여러 종류로 나뉜다.

* 악성코드 허니팟: 악성 소프트웨어를 유인하기 위해 의도적으로 취약하게 만든 시스템이나 네트워크를 모방한다. 이를 통해 악성코드 공격을 유도하고, IT 팀은 악성코드의 출처와 작동 방식을 분석하여 대응할 수 있다.

* 스팸 허니팟: 스패머들이 악용하는 오픈 메일 릴레이나 오픈 프록시와 같은 취약한 자원을 위장하여 스패머 활동을 탐지하고 정보를 수집한다. 스팸 허니팟은 스패머의 IP 주소를 공개하고 대량 스팸 캡처를 제공하여 스패머의 URL 및 응답 메커니즘을 파악하는 데 도움을 준다.

* 데이터베이스 허니팟: SQL 주입 공격을 방어하기 위해 사용된다. 침입자를 함정 데이터베이스로 유인하여 실제 데이터베이스를 보호하고 공격 정보를 수집한다.

* [[산업 제어 시스템]](ICS) 허니팟: 프로그래머블 로직 컨트롤러(PLC)를 대상으로 하는 사이버 공격을 탐지하고 분석하기 위해 사용된다. Conpot은 Siemens PLC를 시뮬레이션하는 낮은 상호 작용 허니팟이고, HoneyPLC는 Siemens, Rockwell 등 다양한 PLC 브랜드를 시뮬레이션하는 중간 상호 작용 허니팟이다.

5. 허니넷

둘 이상의 허니팟이 네트워크 상에서 허니넷을 형성한다. 허니넷은 1999년 허니넷 프로젝트 설립자인 랜스 스피츠너의 "허니팟 구축하기" 논문 발표로 처음 시작되었다.

5.1. 허니넷의 감시 방법

네트워크 상에 둘 이상의 허니팟은 허니넷을 형성한다. 일반적으로 허니넷은 하나의 허니팟으로는 충분하지 않을 수 있는 더 크거나 더 다양한 네트워크를 모니터링하는 데 사용된다. 허니넷과 허니팟은 대개 더 큰 네트워크 침입 탐지 시스템의 일부로 구현된다. 허니 팜은 허니팟과 분석 도구의 중앙 집중식 모음이다.

허니넷은 허니넷 프로젝트에서 제작된 툴이나 IDS, 패킷 캡처를 조합하여 실현된다. 통신의 제어와 감시가 중요하며, 방화벽을 허니팟용으로 설계된 Honeywall을 사용하여 네트워크로 흐르는 트래픽을 제어하고 감시한다. 또한, 허니넷에서 사용되는 고대화형 허니팟에는 lkm-rootkit 기술을 사용한 sebek이라는 툴을 사용하여 침입자의 키스트로크나 암호화되기 전의 통신 내용을 감시한다.

6. 허니팟 탐지

허니팟 탐지 시스템은 스패머가 사용하는 반격 무기이다. 탐지 시스템은 특정 허니팟의 고유한 특성(예: 기본 허니팟 구성의 속성-값 쌍)을 사용하여 허니팟을 식별할 수 있다. 따라서 사용되는 많은 허니팟은 탐지하려는 사람들에게 더 크고 어려운 고유한 특성 집합을 사용한다. "버전 문제"(동일한 소프트웨어의 여러 버전이 서로 약간씩 다름)가 유익할 수 있는 상황이다.

프레드 코헨은 자신의 허니팟을 실행하는 모든 시스템에는 공격자가 허니팟을 탐지하는 데 사용할 수 있는 기만 포트가 있어야 한다고 주장했다. 코헨은 이것이 공격자를 단념시킬 수 있다고 믿는다. 허니팟은 또한 합법적인 위협을 조기에 감지할 수 있게 해준다. 허니팟이 익스플로잇을 감지하는 방식에 관계없이 시도된 공격에 대해 즉시 경고할 수 있다.

가상 머신(VMware나 Xen 등)으로 구성된 허니팟은 호스트를 침입 전 상태로 되돌리는 등, 위험을 억제하거나 관리 측면에서 유효하다. 하지만, 봇의 종류에 따라 가상 머신인지 조사하는 경우가 있어, 가상 머신의 특징을 조사함으로써 허니팟으로 감시하고 있다는 것을 침입자에게 알릴 가능성도 있다. 가상 허니팟은 머신의 컴퓨터 아키텍처, MAC 주소 등을 조사하여 가상 머신으로 감시하고 있는지 확인할 수 있다.

7. 위험 요소

허니팟의 목표는 공격자를 충분히 오랫동안 유인하여 공격 도구 및 전술, 기술 및 절차(TTP)와 같은 높은 수준의 침해 지표(IoC)를 얻는 것이다. 허니팟은 운영 네트워크에서 필수 서비스를 에뮬레이션하고 공격자에게 적대적인 활동을 수행할 수 있는 자유를 부여하여 공격자에 대한 매력을 높여야 한다. 그러나 허니팟은 제어된 환경에서 honeywall과 같은 도구를 사용하여 모니터링할 수 있지만, 공격자는 일부 허니팟을 피벗 노드로 사용하여 운영 시스템을 침투할 수 있다.

허니팟의 또 다른 위험은 대규모 엔터프라이즈 네트워크에서 소통 부족으로 인해 합법적인 사용자를 유인할 수 있다는 것이다. 예를 들어, 허니팟을 적용하고 모니터링하는 보안 팀은 소통 부족 또는 내부자 위협 방지 때문에 모든 사용자에게 허니팟 위치를 적시에 공개하지 못할 수 있다.