Peter Titov

TOR 종료 노드 모니터링 개요

네트워크 내에서 TOR 활동을 탐지하는 방법

6분 읽기활성화
TOR 종료 노드 모니터링 개요

TOR 출구 노드 활동 모니터링이 중요한 이유

오늘날의 복잡한 사이버 보안 환경에서 선제적 위협 탐지에서 가장 간과되지만 중요한 요소 중 하나는 TOR(The Onion Router) 출구 노드 활동을 모니터링하는 것입니다. TOR은 익명의 통신을 가능하게 하며, 합법적인 개인 정보 보호에 도움이 되지만 사이버 범죄자, 멀웨어 캠페인, 데이터 유출을 위한 은신처를 제공하기도 합니다.

TOR 출구 노드란 무엇인가요?

TOR 출구 노드는 암호화된 트래픽이 개방형 인터넷으로 빠져나가는 TOR 네트워크의 최종 중계 지점입니다. 사용자가 TOR을 통해 익명으로 웹을 탐색하는 경우, 사용자가 액세스하는 웹사이트 또는 서비스에는 사용자의 실제 IP 주소가 아닌 출구 노드의 IP 주소가 표시됩니다.

즉, TOR 출구 노드에서 발생하는 모든 네트워크 트래픽은 TOR 네트워크의 협조 없이는 그 출처를 추적할 수 없으며, 이는 설계상 불가능합니다.

왜 Elastic을 선택해야 하는가?

모든 TOR 활동이 악의적인 것은 아니지만, 상당수의 악성 트래픽이 TOR을 사용하여 출처를 숨깁니다. 이것이 중요한 이유는 다음과 같습니다:

  1. 익명화된 정찰: 공격자는 종종 TOR 출구 노드에서 스캔과 프로브를 수행합니다. 누군가 TOR을 사용하여 인프라를 매핑하는 경우, 익명을 유지하면서 침해 시도에 대비하고 있을 수 있습니다.

  2. 명령 및 제어(C2) 채널: 많은 멀웨어 제품군이 C2 통신에 TOR을 사용하기 때문에 감염된 엔드포인트를 컨트롤러로 추적하기가 어렵습니다.

  3. 데이터 유출: TOR은 민감한 데이터를 조직 외부로 유출하기 위한 일반적인 채널입니다. 민감한 파일이 TOR을 통해 외부 엔드포인트에 업로드되고 있다면 이미 감염되었을 수 있습니다.

  4. 규정 준수 위험: 일부 산업(예: 의료, 금융)에서는 엄격한 데이터 취급 및 액세스 제어가 필요합니다. TOR에서 발생한 트래픽을 허용하거나 무시하는 것은 이러한 정책 또는 업계 규정을 위반할 수 있습니다.

TOR 종료 노드 간의 상호 작용을 찾아야 합니다:

  • host.ip
  • server.ip
  • destination.ip
  • source.ip
  • client.ip

이는 방화벽, DNS, 프록시, 엔드포인트 에이전트, 클라우드 액세스 로그 등의 로그에서 발생할 수 있습니다.

TOR 종료 노드 모니터링 방법

TOR 출구 노드 활동을 수집, 모니터링, 알림 및 보고하기 위해서는 먼저 몇 가지 구성 요소, 즉 인덱스 템플릿과 수집 파이프라인을 만들어야 합니다. 그런 다음 매 1시간마다 1 API 엔드포인트에 접속하여 가장 최근의 상세 정보를 요청합니다.

TOR 모니터링 옵션에 대해 자세히 알아보려면 여기를 참조하세요. TOR 프로젝트 전반에 대해 자세히 알고 싶으시다면 여기에서 자세히 알아보세요.

수집 파이프라인

먼저, 데이터가 인덱스에 기록되기 전에 마지막 구문 분석 작업을 수행할 수집 파이프라인을 만들어 보겠습니다. 개발자 도구에는 각 프로세서에 대한 설명이 있으며, 각 프로세서의 기능 및 관련 조건(있는 경우)에 대해 자세히 알고 싶다면 다음을 적용하면 됩니다.

화면은 다음과 같습니다:

수집 파이프라인은 GitHub에서 찾을 수 있습니다.

