使用nDPI和ntopng监控工业IoT / Scada流量

由于大多数开源监控工具都是为Internet协议设计的,因此监控工业IoTSCADA流量可能会面临挑战。由于这正成为企业自动化生产线的热门话题,我们决定增强ntop工具,即使在工业环境中也能为我们的用户提供流量可见性。这就需要增强nDPI以检测这些协议,并增强ntopng(我们的监控控制台),以通过提供增强的协议剖析来可视化这些流量,在此基础上可以触发警报。

到目前为止,nDPI支持modbusDNP3IEC60870协议。特别是IEC 60870协议非常重要,因为它可用于检测以下问题,如:

  • 未知遥测地址
  • 连接丢失和恢复
  • 来自远程系统的数据丢失

该标准非常复杂,如果你想使用开源软件监控这些流量来触发警报,则只能选择suricata IDS或Zeek / Malcom的自定义脚本。由于ntopng可以在特定事件发生时通过用户脚本触发警报,因此我们决定增强ntopng来分析这些流量,以便在检测到特定通信时可以发出自定义警报。实际上,在Scada中,公司通常会被动地监控流量,而不是在出现问题时主动丢弃特定的通信:这是因为与收益相比,丢错包的风险太高了,与其冒这个风险,不如触发并提醒和处理。

ntopng已扩展到可以连续(即,不仅仅是通信的前几个数据包)监控IEC 60870通信并剖析单个PDU。这样,用户可以通过ntopng用户脚本触发警报。ntopng 4.1.x中引入可以将脚本绑定到主机池的灵活性,允许为特定设备创建自定义脚本配置,因此每个设备系列都有(可能)其自定义规则集。

上图显示了ntopng如何检测和报告IEC 60870,除了常规的延迟,吞吐量,重传…指标外,它还补充了可用于检测异常和触发警报的特定协议信息。

Happy IoT and Scada monitoring!

本文摘自ntop,写于2020年9月8日