我想将病毒扫描合并到Java/Maven/Hudson构建过程中。不幸的是,我无法找到用于这种构建步骤的专用工具的任何资源。我的构建环境是基于Linux的。
我的问题是:如何将反病毒扫描结合到基于Maven和Hudson的构建过程中?
什么是最佳实践?
使用哪种杀毒软件不在这个问题范围之内。(例如,我想使用一个商业供应商来支持像ClamAV这样的免费工具)
发布于 2009-11-30 09:54:14
病毒从何而来?
我还没有看到一种可以修改源代码的病毒,所以源代码可能是安全的(除非您不能信任您的开发人员)。
因此病毒可以隐藏在一个构建工具中,并试图修改JAR。这里的工具是绊线:它将为所有文件创建校验和,构建工具不应该更改(除非您安装了一个新版本;然后您必须再次运行tripwire )。
如果构建工具是安全的,那么您只需要一个AV工具来保护操作系统(所以像打开和编写文件这样的功能是安全的)。使用您公司的标准AV进行此操作。
为了使整个过程变得非常紧凑,您可以在构建新版本之前再次构建最后一个版本。旧版本的校验和不应该更改(不过要注意文件中的时间戳)。
发布于 2009-11-30 10:05:19
最佳实践是在不经常被病毒攻击的平台(即操作系统)上运行构建。
最佳实践是在构建平台上运行操作系统级别的反病毒扫描程序。
最佳实践是更新您的操作系统补丁,锁定防火墙,不要挂载可能在您的家庭网络上被感染的USB密钥,等等。
我从未听说过“感染”源代码、.class文件或JAR文件的病毒。我认为它们是可能的,但是商业AV产品很有可能不会注意到它们,因为它们是不寻常的。当然,AV产品不会有帮助,因为病毒专门针对您/您的公司。
但是,假设您确实有一个AV产品,您认为这是可行的,那么您可以在旋转“发布构建”之前进行AV扫描。我不知道有什么插件可以自动完成这一任务,但是让Maven运行“一些批处理文件”来通过其命令行调用病毒检查程序应该不难。
发布于 2009-11-30 10:32:00
你需要一个可脚本的防病毒程序。
当你有了它,它应该很容易添加一个“扫描我刚刚建立的”步骤。
我相信McAfee有一个Linux版本,这可能正是您所需要的。
https://stackoverflow.com/questions/1818726
复制相似问题