Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/cred-club/artif
危害指标 (IOC) 管理侦察威胁源与聚合器漏洞分析信息收集威胁情报入侵检测日志分析
GitHubcred-club/artif

ARTIF

一个先进的实时威胁情报框架,基于IP信誉和历史数据识别威胁和恶意网络流量。

查看仓库
249343年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

ARTIF

logo

ARTIF 是一个先进的实时威胁情报框架,它在 MISP 之上增加了一个抽象层,用于基于 IP 声誉和历史数据识别威胁和恶意网络流量。它还通过收集、处理和关联基于不同因素的可观测指标,执行自动丰富和威胁评分。

ARTIF 的关键特性包括:

  • 评分系统:为 IP 地址添加威胁元数据,包括威胁评分,可作为安全团队采取行动的阈值。
  • 容器化:ARTIF 使用容器部署,因此易于部署。
  • 模块化架构:项目基于插件,只需修改 MISP 中的威胁源即可轻松扩展。由于这些是内联更新,实际服务不会停机。
  • 警报:扩展功能,与 Slack 无缝集成以实现主动警报。同时提供更好的攻击分析和可视化。

一些用例:

  • 威胁检测
  • 日志记录和监控
  • 用户画像
  • 报警自动化

为什么使用 ARTIF? 它是实时威胁情报框架,即使 IP 不在 MISP 中也能帮助识别恶意 IP。这有助于组织建立第一道防线,提供到达其服务器的恶意网络流量的透明度。

  • 默认配置 52 个开源威胁源,包含 0.7M 个 IP 地址的数据库。
  • 延迟约 180 毫秒,比商业产品快 10 倍以上。
  • 历史 IP 被存储用于分析,并基于过去记录和模式用于评分。
  • 为每个 IP 添加评分以及其他元数据。

前提条件

  • 什么是 MISP 以及如何安装?

摘自 MISP:MISP 是一个开源软件解决方案,用于收集、存储、分发和共享关于网络安全事件分析和恶意软件分析的网络安全指标和威胁。MISP 由事件分析师、安全和 ICT 专业人员或恶意软件逆向工程师设计和使用,支持他们日常高效共享结构化信息。

MISP 可以通过源代码或预构建的 AWS 镜像安装。更多关于 MISP 安装的信息请访问其网站。

  • 我们需要订阅 maxmind 以填充 IP 的元数据。 要添加您的子密钥,请编辑 docker-compose.yaml
root@kitploit:~
  maxmind:
    image: maxmindinc/geoipupdate
    environment: 
      GEOIPUPDATE_ACCOUNT_ID: xxxxx
      GEOIPUPDATE_LICENSE_KEY: xxxxxxxxxxxxxx

安装

  1. 使用 git 克隆仓库或下载 zip 文件。
root@kitploit:~
git clone https://github.com/CRED-CLUB/ARTIF/
  1. 将工作目录更改为 ARTIF 文件夹并构建 Docker,然后启动 Docker 容器。
root@kitploit:~
sudo docker-compose build
sudo docker-compose up
  1. 设置 MISP 并访问 MISP 仪表板以获取 MISP 密钥。现在编辑 config.yaml 并添加 MISP_KEY 和 MISP_URL 值。这里 MISP_KEY 是您 MISP 的 API 密钥,MISP_URL 是 MISP 托管的 URL。

下面是一个 config.example.yaml 供您参考。只需将相应的值替换为您自己的值。

root@kitploit:~
credentials:
        MISP_URL: "https://127.0.0.1"
        MISP_KEY: "qwertyuiopasdfghjk"
  1. 现在运行以下命令,使用 -s 参数指明 update_check.py 的完整绝对路径
root@kitploit:~
python3 /home/user/ARTIF/ip_rep/feed_ingestor/update_check.py -s
  1. 现在运行相同命令,不带 -s 参数。
root@kitploit:~
python3 /home/user/ARTIF/ip_rep/feed_ingestor/update_check.py
  1. 使用 Django 内置支持添加 crontab,运行以下命令
root@kitploit:~
python3 manage.py crontab add
  1. 从 ip_rep 目录启动 Django 服务器。
root@kitploit:~
python3 manage.py runserver

这将打开端口 8000,可用于获取 IP 地址的元数据。现在您可以尝试获取任意特定 IP 的威胁评分。

root@kitploit:~
curl 127.0.0.1:8000/ip/?ip=x.x.x.x

输出为

root@kitploit:~
{"is_IoC": false, "is_Active": false, "metadata": {"asn": "AS165**", "country": "XXX", "org": "XXX"}, "score": 80.14671726301682, "description": "XXX", "blacklists": "", "type": "", "historical":false, "verdict": "No action needed"}

分数高表示该 IP 的风险较低。分数越高,非恶意 IP 的可能性越大。

注意: 安装 ARTIF 建议使用 8GB RAM 的实例。

设置 Docker 容器

docker

启动 ARTIF

artif


添加自定义源

ARTIF 支持与 MISP 同步。它同步 MISP 源,从 settings.yaml 中获取最新配置,并且 MISP 中所有新修改的事件都会反映在 settings.yaml 中。要添加新 IP,只需登录 MISP 并点击添加源页面。一旦添加 IP,cronjob 将根据其调度定期获取并自动处理。

技术细节

ARTIF 作为一个威胁框架,对于组织内部流量的可视化非常有用。它完全用 Python 编写,从多个源收集 IP 的情报。然后,它将此数据发送给关联引擎,该引擎生成威胁评分,其中历史数据也是威胁评分计算考虑的因素之一。

每次新 IP 访问服务时,都会分配一个 celery worker 任务,通过与关联引擎协调来更新其在数据库中的评分,关联引擎进而从多个来源收集数据。为确保数据不是过时的(默认 "过时时间" 值为 24 小时),我们为数据库中每个在过去 "过时时间" 内未更新的 IP 运行一个 worker。与其他参数一样,该值也是可配置的。由于威胁评分计算是这一切的关键,我们非常重视它。除了众所周知的威胁源如 MISP、Cortex、Alien Vault、VirusTotal 和流行的 IP 黑名单外,我们还可以根据业务和安全用例添加自定义源,其中客户忠诚度也可作为威胁评分计算的参数。

为了便于配置,ARTIF 需要以下输入来运行:

  • MISP 实例中的源
  • 用于与 MISP 实例通信的 MISP 密钥
  • 使用 MISP 密钥连接到 MISP 实例的 MISP URL

运行后,数据被处理并存储在 MongoDB 容器中。MongoDB 容器包含三个重要的数据库,其中存储了源中 IP 的信息以及其元数据,例如国家/ASN、组织等。如果在数据库中找不到该 IP,则表示它是一个新到达服务器的 IP,其信息不在 MISP 中。然后我们使用算法和各种其他参数(如地理定位、ASN 和组织)为特定 IP 计算风险评分。有关评分引擎的更多信息,请参见此处。

ARTIF 还具有跟踪旧源的附加功能。默认配置每 24 小时补充最新源。24 小时后,旧源被移动到另一个集合中,并添加最新源。为方便操作,我们在输出中添加了一个名为 "historical" 的字段,指示该 IP 是否曾属于恶意 IP。false 表示该 IP 最近才被添加到源中,而 true 表示该 IP 已存在于旧源中,因此是历史上恶意的 IP。

所有历史 IP 将在 7 天后从数据库中删除(默认)。

arch

使用/示例

您需要使用 update_check.py 来调用 ARTIF,它是 ARTIF 的核心。

root@kitploit:~
ubuntu@localhost:~/ARTIF/ip_rep/feed_ingestor$ python3 /home/user/ARTIF/ip_rep/feed_ingestor/update_check.py -h
usage: update_check.py [-h] [-s [S]] -k [KEY] -m MISP

IP reputation program

optional arguments:
  -h, --help            show this help message and exit
  -s [S]                Required only for the first run

您也可以运行以下命令查看 cron 作业:

root@kitploit:~
python3 manage.py crontab show

这将自动更新源。默认情况下,每 24 小时它会检查 MISP 获取最新源,并用新 IP 补充数据库。超过 7 天的 IP 也会由调度器删除。


常见问题

我尝试运行 update_check.py,但遇到标签相关错误,提示标签已存在/已删除。如何解决?

您可以安全地忽略它,因为这种情况发生在标签已经存在而我们尝试添加它时。在这种情况下,它会给出上述错误,因此无法删除标签。MISP 没有捕获这些异常的方法,因此我们只能依赖这种方式。

这花费了太长时间。什么时候能完成?

这确实需要时间,有时从 30 分钟到 90 分钟不等,具体取决于您的网速和 RAM。这本质上是将所有源下载到 MongoDB 并进行处理,因此会花费时间,而且这是一次性的工作。

我按照步骤操作,但 MongoDB 仍然没有数据。

解决方案:在这种情况下,运行不带 -s 参数的 update_check.py 文件。这将从源中下载所有 IP。此错误通常发生在 update_check.py 的初始阶段被中断时。

未来路线图

  • 与 ARTIF 集成应用防火墙支持,基于威胁评分自动阻止恶意 IP。
  • 通过 UI 仪表板以图形化形式展示指标,更好地可视化威胁。

许可证

MIT

贡献

欢迎贡献! 请参阅 contributing.md 了解参与方式。请遵守本项目的 code of conduct。

与团队沟通

与团队沟通最简单的方式是通过 GitHub Issues。

请提交新的问题、功能请求和建议,但在创建新问题之前,请搜索类似已开放/已关闭的问题。


作者

  • Divyanshu Mehta
  • Avinash Jain
  • Govind Menon

致谢

  • MISP
  • Maxmind
下载工具