关于Batfish
Batfish是一款功能强大的网络配置安全分析工具和网络验证工具,该工具能够帮助广大研究人员寻找目标网络系统中的配置问题,并能够根据设备配置构建基于网络行为的完整模型,以及自动识别违反网络策略、用户定义和最佳实践的恶意行为。
Batfish可以在我们部署网络配置之前对配置的安全性和完整性进行验证,而部署前的验证是现代网络自动化工作流中的关键因素。通过将Batfish接入自动化工作流后,网络工程师就能够更好地确保配置和部署的正确性。
Batfish不需要直接访问目标网络设备,工具只需要网络设备的配置信息即可完成核心分析。除此之外,我们还可以使用目标网络的其他信息来辅助分析。
支持的网络设备和操作系统列表
Batfish支持扫描和分析大型网络和设备(物理或虚拟),其中包括:
A10 网络
Arista
AWS (VPCs, Network ACLs, VPN GW, NAT GW, Internet GW, Security Groups…)
Cisco (Cisco NX-OS, IOS, IOS-XE, IOS-XR, ASA)
Check Point
Cumulus
F5 BIG-IP
Fortinet
Free-Range Routing (FRR)
iptables
Juniper (所有的JunOS 平台: MX, EX, QFX, SRX, T-series, PTX)
Palo Alto网络
SONiC
Batfish支持下列平台:
Aruba
Dell Force10
Foundry
Batfish的系统要求
Batfish可以在任何支持Docker的操作系统上运行,当前版本的Batfish容器已经在macOS和Ubuntu 16.04 LTS上进行过测试。
设备最低要求:
双核CPU
8 GB RAM
256 GB硬盘
服务器最低要求:
四核双线程CPU
32 GB RAM
256 GB硬盘
工具下载
Batfish的下载非常简单,我们只需要通过Docker容器直接拉取最新版本的Batfish镜像即可:
docker pull batfish/allinone
docker run --name batfish -v batfish-data:/data -p 8888:8888 -p 9997:9997 -p 9996:9996 batfish/allinone
接下来,在分析网络配置之前,我们还需要安装
Pybatfish,即一个用于跟Batfish服务交互的Python
3 SDK。我们建议大家在一个
虚拟环境中安装Pybatfish。
然后,我们可以使用下列命令来安装Pybatfish:
python3 -m pip install --upgrade pybatfish
工具使用演示
视频地址: https://www.you*tube.com/channel/UCA-OUW_3IOt9U_s60KvmJYA/videos
许可证协议
本项目的开发与发布遵循 Apache
-2.0开源许可证协议。
项目地址
Batfish: 【 GitHub传送门】
参考资料
https://github.com/batfish/pybatfish/tree/master/jupyter_notebooks
网安&黑客学习资料包
基于最新的kali讲解,循序渐进地对黑客攻防剖析。适合不同层次的粉丝。我希望能为大家提供切实的帮助,讲解通俗易懂,风趣幽默,风格清新活泼,学起来轻松自如,酣畅淋漓!

学习资料工具包
压箱底的好资料,全面地介绍网络安全的基础理论,包括逆向、八层网络防御、汇编语言、白帽子web安全、密码学、网络安全协议等,将基础理论和主流工具的应用实践紧密结合,有利于读者理解各种主流工具背后的实现机制。
面试题资料
独家渠道收集京东、360、天融信等公司测试题!进大厂指日可待!
每个成长路线对应的板块都有配套的视频提供:
因篇幅有限,仅展示部分资料,需要可扫描下方卡片获取~
