2011-10-31 68 views
1

我发现了一个客户的计算机上的client.jar中的文件,其中包含我可以反编译到这个两个文件的两个.class文件:“无法从client.jar加载主类清单属性”放入可能的恶意软件.jar文件中?

Client.java

I.java

而且有一个I.gif这是显然没有GIF用十六进制编辑器查看它。

他们显然混淆了,我没有进入Java那么多。我尝试在VM中运行,但它告诉我“无法从Client.jar加载主类清单属性”

可能是,主类不在清单中,但是如何解决这个问题? 这是否意味着它无法在客户的计算机上运行?

还有一个META-INF文件夹包含文件MANIFEST.MF,ME.DSA,ME.SF.

MANIFEST.MF看起来像这样:

Manifest-Version: 1.0 
Created-By: 1.6.0_20 (Sun Microsystems Inc.) 

Name: Client.class 
SHA1-Digest: ex7bAth9HYUTIi8EcpeOc1OsVMg= 

Name: I/I.class 
SHA1-Digest: 0H6A7/XmOCNhayPI9TwC45Mky4s= 

Name: I/I.gif 
SHA1-Digest: AzzSpXaRFMYvtYJvrnFsHQDvJkE= 

我想在沙盘或虚拟机中运行它进一步分析,什么是错误的意思我该怎么办好呢?

这显然是某种恶意软件,所以只有专家才能回答这个问题。提前致谢!

+0

你能否给我们提供I.gif?显然,对任何想使用它的人发出强烈的警告......我想初始化'I'类并查看它从该文件中提取的信息。别担心,我会小心:) –

+0

正如您在源代码中看到的,字符串是从I.gif构建的,并用作http连接的url。 – Stephan

+0

@Stephan是的,我知道。但是我想知道它指向哪里,或者它想要写什么文件。 –

回答

2

为了从jar文件启动Java应用程序,它必须知道哪个类形成了入口点。该课程需要使用main方法。它可以在jar的MANIFEST.MF文件中指定,也可以在运行时指定(例如,从命令行)。

反编译的类(确实似乎被模糊处理)不包含main方法。所以这不会是一个可以作为独立应用程序运行的jar。但是,Client扩展了Applet,表示这是为了在浏览器中作为Web小程序运行。检查this page以了解如何运行它。

如果您怀疑它是恶意的,可能最好通过一堆病毒/间谍软件/广告软件扫描程序来运行它。

编辑:改变代码,并与GIF运行它(!如果你不能确定你在做什么不这样做),我得出的结论是,在此之后发生了什么事情:

首先,“gif”将以稍微圆润的方式解码。它的前三个字节决定了gif的其余部分将被加载到的字节数组的大小。该字节数组的一部分用于构造applet中使用的字符串。

当小程序初始化时,它将获取小程序参数AMLMAFOIEA的值。该参数需要在包含applet的HTML中设置,因此该值将取决于运行applet的页面。 Here's the details of how this is set.

之后,它会得到环境变量TEMP的值。在我的情况下,这指向我的用户目录中的AppData\Local\Temp。它会追加\JavaLoad.exe这个,并使用该路径来创建一个FileOutputStream,所以显然它试图写出一个JavaLoad.exe文件在您的临时文件夹中。

然后,它将建立到AMLMAFOIEA小程序参数指定的URL的HTTP连接,将其请求方法设置为GET。将从连接打开一个流,并将其内容转储到JavaLoad.exe文件中。

代码块

if ((this.b == this.c) && (this.b + I.I(1) == this.c + I.I(1))) 
    { 
    this.b = I.I(4); 
    this.c = I.I(6); 
    this.b = this.c; 
    } 

的不断重复,似乎什么也不做。它可能已经被混淆器添加了,因为这似乎没有任何功能影响。所有重要的东西都是在这些测试之外完成的,并且字段bc似乎没有用于任何真正有用的功能,只有字段a用于保存目标URL字符串。

因此,总之,这看起来确实很可疑。但是它真正尝试下载的东西取决于applet的环境。不幸的是,这并不意味着我们有任何真正的来源。也许这是一个普通的木马客户端,打算供任何希望通过带applet的网站传递恶意负载的人使用。由于小程序在有限权限的沙箱中运行,因此我不确定这是否可行。我也不知道它最终如何运行JavaLoad.exe。我想它依赖于其他一些预计这个文件存在的过程,也许通常是无害的。

这很有趣。感谢您的资源。如果您不是Java开发人员,并且不知道如何从代码中取出危险部分,我建议您不要自己尝试运行这些东西。

1

MANIFEST.MF不包含主要的类属性,就像您在帖子中看到的那样。这可能是一个troyan下载程序,它明确地打开一个httpconnection,下载文件并执行它们。 gif文件似乎包含网址。

我强烈建议删除此jar文件并扫描计算机中的恶意软件!不要试图执行它。

相关问题