关于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
https://www.github.com/batfish/pybatfish
https://docs.python.org/3/library/venv.html[ https://github.com/batfish/batfish/wiki/Packaging-snapshots-for-
analysis#format-for-cumulus-configuration-
files](https://github.com/batfish/batfish/wiki/Packaging-snapshots-for-
analysis#format-for-cumulus-configuration-files)[ https://github.com/batfish/batfish/wiki/Packaging-snapshots-for-
analysis#format-for-f5-big-ip-configuration-
files](https://github.com/batfish/batfish/wiki/Packaging-snapshots-for-
analysis#format-for-f5-big-ip-configuration-files)[ https://github.com/batfish/batfish/wiki/Packaging-snapshots-for-
analysis#format-for-host-json-
files](https://github.com/batfish/batfish/wiki/Packaging-snapshots-for-
analysis#format-for-host-json-files)
最后
近几年,随着移动互联网、大数据、云计算、人工智能等新一代信息技术的快速发展,围绕网络和数据的服务与应用呈现爆发式增长,丰富的应用场景下暴露出越来越多的网络安全风险和问题。
据腾讯安全《2017上半年互联网安全报告》显示,近年我国高校教育培养的信息安全专业人才仅3万余人,而网络安全人才总需求量则超过70万人,缺口高达95%。
可见,未来行业对于网络安全人才的需求将持续增加。
为帮助大家学习网络安全学习,顺利就业,这里分享一份完整的知识架构体系图。
如图片过大被平台压缩导致模糊,可以在文末下载高清无水印版
一些我收集的网络安全自学入门书籍
一些我自己买的、其他平台白嫖不到的视频教程:
以上学习路线附全套教程无偿分享,如有朋友需要扫码下方二维码免费获取,免费领取!
![](https://img-blog.csdnimg.cn/img_convert/d8acc537fc7b19c3898c097eabaaed50.png)