基于網(wǎng)絡(luò )回溯分析技術(shù)的SCADA系統故障診斷
案例場(chǎng)景
某排水集團在線(xiàn)業(yè)務(wù)區的SCADA系統需要從DMZ區的I/O Server上采集數據,SCADA系統使用某些IP能夠正常從I/O Server采集數據,但是另一部分IP則不能正常的從I/O Server上采集數據,提示異常并且斷開(kāi)連接。
例如: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上采集數據。
案例分析
網(wǎng)絡(luò )拓撲圖(簡(jiǎn)化)
下圖為簡(jiǎn)化拓撲圖,我們展示SCADA系統和I/O Server之間的通訊鏈路,分別在靠近SCADA系統和I/O Server的接入交換機上采用端口鏡像的方式旁路部署科來(lái)網(wǎng)絡(luò )回溯分析系統,采集SCADA系統和I/O Server之間的通訊數據包。
圖1網(wǎng)絡(luò )拓撲圖
故障排查
我們從DMZ區的交互機和在線(xiàn)業(yè)務(wù)區交互機上同時(shí)采集通訊數據,進(jìn)行對比分析,來(lái)看看具體是什么原因造成了業(yè)務(wù)系統的故障。
DMZ區交換機數據
在DMZ區交換機數據中可以看到TCP會(huì )話(huà)中10.2.103.10向10.2.0.52發(fā)送了大量的RST(復位)數據包,如下圖2所示。這些連接被這些復位數據包釋放掉了,但是為什么會(huì )存在這么多的復位數據包?又是誰(shuí)發(fā)送了這些數據包?
圖2 DMZ區捕獲到的TCP會(huì )話(huà)
通過(guò)查看科來(lái)網(wǎng)絡(luò )回溯分析系統的交易時(shí)序圖,可以發(fā)現復位數據包的TTL(生存時(shí)間)值是127.而正常時(shí)傳輸的數據,可以看到TTL(生存時(shí)間)值為61,和異常時(shí)明顯不同,說(shuō)明復位數據包并不是從10.2.103.10發(fā)出來(lái)的,而是有個(gè)中間設備發(fā)送了復位數據包中斷了正常的應用會(huì )話(huà)。
正常會(huì )話(huà)的TTLTTL值為61,而異常復位數據包的TTLTTL值為127.結合該集團的拓撲圖來(lái)看,正常會(huì )話(huà)發(fā)送初始TTLTTL值為64,經(jīng)過(guò)2臺防火墻和1臺核心交換機后抓取到的TTLTTL值為61,而異常復位數據包初始TTLTTL值為128,只經(jīng)過(guò)了DMZ區連接的防火墻,TTLTTL值減為127,說(shuō)明復位數據包極有可能是某上網(wǎng)行為管理設備發(fā)送的。
在線(xiàn)業(yè)務(wù)區交換機數據
我們在在線(xiàn)業(yè)務(wù)區交換機上抓取數據,找到同一個(gè)TCP會(huì )話(huà)。如下圖3所示:
圖3在線(xiàn)業(yè)務(wù)區捕獲到的TCP會(huì )話(huà)
可以看到該會(huì )話(huà)中同樣存在了大量的復位數據包,但與DMZ區不同的是,復位數據包是由10.2.0.52發(fā)送的。
同樣查看科來(lái)網(wǎng)絡(luò )回溯分析系統的交易時(shí)序圖,可以看到復位數據包的TTL(生存時(shí)間)值是126.而正常時(shí)傳輸的數據,可以看到TTL(生存時(shí)間)值為125,和異常時(shí)明顯不同,同樣說(shuō)明了復位數據包并不是從10.2.0.52發(fā)出來(lái)的,而是有個(gè)中間設備發(fā)送了復位數據包中斷了正常的應用會(huì )話(huà)。
正常會(huì )話(huà)的TTL值為125,而異常復位數據包的TTL值為126.結合該集團的拓撲圖來(lái)看,正常會(huì )話(huà)發(fā)送初始TTL值為128,經(jīng)過(guò)2臺防火墻和1臺核心交換機后抓取到的TTL值為125,而異常復位數據包初始TTL值為128,抓取到的TTL值卻為126,說(shuō)明數據包只經(jīng)過(guò)了核心交換機和在線(xiàn)業(yè)務(wù)區區連接的防火墻,說(shuō)明復位數據包極有可能是某上網(wǎng)行為管理設備發(fā)送的。
結論及處理結果
結合DMZ區與在線(xiàn)業(yè)務(wù)區捕獲的數據包分析來(lái)看,在正常的通訊過(guò)程中DMZ區與在線(xiàn)業(yè)務(wù)區之間的設備發(fā)送了RST(復位)數據包,釋放了正常的會(huì )話(huà),造成了SCADA系統不能正常從DMZ區的I/O Server上提取數據。根據數據包的解碼分析,可以確定發(fā)送異常復位數據包的設備為某上網(wǎng)行為管理設備,通過(guò)對該設備策略的修改,10.2.103.10能夠正常的從I/O Server上提取數據,未發(fā)生異常情況。
評論