RadialNet:交互式网络拓扑可视化工具
1. 背景与动机
在设计网络可视化解决方案时,工具需支持高度交互以辅助网络监控,视觉隐喻要反映网络及其数据的动态性,支持内容导航,且简单易懂,便于管理员快速理解。然而,多数工具受屏幕空间和遮挡问题限制,只能展示几十个节点。因此,我们的主要动机是创建一个有效的可视化工具,不仅能展示网络拓扑,还能将安全和审计数据与网络底层拓扑相结合,并支持内容导航。
2. 网络安全数据获取
为获取网络安全数据,我们使用了 Nmap 工具,它能完成以下任务:
1. 检测网络设备,如路由器、交换机、无线接入点和防火墙。
2. 检测远程操作系统(操作系统指纹识别)。
3. 发现服务(如 FTP、DNS、HTTP 等)。
4. 提供脚本引擎以探索服务。
5. 探测数据包在网络中经过的路径(traceroute)。
6. 确定链路延迟和路由中断情况。
我们利用 1 - 4 项获取网络主机数据并探测可用服务,5 - 6 项提供拓扑信息和链路延迟。基于这些数据,我们可以执行拓扑发现、漏洞评估扫描、资产确定、检测禁止设备和未授权服务等任务。为了理解网络问题和安全问题,我们将 Nmap 的发现结果与国家漏洞数据库(NVD)进行交叉引用,创建了一个关系数据库,将 Nmap 扫描数据与 NVD 文件相结合。
3. RadialNet 概述
RadialNet 是一个集成了多种信息可视化技术的工具,用于处理具有多变量数据节点的网络数据集。它使用 Python、PyCairo 进行图形渲染,PyGTK 和 PyGObject 创建用户界面,使用 Pyth