Skip to content

Instantly share code, notes, and snippets.

@AndrewReitz
Created March 3, 2015 21:26
Show Gist options
  • Save AndrewReitz/3c786632e54cdbf6ebce to your computer and use it in GitHub Desktop.
Save AndrewReitz/3c786632e54cdbf6ebce to your computer and use it in GitHub Desktop.
How much do you hate me now?
char z = Character.class.getDeclaredMethods()[0].toString().charAt(6)
char x = javax.sql.RowSet.class.getName().charAt(5)
Object o = ClassLoader.getSystemClassLoader()
.loadClass(
javax.crypto.Cipher.class.getName().split(String.format("\\%s", x))[0].substring(0, 4) +
x +
java.lang.annotation.Annotation.class.getName().split(String.format("\\%s", x))[1] +
x +
Character.toUpperCase(java.sql.Connection.class.getName().split(String.format("\\%s", x))[1].charAt(0)) +
javax.crypto.Cipher.class.getName().charAt(8) +
Character.toLowerCase(java.lang.String.class.getName().charAt(10)) +
java.lang.String.class.getName().charAt(11) +
new StringBuilder(Class.class.getMethods()[1].toString().split(String.valueOf(z))[3].split(
String.format("\\%s", x))[3].substring(5, 7)).reverse())
.getDeclaredField(Character.toLowerCase(OutOfMemoryError.class.getSimpleName().charAt(0)).toString() +
OutOfMemoryError.class.getName().substring(11, 13))
.get(null);
o.getClass()
.getMethod(java.io.PrintStream.class.getMethods()[1].toString().substring(32, 39),
String.class)
.invoke(o, new String([72, 101, 108, 108, 111] as byte[]) +
z +
new String([87, 111, 114, 108, 100] as byte[]) +
"!")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment