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

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

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

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

工具目录

分类

查看所有分类
Loading categories
pybatfish — Python客户端用于Batfish,这是一款网络配置分析工具,通过从设备配置建模网络行为,在部署前验证安全性、可靠性和合规性。 | Kitploit
工具/GitHubGitHub/batfish/pybatfish
云基础设施安全漏洞分析配置审计网络安全DevSecOps
GitHubbatfish/pybatfish

pybatfish

Python客户端用于Batfish,这是一款网络配置分析工具,通过从设备配置建模网络行为,在部署前验证安全性、可靠性和合规性。

查看仓库
2425520天前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

有问题、反馈或功能请求?加入我们在 Slack! 上的社区!

codecov

Pybatfish

Pybatfish 是 Batfish 的 Python 客户端。

什么是 Batfish?

Batfish 是一个网络验证工具,通过分析网络设备的配置,为安全性、可靠性和合规性提供正确性保证。它从设备配置构建完整的网络行为模型,并发现网络策略(内置、用户定义和最佳实践)的违规行为。

Batfish 的一个主要用途是在部署之前验证配置变更(尽管它也可以用于验证已部署的配置)。部署前验证是现有网络自动化工作流中的一个关键缺口。通过在自动化工作流中集成 Batfish,网络工程师可以弥补这一缺口,确保只部署正确的变更。

Batfish 不需要直接访问网络设备。 核心分析仅需要网络设备的配置。此分析可通过使用来自网络的其他信息得到增强,例如:

  • 从外部对等体接收的 BGP 路由
  • 由 LLDP/CDP 表示的拓扑信息

请参阅 www.batfish.org 了解其工作原理的技术信息。

Batfish 支持哪些类型的正确性检查?

了解 Batfish

Batfish YouTube 频道(您可以订阅以获取新内容)展示了多种类型的检查。这些检查覆盖了一系列网络行为和设备配置属性。

配置合规性

  • 标记已定义但未引用或已引用但未定义的结构(例如,ACL、路由映射)
  • 与模板匹配的配置设置(如 MTU、AAA、NTP、日志记录等)
  • 设备只能通过 SSHv2 访问,并且密码非空

可靠性

  • 在任何单链路或单设备故障后,端到端可达性不受任何流量影响
  • 某些服务(例如,DNS)全局可达

安全性

  • 敏感服务只能从特定子网或设备访问
  • 端点之间的路径符合预期(例如,经过防火墙,至少具有 2 路 ECMP 等)

变更分析

  • 当前配置和计划配置的端到端可达性一致
  • 计划的 ACL 或防火墙变更可证明正确,并且不会对其他流量造成附带损害
  • 可能来自不同供应商的两个配置在功能上等效

如何开始?

如果尚未安装 Batfish,请按照 batfish 代码仓库 中的说明进行安装。

安装 Pybatfish

我们强烈建议您在 Python 3 虚拟环境中安装 Pybatfish。有关如何设置虚拟环境的详细信息,请参见此处。设置并激活虚拟环境后,升级 pip 并安装 pybatfish。

root@kitploit:~
python3 -m pip install --upgrade pip
python3 -m pip install --upgrade pybatfish

现在,您已准备好使用 Batfish 评估自己的网络。我们鼓励您从 Jupyter 笔记本开始,但您也可以使用其他您熟悉的方法,例如 PyCharm 等 IDE 或交互式 Python Shell。如果选择从 Jupyter 笔记本开始,则需要在虚拟环境中安装 Jupyter。Jupyter 文档可在此处找到——但下面的命令将帮助您启动。

root@kitploit:~
python3 -m pip install jupyter
jupyter notebook

我们的笔记本为不同的用例提供了快速入门指南。此外,完整文档可在 readthedocs 上找到。

Pybatfish 文档

pybatfish API 的完整文档位于此处。

下载工具