Peter Titov

TOR 出口节点监控概述

如何检测网络中的 TOR 活动

6 分钟阅读启用
TOR 出口节点监控概述

监控 TOR 出口节点活动为何重要

在当今复杂的网络安全环境中,主动威胁检测中最容易被忽视但又最关键的因素之一就是监控 TOR(洋葱路由器)出口节点的活动。TOR 可以实现匿名通信,在满足合法隐私利益的同时,也为网络犯罪分子、恶意软件活动和数据外流提供了掩护。

什么是 TOR 出口节点?

TOR 出口节点是 TOR 网络中的最终中继点,加密流量从这里出口到开放互联网。如果用户通过 TOR 匿名浏览网页,他们访问的网站或服务将看到出口节点的 IP 地址,而不是用户的实际 IP 地址。

换句话说,如果没有 TOR 网络的合作,从 TOR 出口节点发出的任何网络流量都无法追踪到其来源,而这在设计上是不可能的。

您为什么需要重视?

虽然并非所有 TOR 活动都是恶意的,但大量恶意流量使用 TOR 来掩盖其来源。原因就在这里:

  1. 匿名侦察:攻击者经常从 TOR 出口节点进行扫描和探测。如果有人正在使用 TOR 映射您的基础架构,他们可能在匿名的情况下准备入侵您的基础架构。

  2. 指挥与控制 (C2) 通道:许多恶意软件家族使用 TOR 进行 C2 通信,因此很难将受感染的终端追溯到其控制者。

  3. 数据外渗:TOR 是将敏感数据渗出组织的常见渠道。如果敏感文件正在通过 TOR 上传到外部端点,您可能已经受到了威胁。

  4. 合规风险:某些行业(如医疗保健、金融)需要严格的数据处理和访问控制。允许或忽略 TOR 发起的流量可能会违反这些政策或行业规定。

您应该查找 TOR 出口节点与您的计算机之间的任何互动:

  • host.IP
  • server.IP
  • destination.IP
  • source.IP
  • client.IP

这可能发生在防火墙、DNS、代理、端点代理、云访问日志等日志中。

如何监控 TOR 出口节点

为了收集、监控、警报和报告 TOR 出口节点的活动,我们必须首先创建几个组件,即创建索引模板和摄取管道。然后,我们将每隔 1 小时访问 TOR API 端点,请求最新的详细信息。

如果您想了解更多有关 TOR 监控选项的信息,请点击此处。如果您想了解有关 TOR 项目的更多信息,请点击此处

采集管道

首先,让我们创建一个 Ingest Pipeline,在将数据写入索引之前完成最后一点解析工作。在 DevTools 中,只需应用以下内容:每个处理器都有说明;如果您想进一步了解每个处理器的功能及其相关条件(如果存在),请点击此处。

您的屏幕可能是这样的

您可以在GitHub 上找到摄取管道。

索引模板

接下来,我们需要创建索引模板,以确保字段映射正确。

仍在 DevTools 中,像完成摄取管道一样提交以下请求。您可以通过 GitHub 上的链接找到索引模板。

请注意索引模板的优先级;我们将其设置为更高的数字,以便该模板优先于默认的 logs-*-* 模板。在下面的步骤中,你会注意到我们在数据收集配置中设置了摄取管道,我们也可以在这里应用它作为保障措施,以确保数据通过该管道写入。

弹性代理政策

加载了这两个项目后,我们现在可以导航到舰队,选择要安装集成的 "代理策略"。

在您希望安装 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 文件中,您仍然需要添加输出部分。

查看数据

现在,您已经完成了摄取管道和代理集成的配置,可以在 "发现 "视图中看到 TOR 节点。在这里,您可以创建规则、可视化、仪表板等,帮助随时了解 TOR 在网络上的使用情况。

下一步该怎么做?

该索引命名规则的好处在于,它将自动与 Elastic SIEM 中的 Threat Intel IP Address Indicator Match 规则配合使用。

不过,您可能需要利用本集成提供的一些丰富信息来制定自己的规则;这尤其取决于节点观测环境的类型。由于该索引丰富了大量基于地理位置的数据,因此现在是查看 Kibana 中某些地图功能的绝佳时机。

分享这篇文章