1、是否是Java程序?
是。十六进制文本编辑器打开,前四个字节为0xCAFEBABE,这是Java文件的标志
2、是否可执行?
不可执行。
测试环境:
Sun j2sdk 1.4.2 _08
执行:
java CheckFileB
执行结果如下:出现异常ClassFormatError
分析原因:
1、 类加载时class文件格式不正确等原因导致类不可加载
2、 程序执行过程中自身抛出此异常,故意抛出异常,或调用别的类时出现异常。
如果为原因1,此程序尚未执行,没有进一步危害。
如果为原因2,程序可能已经执行,可能会有其它危害。
进一步分析
修改j2sdk 1.4.2 _08中的ClassLoader部分源码,对类装载过程进行跟踪,修改如下:
protected final Class defineClass(String name, byte[] b, int off, int len, |