这个简单方案可以防御下一个“震网”病毒的出现
新加坡和印度的科学家表示,全球最老编程风格之一,运行在工业可编程逻辑控制器(PLC)上的梯形逻辑,依然十分脆弱,易于攻击。但不用慌张,因为它很容易挡住。
印度海德拉巴国际信息技术学院的纳曼·高维尔,新加坡科技设计大学的阿南德·阿格拉沃尔和尼尔斯·奥利·蒂芬豪尔,三位研究人员认为,大家普通的把目光都关注到了震网这样的攻击上,而控制逻辑层面上的安全工作却无人问津。
在他们测试的罗克韦尔系统中,固件更新是有数字签名保护的,但梯形逻辑没有。梯形逻辑的运行假定是:只有受信任的人才有权限插入程序,但是却没有任何检查/验证以确保被编入PLC的逻辑更新来自授权源。
为证明此点,蒂芬豪尔及其同事撰写了“梯形逻辑炸弹(LLB)”,重点放在人类操作员在验证PLC上运行程序时难以发现的隐秘行为。
三人组测试的负载类型包括:
- 拒绝服务LLB:等待触发,关停系统;
- 数据操作LLB:操纵传感器读数和指令;
- 数据日志LLB:特别危险的一类,因为不干扰系统,所以可长期泄露敏感数据.
科学家们指出,很容易隐藏那些甚至能让PLC失效的命令,使用合法指令愚弄阵列或者创建栈溢出(后者超简单:创建一个递归调用自身的子程序即可)。
幸运的是,蒂芬豪尔的论文中提出的防御方法,同样简单。首先,公司企业应该集中他们的PLC软件存储到单一地点,所有工程师提交“黄金样本”,PLC仅采用来自这些样本的更新。其次,操作员应(最好自动地)执行定期检查,核实PLC上的软件是否与中心逻辑存储一致。
关键词: