Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

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

工具目录

分类

查看所有分类
Loading categories
aiengine — 可编程数据包检测引擎,具备NIDS、DNS分类、频率分析和自动正则表达式生成功能。支持Python/Ruby/Java/Lua绑定,可与数据库及其他安全工具集成。 | Kitploit
工具/GitHubGitHub/camp0/aiengine
数据包嗅探与分析漏洞分析取证分析网络安全机器学习入侵检测DNS 分析异常检测
GitHubcamp0/aiengine

aiengine

可编程数据包检测引擎,具备NIDS、DNS分类、频率分析和自动正则表达式生成功能。支持Python/Ruby/Java/Lua绑定,可与数据库及其他安全工具集成。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

AIEngine(人工智能引擎)

AIEngine 是新一代交互式/可编程的 Python/Ruby/Java/Lua 数据包检测引擎,具备无需人工干预的学习能力、NIDS(网络入侵检测系统)功能、DNS 域名分类、网络收集器、网络取证等众多功能。

本项目实际托管于 https://bitbucket.org/camp0/aiengine

AIEngine 还能帮助网络/安全专业人士识别流量,并开发签名,用于 NIDS、防火墙、流量分类器等场景。

AIEngine 的主要功能包括:

  • 支持在引擎运行时与用户进行交互/编程。
  • 支持 PCRE JIT 进行正则匹配。
  • 支持正则图(复杂检测模式)。
  • 支持五种网络栈(lan、mobile、lan6、virtual 和 oflow)。
  • 支持集合和布隆过滤器用于 IP 搜索。
  • 支持 Linux、FreeBSD 和 MacOS 操作系统。
  • 支持 HTTP、DNS 和 SSL 域名匹配。
  • 支持 HTTP、DNS、SMTP 和 SSL 的禁用域名和主机。
  • 对未知流量进行频率分析并自动生成正则。
  • 生成 Yara 签名。
  • 易于与数据库(MySQL、Redis、Cassandra、Hadoop 等)集成,用于数据关联。
  • 易于与其他数据包引擎(Netfilter)集成。
  • 支持内存清理缓存,以刷新存储的内存信息。
  • 支持在网络/应用层检测 DDoS。
  • 支持拒绝 TCP/UDP 连接。
  • 支持实时网络取证。
  • 支持的协议包括:Bitcoin、CoAP、DHCP、DNS、GPRS、GRE、HTTP、ICMPv4/ICMPv6、IMAP、IPv4/v6、Modbus、 MPLS、MQTT、NTP、OpenFlow、POP、RTP、SIP、SMTP、SSDP、SSL、TCP、UDP、VLAN、VXLAN。

使用 AIEngine

要使用 AIEngine(精简版本),只需执行二进制文件 aiengine 或使用 python/ruby/java/lua 绑定。

luis@luis-xps:~/c++/aiengine/src$ ./aiengine -h
aiengine 1.5
必选参数:
  -I [ --input ] arg                设置网络接口、pcap 文件或包含 pcap 文件的目录。

链路层可选参数:
  -q [ --tag ] arg      选择以太网层的标签类型(vlan、mpls)。

TCP 可选参数:
  -t [ --tcp-flows ] arg (=32768) 设置池中的 TCP 流数量。

UDP 可选参数:
  -u [ --udp-flows ] arg (=16384) 设置池中的 UDP 流数量。

正则可选参数:
  -R [ --enable-signatures ]     启用签名引擎。
  -r [ --regex ] arg (=.*)       设置用于评估流的正则表达式。
  -c [ --flow-class ] arg (=all) 使用 tcp、udp 或 all 来匹配流上的签名。
  -m [ --matched-flows ]         显示匹配正则的流。
  -j [ --reject-flows ]          拒绝匹配正则的流。
  -w [ --evidence ]              生成包含匹配正则的 pcap 文件,用于取证分析。

频率可选参数:
  -F [ --enable-frequencies ]       启用频率引擎。
  -g [ --group-by ] arg (=dst-port) 按 src-ip、dst-ip、src-port 和 dst-port 分组频率。
  -f [ --flow-type ] arg (=tcp)     使用 tcp 或 udp 流。
  -L [ --enable-learner ]           启用学习引擎。
  -k [ --key-learner ] arg (=80)    设置学习引擎的键。
  -b [ --buffer-size ] arg (=64)    设置内部缓冲区大小,用于生成正则。
  -y [ --enable-yara ]              生成 yara 签名。

