作为动环监控系统的主要设备——现场监控单元(FSU),它的主要业务功能是控制数据收集,与上级监控平台(SC)交互,主要组成为:FSU硬件、FSU控制软件和嵌入式系统。
FSU的“白盒化”是指将FSU控制软件与硬件解耦,目的是把不同厂家的FSU,在不依靠原厂家支持的情况下,刷入第三方的FSU控制软件(FsuOS),以此解决各个厂家互不兼容、互相封闭,造成维护难、更新难、利旧难、成本高、重复研发等问题。
在FSU白盒化过程中,我们发现主要困难点在以下几个方面:
- FSU硬件架构繁多,各种CPU和系统版本,比较混乱,反应出厂家硬件研发水平良莠不齐。
- 部分厂家系统不提供root口令,还需要先解锁系统密码。
- 缺少原厂支持,需要自行分析目标设备的Linux结构,自行构建编译器
- 缺少原厂支持,需要自行分析硬件接口工作方式,标准接口还好办一些,非标接口识别和分析都比较困难。
- 部分厂家的串口使用还采用加密接口,还需要解锁加密。
- 大部分厂家都有自己的看门狗,需要解锁。
- 部分厂家系统进入后,内部软件系统比较简单,我们还要先维护它的系统,使其变为正常的系统才能进行白盒化。比如:部分厂家还在使用Telnet和TFTP,甚至FTP进行文件传输,至今没有使用更为安全的SSH进行加密文件传输。
- 部分厂家系统进入后,系统结构有bug,造成系统不稳定,还得帮他们修系统的bug。
- 部分厂家的设备软硬件设计水平偏低太多,设备量较少,不值得做白盒化适配。
- 部分厂家的硬件设备有问题,即使白盒化,也无法解决硬件问题。比如网卡驱动会频繁掉线,缺少系统时钟等。
综上所述,FSU白盒化技术是计算机基础技术综合应用,不是一个点一个面的技术,是对整体GNU,GCC,Linux,嵌入式设备,嵌入式系统,FSU生态的完整掌握,是正向研发和逆向分析的综合应用,虽然存在各种各样的困难,但是仅仅增加了我们FsuOS适配不同厂家FSU的工作量,只要是嵌入式二代FSU基本上都能做白盒化应用。