Java JAR文件是否可能损坏您的系统?如何检查它正在做什么?

我想评估一个软件解决方案,其中有多个人提交了JAR文件以在Windows上执行任务。 是否可以检查JAR文件是否执行除声称在您的计算机上执行的其他不需要的行为?     
已邀请:
首先,您可以使用带有SecurityManager的JVM集来运行您的应用程序,使其可以有限地访问敏感函数。 你也可以设置一个“沙箱”,这样jar就不能拥有沙箱之外的权限......你可以在linux / unix环境中使用chroot或类似的工具。     
1.您可以使用Sysinternals的软件: http://technet.microsoft.com/en-us/sysinternals/bb842062 您可以看到程序正在使用HardMon写入或删除硬盘中的内容,或使用RegMon监控任何更改...查看他们的网站,他们有很多程序,您几乎可以监控所有内容! 2.或者你可以安装Sandboxie: http://www.sandboxie.com/ 然后在沙箱中运行程序(“虚拟文件系统”)。当您在沙盒中运行程序时,您可以看到程序所执行的文件,最好的是程序执行的任何更改都将在其存在时撤消,因此它不会损害您的系统。 :) 3.此外,您可以尝试反编译JAR文件: http://www.google.hr/search?sourceid=chrome&ie=UTF-8&q=java+decompiler     
是和否。默认情况下,java程序可以执行系统上任何本机程序可以执行的操作。这包括删除和替换它可以访问的任何文件,具体取决于您的操作系统和用户权限,这可能会影响系统关键文件。 可以限制Java应用程序可以执行的操作,applet和webstart程序通常以这种方式受到保护。或者,您可以将任何程序作为不同/受限制的用户或沙箱运行,以限制它可以造成的损害。 如果您不相信库/程序总是在上面提到的一个受限环境中运行它。它可能会崩溃,如果它做了它不应该做的事情,但它将无法做任何损害。     
我尝试了jensign.com的解决方案,看起来它限制了几乎所有东西。我以前测试的.jar应用程序甚至无法下载网站。但是我不是这方面的专家所以我不知道它是否是100%安全的解决方案。   JAR的应用程序可以在完全限制的沙箱条件下启动(非常类似于Java applet默认安全沙箱):
     java -jar -Djava.security.manager PropsFrame.jar
来自jensign.com     
尝试像Java Decompiler这样的反编译器: http://jd.benow.ca/ 它反编译.jar文件,并向您显示源代码,但请记住它可能受版权保护: 顺便问一下,为什么不要求他们提交源代码,而不仅仅是.jar文件? 基本上,.jar文件就像加强文件的zip文件,我相信即使是WinRAR也可以打开.jar文件。来自他们网站的报价:   Java Archive File(压缩文件   适用于小程序和相关文件)(.JAR)      Java Archive的缩写,一种文件格式   用于捆绑所需的所有组件   通过Java小程序。 JAR文件简化   所有小程序的下载   组件(.class文件,图像,   声音等)可以打包成一个   单个文件。另外,JAR   支持数据压缩,其中   进一步减少下载时间。      JAR文件支持与ZIP相同   文件支持。 JAR = ZIP +清单。   Microsoft VM支持未压缩   并压缩JAR级别0和1,但是   没有签署JAR。      WinRAR提供基本操作   其他工具创建的JAR文件:view   内容,提取文件,显示评论   和档案信息。      您可以使用转换功能   将.jar文件转换为.rar格式。      你不需要任何外部的   程序来处理这些格式。 使用WinRAR解压缩后,您可以通过此链接查看源,作为JD的替代方法。     

要回复问题请先登录注册