-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Mathias,

On 2/16/15 5:43 AM, Mathias af Jochnick wrote:
> Our server has been in production for years without issues, but
> today it crashed out of the blue.
> 
> Last in the logs:
> 
> Exception in thread "main" java.lang.NoClassDefFoundError:
> aasxknsakadskdskdskdsakmxxads Caused by:
> java.lang.ClassNotFoundException: aasknsakadskdskdskdsakmads at
> java.net.URLClassLoader$1.run(URLClassLoader.java:217) at
> java.security.AccessController.doPrivileged(Native Method) at
> java.net.URLClassLoader.findClass(URLClassLoader.java:205) at
> java.lang.ClassLoader.loadClass(ClassLoader.java:321) at
> sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at
> java.lang.ClassLoader.loadClass(ClassLoader.java:266)
> 
> Could not find the main class: aasxknsakadskdskdskdsakxxmads.
> Program will exit.

Where do you see this? Which log file?

When Java can't load a class, a ClassNotFoundException or
NoClassDefFoundError is thrown, but it does not terminate the JVM.

The message above says "Could not find the main class", which
indicates that a JVM was trying to launch with a new main class, not
that an existing JVM (i.e. Tomcat running your web apps) was trying to
load a class.

When I run my JVM with a bad main class, I don't get a stack trace:

$ java -showversion foo
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)

Error: Could not find or load main class foo

Other versions of Java:

$ java -showversion foo
java version "1.7.0_76"
Java(TM) SE Runtime Environment (build 1.7.0_76-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.76-b04, mixed mode)

Error: Could not find or load main class foo

$ java -showversion foo
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-466.1-11M4716)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-466.1, mixed mode)

Exception in thread "main" java.lang.NoClassDefFoundError: foo
Caused by: java.lang.ClassNotFoundException: foo
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

So, I get the exception and stack trace, but no message about how the
"Program will exit."

So... how is this being launched?

> While its obvious what caused the crash, i have no clue as to why.
> We have no new production code, nothing has changed as far as we
> know. I'm not sure how to investigate this, to me it seems like
> some sort of dynamic class-loading hack attempt?
> 
> Can i look for some configured service to turn off?
> 
> I'm at a loss so any pointers on how to investigate / prevent this 
> would be extremely appreciated.
> 
> Tomcat/6.0.28

No currently-supported version of Tomcat prints the message "Program
will exit.". I'm at a loss to explain why you would *ever* see this
message, let alone what is causing it in your particular case.

I would treat the server as suspicious and take appropriate steps.

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: GPGTools - http://gpgtools.org

iQIcBAEBCAAGBQJU4g4aAAoJEBzwKT+lPKRYdAUP/0ud2VoU5Ts5ztmHCHGBkeF4
bGAvY7/eKNWxOG7Zt7KlDvIl06dZa7yQarnD6EtpdAWtg1lP3YO5GM6HXlS8EN9g
14MrTxsC0rGJXji2+z7EHXwi2v1bosLqadufgaS6RXgbhiZ/YhoiHK2MWTEDgONX
5GLe8yjQQ2ADZeb8JaOO3fT0Tt1/ZQd/hRLsyCw2QFCUF/VP9puczMb7cQj6v2L/
xizSxJenSZsVljVSEnwC/XBv/JpIja/F9FD2qvB0da9hSa5Usuvg6GSPihegldMS
nIXgbdYQcb8m3aFysF/LVTd2cRHp3RQfz/O10mNjSI0eDFkPOHXeEXOy0Sqdew8u
VtrUm1haWrbo/sAUDBpgIvL5RP4L/YBH84CFcG2syXeff/kfCE1wkKH/HaOx9B31
S7wLVp/fk1RW1N2KHv3SdxWh1Ual7uvidyP3+Gmztk3278OwPX8Ji49tXB9aLc8R
fzXi06laGkQ8T/mQggzeSvr70BW6rBmcK9gziFmNxUbOrCvOCP987h97YXd2NRZc
qTXOWVdO+GkO09thdVCRCd3IPbvt+P7en+A0b+p7eJUQZjIYlFHA1pL9hoDxYLD1
C3Zfedk4tpig4ynDM+VHZ9n44zEJO8RSZlzknNiLiy0GE1pFMr0TJePTMsc4tCu0
zb/vU3pKvKrQNFIdydaE
=jXyS
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to