作為動(dòng)環(huán)監(jiān)控系統(tǒng)的主要設(shè)備——現(xiàn)場(chǎng)監(jiān)控單元(FSU),它的主要業(yè)務(wù)功能是控制數(shù)據(jù)收集,與上級(jí)監(jiān)控平臺(tái)(SC)交互,主要組成為:FSU硬件、FSU控制軟件和嵌入式系統(tǒng)。

FSU的“白盒化”是指將FSU控制軟件與硬件解耦,目的是把不同廠家的FSU,在不依靠原廠家支持的情況下,刷入第三方的FSU控制軟件(FsuOS),以此解決各個(gè)廠家互不兼容、互相封閉,造成維護(hù)難、更新難、利舊難、成本高、重復(fù)研發(fā)等問(wèn)題。

在FSU白盒化過(guò)程中,我們發(fā)現(xiàn)主要困難點(diǎn)在以下幾個(gè)方面:

  1. FSU硬件架構(gòu)繁多,各種CPU和系統(tǒng)版本,比較混亂,反應(yīng)出廠家硬件研發(fā)水平良莠不齊。
  2. 部分廠家系統(tǒng)不提供root口令,還需要先解鎖系統(tǒng)密碼。
  3. 缺少原廠支持,需要自行分析目標(biāo)設(shè)備的Linux結(jié)構(gòu),自行構(gòu)建編譯器
  4. 缺少原廠支持,需要自行分析硬件接口工作方式,標(biāo)準(zhǔn)接口還好辦一些,非標(biāo)接口識(shí)別和分析都比較困難。
  5. 部分廠家的串口使用還采用加密接口,還需要解鎖加密。
  6. 大部分廠家都有自己的看門(mén)狗,需要解鎖。
  7. 部分廠家系統(tǒng)進(jìn)入后,內(nèi)部軟件系統(tǒng)比較簡(jiǎn)單,我們還要先維護(hù)它的系統(tǒng),使其變?yōu)檎5南到y(tǒng)才能進(jìn)行白盒化。比如:部分廠家還在使用Telnet和TFTP,甚至FTP進(jìn)行文件傳輸,至今沒(méi)有使用更為安全的SSH進(jìn)行加密文件傳輸。
  8. 部分廠家系統(tǒng)進(jìn)入后,系統(tǒng)結(jié)構(gòu)有bug,造成系統(tǒng)不穩(wěn)定,還得幫他們修系統(tǒng)的bug。
  9. 部分廠家的設(shè)備軟硬件設(shè)計(jì)水平偏低太多,設(shè)備量較少,不值得做白盒化適配。
  10. 部分廠家的硬件設(shè)備有問(wèn)題,即使白盒化,也無(wú)法解決硬件問(wèn)題。比如網(wǎng)卡驅(qū)動(dòng)會(huì)頻繁掉線,缺少系統(tǒng)時(shí)鐘等。

綜上所述,F(xiàn)SU白盒化技術(shù)是計(jì)算機(jī)基礎(chǔ)技術(shù)綜合應(yīng)用,不是一個(gè)點(diǎn)一個(gè)面的技術(shù),是對(duì)整體GNU,GCC,Linux,嵌入式設(shè)備,嵌入式系統(tǒng),F(xiàn)SU生態(tài)的完整掌握,是正向研發(fā)和逆向分析的綜合應(yīng)用,雖然存在各種各樣的困難,但是僅僅增加了我們FsuOS適配不同廠家FSU的工作量,只要是嵌入式二代FSU基本上都能做白盒化應(yīng)用。