基于網絡回溯分析技術的SCADA系統故障診斷
作者:佚名
結合DMZ區與在線業務區捕獲的數據包分析來看,在正常的通訊過程中DMZ區與在線業務區之間的設備發送了RST(復位)數據包,釋放了正常的會話,造成了SCADA系統不能正常從DMZ區的I/O Server上提取數據。根據數據包的解碼分析,可以確定發送異常復位數據包的設備為某上網行為管理設備,通過對該設備策略的修改,10.2.103.10能夠正常的從I/O Server上提取數據,未發生異常情況。
案例場景
某排水集團在線業務區的SCADA系統需要從DMZ區的I/O Server上采集數據,SCADA系統使用某些IP能夠正常從I/O Server采集數據,但是另一部分IP則不能正常的從I/O Server上采集數據,提示異常并且斷開連接。
例如:10.2.103.8為SCADA系統的IP地址,能夠正常的從10.2.0.51和10.2.0.52的I/O Server上采集數據,但是將SCADA系統的IP改為:10.2.103.10,則不能正常從10.2.0.51和10.2.0.52的I/O Server上采集數據。
案例分析
一、網絡拓撲圖(簡化)
下圖為簡化拓撲圖,我們展示SCADA系統和I/O Server之間的通訊鏈路,分別在靠近SCADA系統和I/O Server的接入交換機上采用端口鏡像的方式旁路部署科來網絡回溯分析系統,采集SCADA系統和I/O Server之間的通訊數據包。
圖 1 網絡拓撲圖
二、故障排查
我們從DMZ區的交互機和在線業務區交互機上同時采集通訊數據,進行對比分析,來看看具體是什么原因造成了業務系統的故障。
(一) DMZ區交換機數據
在DMZ區交換機數據中可以看到TCP會話中10.2.103.10向10.2.0.52發送了大量的RST(復位)數據包,如下圖2所示。這些連接被這些復位數據包釋放掉了,但是為什么會存在這么多的復位數據包?又是誰發送了這些數據包?
圖 2 DMZ區捕獲到的TCP會話
通過查看科來網絡回溯分析系統的交易時序圖,可以發現復位數據包的TTL(生存時間)值是127。而正常時傳輸的數據,可以看到TTL(生存時間)值為61,和異常時明顯不同,說明復位數據包并不是從10.2.103.10發出來的,而是有個中間設備發送了復位數據包中斷了正常的應用會話。
正常會話的TTLTTL值為61,而異常復位數據包的TTLTTL值為127。結合該集團的拓撲圖來看,正常會話發送初始TTLTTL值為64,經過2臺防火墻和1臺核心交換機后抓取到的TTLTTL值為61,而異常復位數據包初始TTLTTL值為128,只經過了DMZ區連接的防火墻,TTLTTL值減為127,說明復位數據包極有可能是某上網行為管理設備發送的。
(二) 在線業務區交換機數據
我們在在線業務區交換機上抓取數據,找到同一個TCP會話。如下圖3所示:
圖 3 在線業務區捕獲到的TCP會話
可以看到該會話中同樣存在了大量的復位數據包,但與DMZ區不同的是,復位數據包是由10.2.0.52發送的。
同樣查看科來網絡回溯分析系統的交易時序圖,可以看到復位數據包的TTL(生存時間)值是126。而正常時傳輸的數據,可以看到TTL(生存時間)值為125,和異常時明顯不同,同樣說明了復位數據包并不是從10.2.0.52發出來的,而是有個中間設備發送了復位數據包中斷了正常的應用會話。
正常會話的TTL值為125,而異常復位數據包的TTL值為126。結合該集團的拓撲圖來看,正常會話發送初始TTL值為128,經過2臺防火墻和1臺核心交換機后抓取到的TTL值為125,而異常復位數據包初始TTL值為128,抓取到的TTL值卻為126,說明數據包只經過了核心交換機和在線業務區區連接的防火墻,說明復位數據包極有可能是某上網行為管理設備發送的。
三、結論及處理結果
結合DMZ區與在線業務區捕獲的數據包分析來看,在正常的通訊過程中DMZ區與在線業務區之間的設備發送了RST(復位)數據包,釋放了正常的會話,造成了SCADA系統不能正常從DMZ區的I/O Server上提取數據。根據數據包的解碼分析,可以確定發送異常復位數據包的設備為某上網行為管理設備,通過對該設備策略的修改,10.2.103.10能夠正常的從I/O Server上提取數據,未發生異常情況。
責任編輯:鳶瑋
來源:
科來軟件