运用大语言模型实现暗网情报自动化采集与分析

55 阅读5分钟

运用大语言模型实现暗网情报自动化

在我的上一篇博客中,我们讨论了TOR(地下网络:Tor与匿名技术),包括它是什么、如何工作以及实际使用方法。随着人工智能几乎融入各个领域,我最近发现了一些利用AI来浏览暗网的工具。今天,我们将看到Robin如何结合网络爬虫和LLM模型从暗网中获取洞见。

TOR本质上是互联网的一个隐藏层,主要涉及非法市场和隐秘的威胁行为者。然而,对于网络安全学生和专业人士来说,它是威胁情报的重要来源。挑战何在?导航暗网非常困难。在“腐烂洋葱”(失效的中继节点)和海量的执法部门蜜罐之间,寻找可操作的情报变成了一个缓慢、手动且繁琐的过程。

一款名为 Robin 的新开源工具旨在改变这种状况。通过将大语言模型(LLM)与专门的爬虫技术相结合,Robin实现了对暗网内容的自动化发现与分析。

为何暗网研究如此困难

在深入了解该工具之前,我们先谈谈为什么在暗网中导航感觉就像在一个不断自我重组的房间里寻找一根针。

暗网(特别是Tor网络)运行在一种称为洋葱路由的机制上。(基础概念请参考之前的博客)

以下是使其如此令人沮丧的原因:

  1. 延迟与不稳定性:你的数据会经过三个节点:入口节点、中间中继和出口节点。每一跳都会显著降低速度。事实是,其中一些中继实际上运行在人们地下室的备用树莓派上。只要一个节点崩溃或离线(这经常发生),你的整个连接就会中断。
  2. 短暂性,稍纵即逝:与合法网站24/7在线不同,犯罪市场和论坛按照自己不可预测的时间表运行。一个网站可能一周上线两天,然后消失五天,全是为了躲避执法。你可能花费数小时试图访问一个已经不存在,或者要到下周二才重新出现的网站。
  3. 信噪比问题:搜索类似“勒索软件”的内容,你会被成千上万的结果淹没。听起来很有希望,对吧?错了。大约90%是死链、精心设计的骗局或是等待记录你访问的执法蜜罐。寻找真正、可操作的情报意味着要在一片垃圾的海洋中艰难跋涉。

Robin登场

Robin如何工作

  1. 查询优化:当你输入“Conti”这样的关键词时,Robin会使用LLM(OpenAI、Anthropic,甚至是本地的Llama 3.1模型)来扩展和优化该查询,生成更有效的搜索词。
  2. 多引擎搜索:它通过Tor网络同时查询多个暗网搜索引擎。
  3. AI过滤:从900多个结果中,Robin使用AI识别出最相关的20-30个链接,丢弃噪音。
  4. 自动化爬取与摘要生成:它访问这些链接,抓取HTML内容,并提供所发现内容的Markdown格式摘要,包括加密货币地址、威胁行为者别名和潜在的漏洞利用信息。

技术设置

要运行Robin,你需要一个Linux或macOS环境(Windows用户可以使用WSL2)。该工具使用Docker进行容器化,确保所有依赖项(如用于爬取的Python Beautiful Soup库)都能自动处理。

步骤 1: 安装

首先,确保已安装Tor和Docker。

sudo apt install tor
snap install ollama
docker --version

# 从GitHub克隆
git clone https://github.com/apurvsinghgautam/robin.git
cd robin

# 验证文件
ls -la
# 应看到: .env.example, Dockerfile, requirements.txt 等

步骤 2: 环境配置

你需要设置你的API密钥。Robin很灵活;你可以使用基于云的AI,或者如果你处理敏感数据且不想将查询泄露给第三方,也可以完全使用本地的 Ollama。对于Ollama,如果使用docker镜像方法运行,请提供 http://host.docker.internal:11434 作为Ollama URL;对于其他方法,则使用 http://127.0.0.1:11434

# 启动Ollama服务
ollama serve

# 在新终端中,拉取模型
ollama pull llama3.1

# 验证模型可用
ollama list

# 检查Ollama是否运行在11434端口
curl http://localhost:11434
cp .env.example .env
nano .env

# 在此添加你的OpenAI或Ollama基础URL
OPENAI_API_KEY=your_openai_api_key
ANTHROPIC_API_KEY=your_anthropic_api_key
GOOGLE_API_KEY=your_google_api_key
OLLAMA_BASE_URL=your_ollama_url

步骤 3: Docker构建

sudo docker build -t robin .

步骤 4: 通过Docker运行Robin

docker run --rm \
  -v "$(pwd)/.env:/app/.env" \
  --add-host=host.docker.internal:host-gateway \
  -p 8501:8501 \
  apurvsg/robin:latest ui --ui-port 8501 --ui-host 0.0.0.0

完成后,你将看到类似这样的结果。你可以访问这些链接查看数据,甚至可以下载Markdown格式的文件。

通过将LLM与专门的爬虫技术相结合,它将曾经繁琐、手动的过程转变为一个真正有效的自动化工作流程。

暗网不会消失,从中产生的威胁也不会。但有了像Robin这样的工具,我们终于能够更好地照亮那些阴影,使威胁情报收集更高效、更易于获取。

然而,像Robin这样的工具是双刃剑。它们在为防御者提供更好的威胁情报的同时,也降低了恶意行为者的入门门槛。我们有责任在道德和法律范围内使用如此强大的技术。

所以,真正的问题不是我们能否用AI探索暗网,而是我们如何选择使用它。在网络安全领域,这个选择比工具本身更重要。 CSD0tFqvECLokhw9aBeRqinW6MqQt7xhyiUgATX9bzLQH9MaRrW8fWIGqiiHFi1rgZMVAHHbTn+TP0gMXYUeoVAVhfkeHmHRX+5dlvwFPlT6rDSf7FrpvD5YVpeOKFWqDpzybHEeJ/QPxAJKMM5vQw==