IoT时代的到来,让我们生活中物联网设备越来越多,然而设备的代码安全是一切安全的基础,如果设备代码不加以防护或防护不够,将会造成核心技术泄露,给IoT设备稳定运行带来威胁。
与此同时,当下仍有不少移动开发者把算法或者核心逻辑写在本地层,如果本地层保护不够,攻击者通过逆向分析就可以得到核心的算法的实现,严重危害到企业的利益。
基于这些痛点和威胁,网易易盾开发出了IoT安全编译器Maze。
Maze是一款针对C/C++本地层源代码加密混淆工具,通过特有的“迷宫矩阵”技术对代码进行有效的保护,击垮分析者的信心,从而避免攻击者进行逆向分析。“迷宫矩阵”技术由两部分组成,一个是逻辑混淆;另外一个是逻辑调度。前者包含字符串加密、FLA控制流扁平化、sub逻辑替换、BCF伪造控制流等;后者包括调用隐藏、间接调用等。
网易易盾IoT安全编译器Maze原理
Maze自定义了整个编译工具链集合,对源文件或者静态文件生成与架构无关的中间文件,然后对中间文件做安全处理,最后用后端生成对应的各个架构的目标文件。
迷宫般的代码(左为保护前,右为网易易盾默认的保护强度)
对于众所周知的黑盒加壳保护,攻击者通常只需要抓住分析到的某一个点,就能让整个保护“沦陷”,而Maze在性能和体积可接受范围内,使得攻击者陷入一种“迷宫”(Maze)状态,越走越乱。从这来看,Maze是一个新的安全代码保护思路,拥有更加灵活、强度更高、性能和体积优良、保护效果更好等优点。在部署上,Maze不仅支持通过脚本轻量级进行部署,也可以对强度和需要进行混淆保护的函数进行灵活的控制,开发层面支持NDK开发和嵌入式开发,使用上则非常灵活,兼容Windows、Linux、Mac等系统。
为了使用的便利性,IoT安全编译器Maze还提供了三种不同强度的配置供选择,配置之外,开发者也可以根据自己的实际情况来调整对应参数。
网易易盾的移动安全工程师指出,IoT安全编译器Maze适用于保护智能汽车、智能摄像头、智能家居等固件代码,也适用于保护移动应用,避免因逆向工程被破解,造成核心技术泄漏、代码执行流程被分析等安全问题。
相关阅读: