是否有可能让开源程序在编译时安装恶意软件?我正在考虑在编译时执行邪恶代码的C宏或makefile相关的东西.或者只要我不开始运行已编译的程序,我是否安全?
配置或make脚本不仅可以在编译时安装恶意代码,而且可以修改编译器或构建工具以将后门或其他恶意代码注入已编译的二进制文件中.也就是说,即使您构建的代码看起来很干净,构建工具也可能"流氓"并引入恶意代码.
恶意编译器的这一概念以一篇名为"信任信任的思考"的论文着称 - [1].最近,在iOS应用程序中发现了恶意软件,它是通过攻击开发人员的编译器(Xcode)使用这种技术注入的[2].
底线:除非你已经编写或审查了你正在构建的项目的每一行代码,你用来构建它的工具,以及你正在构建它的操作系统/固件,否则你无法完全信任它.
[1] https://www.ece.cmu.edu/~ganger/712.fall02/papers/p761-thompson.pdf
[2] http://researchcenter.paloaltonetworks.com/2015/09/novel-malware-xcodeghost-modifies-xcode-infects-apple-ios-apps-and-hits-app-store/