可选参数:
  -n [ --stack ] arg (=lan)    设置网络栈(lan、mobile、lan6、virtual、oflow)。
  -d [ --dumpflows ]           将流输出到标准输出。
  -s [ --statistics ] arg (=0) 显示网络栈的统计信息(5 个级别)。
  -T [ --timeout ] arg (=180)  设置流的超时时间。
  -P [ --protocol ] arg        显示网络栈中特定协议的统计信息。
  -e [ --release ]             释放缓存。
  -l [ --release-cache ] arg   释放特定缓存。
  -p [ --pstatistics ]         显示进程统计信息。
  -h [ --help ]                显示帮助。
  -v [ --version ]             显示版本字符串。

网络栈类型

AIEngine 根据网络拓扑支持五种类型的网络栈。

  • StackLan (lan) 基于 IPv4 的局域网。

  • StackLanIPv6 (lan6) 支持 IPv6 的局域网。

  • StackMobile (mobile) 移动网络(Gn 接口),用于 IPv4。

  • StackVirtual (virtual) 用于虚拟/云环境的栈,支持 VxLan 和 GRE 透明传输。

  • StackOpenFlow (oflow) 用于 OpenFlow 环境的栈。

将 AIEngine 与其他系统集成/编程

AIEngine 也是一个 python/ruby/java/lua 模块,使其在与其他系统和功能集成方面更加灵活。 python 模块提供导出的主要对象如下:

    DNSInfo
    BitcoinInfo
    DatabaseAdaptor(抽象类)
    DomainName
    DomainNameManager
    Flow
    FlowManager
    Frequencies
    FrequencyGroup
    HTTPInfo
    HTTPUriSet
    IMAPInfo
    IPAbstractSet(抽象类)
        IPSet
    IPSetManager
    LearnerEngine
    NetworkStack(抽象类)
        StackLan
        StackLanIPv6
        StackMobile
        StackOpenFlow
        StackVirtual
    POPInfo
    PacketDispatcher
    PacketFrequencies
    Regex
    RegexManager
    SIPInfo
    SMTPInfo
    SSLInfo
    MQTTInfo
    CoAPInfo

有关类方法的完整描述,请执行:

import pyaiengine
help(pyaiengine)

请查看配置 wiki 页面或 examples 目录,以获取更多有趣的示例。 [https://bitbucket.org/camp0/aiengine/wiki/Configurations]

编译 AIEngine 二进制文件

$ git clone https://bitbucket.com/camp0/aiengine
$ ./autogen.sh
$ ./configure
$ make

编译 AIEngine Python 库

编译库的第一种方式是使用 O3 编译优化,这将生成一个小型库。

$ git clone https://bitbucket.com/camp0/aiengine
$ ./autogen.sh
$ ./configure
$ cd src
$ make python
$ python pyai_test.py

第二种方式是通过使用 setup.py 以标准的 Python 方式编译库,这将生成一个比前一种方式更大的库。

$ git clone https://bitbucket.com/camp0/aiengine
$ ./autogen.sh
$ ./configure
$ cd src
$ python setup.py build_ext -i 
$ python pyai_test.py

编译 AIEngine Ruby 库

$ git clone https://bitbucket.com/camp0/aiengine
$ ./autogen.sh
$ ./configure
$ cd src
$ make ruby
$ ruby ruai_tests.rb

编译 AIEngine Java 库

$ git clone https://bitbucket.com/camp0/aiengine
$ ./autogen.sh
$ ./configure
$ cd src
$ make java
$ java -cp ".:/usr/share/java/junit.jar:/usr/share/java/hamcrest/core.jar:./buildjava" org.junit.runner.JUnitCore JunitTestSuite

编译 AIEngine Lua 库

$ git clone https://bitbucket.com/camp0/aiengine
$ ./autogen.sh
$ ./configure
$ cd src
$ make lua
$ lua luai_tests.lua

为 AIEngine 做贡献

AIEngine 使用 C++11/14 标准开发,并遵循 GPLv2 协议。

检出 AIEngine 源码:

$ git clone https://bitbucket.com/camp0/aiengine

如果您对某些功能感兴趣或需要帮助,请给我发送电子邮件。欢迎任何形式的贡献。

开发新功能

AIEngine 采用测试驱动开发。为了保持相同的生命周期,新功能应在所创建的新功能目录中包含单元测试,并且为了与整个系统集成,后续还要与 /src 目录下的主 tests.cc 文件集成。

下载工具