색인 템플릿

다음으로, 필드가 올바르게 매핑되도록 인덱스 템플릿을 만들어야 합니다.

개발자 도구에서 수집 파이프라인에서 완료한 것처럼 다음 요청을 제출합니다. 색인 템플릿은 GitHub의 이 링크를 통해 찾을 수 있습니다.

인덱스 템플릿의 우선순위를 주목하세요. 이 템플릿이 기본 로그-*-* 템플릿보다 우선하도록 이 수치를 훨씬 높게 설정했습니다. 다음 단계에서 데이터 수집을 위한 구성에서 수집 파이프라인을 설정한 것을 볼 수 있지만, 여기서는 이 파이프라인을 통해 데이터가 기록되도록 하기 위한 안전장치로 이 파이프라인을 적용할 수도 있습니다.

Elastic 에이전트 정책

이 두 항목이 로드되었으면 이제 Fleet으로 이동하여 연동 서비스를 설치할 '상담원 정책'을 선택할 수 있습니다.

TOR 컬렉션을 설치하려는 정책에서 '통합 추가'를 클릭하기만 하면 됩니다.

왼쪽 카테고리 목록에서 '사용자 지정'을 선택한 다음 '사용자 지정 API'를 클릭합니다.

오른쪽 상단의 파란색 '사용자 지정 API 추가' 버튼을 클릭합니다.

통합의 제목은 원하는 대로 지을 수 있지만, 이 예에서는 'TOR 노드 활동'을 사용하겠습니다.

다음 필드를 입력합니다:

데이터 세트 이름:
ti_tor.node_activity

수집 파이프라인:
logs-ti_tor.node_activity

요청 URL:
https://onionoo.torproject.org/details?fields=exit_addresses,nickname,fingerprint,running,as_name,verified_host_names,unverified_host_names,or_addresses,last_seen,last_changed_address_or_port,first_seen,hibernating,last_restarted,bandwidth_rate,bandwidth_burst,observed_bandwidth,flags,version,version_status,advertised_bandwidth,platform,recommended_version,contact

요청 간격:
60m

요청 HTTP 메서드:
GET

응답 분할:
target: body.relays

그런 다음 "> 고급 옵션"을 클릭하여 확장하고 조금 더 아래로 스크롤해야 합니다.

필요한 프로세서 스니펫은 GitHub에서 복사할 수 있습니다.

이제 "저장하고 계속하기" 버튼을 클릭하면 몇 분 후에 로그-*역주: 색인-에서 TOR 노드 활동을 확인할 수 있습니다!

Filebeat 설치 옵션

Elastic-Agent를 사용하지 않고 Filebeat를 통해 수집하려는 경우에도 괜찮습니다! 위의 단계를 사용하는 대신 다음 "filebeat.inputs:"를 활용하면 됩니다. 위와 똑같은 수집 파이프라인과 인덱스 템플릿을 사용할 것입니다! 입력 섹션을 복사하여 filebeat.yml 파일에 붙여넣기만 하면 되지만, 출력 섹션을 추가해야 합니다.

데이터 검토

이제 수집 파이프라인과 에이전트 통합 구성을 완료했으므로, Discover 보기에서 TOR 노드를 볼 수 있습니다. 여기에서 규칙, 시각화, 대시보드 등을 생성하여 네트워크에서 TOR이 어떻게 사용되고 있는지 파악할 수 있습니다.

다음으로 무엇을 할 수 있을까요?

이 인덱스의 명명 규칙에 대한 멋진 점은 이 인덱스가 Elastic SIEM에서 사용 가능한 위협 인텔 IP 주소 표시기 일치 규칙과 함께 자동으로 작동한다는 점입니다.

그러나 특히 노드 관찰 환경의 유형에 따라 이 통합 기능에서 제공되는 풍부한 정보 중 일부를 사용하여 자체 규칙을 만들 수 있습니다. 이 인덱스에는 상당한 양의 위치 기반 데이터가 풍부하게 포함되어 있으므로, 지금이 바로 Kibana 내의 지도 기능 중 일부를 확인해 볼 수 있는 좋은 시기입니다.

이 문서 공유하기