Revisar el correo electrónico de Phising y su carga útil ... ¿hice esto bien?

6

Recientemente, mi empresa recibió un correo electrónico de phishing generalizado, afortunadamente, nadie hizo clic en el enlace (¡lo cual es genial!)

Como soy estudiante y pasante actual que trabaja en Seguridad de TI, quería ver qué contenía este correo electrónico de phishing.

Comencé con la ejecución de un comando cURL en el enlace y obtuve otro enlace dentro de él. Básicamente, el enlace hace referencia a la segunda URL y se actualiza cada 2 segundos.

Utilicé un comando cURL en ese enlace y obtuve lo siguiente en la respuesta del encabezado

(Se eliminaron los enlaces y los dominios para prevenir la infección)

HTTP/1.1 200 OK
Server: nginx/1.8.1
Date: Sat, 21 May 2016 22:07:32 GMT
Content-Type: text/html
Content-Length: 4713
Connection: keep-alive
X-Powered-By: ARR/2.5(bb4753d98)
Set-Cookie: AFFID=370951; expires=Mon, 20-Jun-2016 22:07:26 GMT;     Max-Age=2592000; path=/; domain=.XXXXX.(com)
Set-Cookie: SID=20AAA; expires=Mon, 20-Jun-2016 22:07:26 GMT;     Max-Age=2592000; path=/; domain=.xxxxx.(com)

Dentro de ese cuerpo, había un javascript que contenía este código.

var lOO = '==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';

    function OII(data) {
        var _1O0lOI = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
        var o1, o2, o3, h1, h2, h3, h4, bits, i = 0,
            enc = '';
        do {
            h1 = _1O0lOI.indexOf(data.charAt(i++));
            h2 = _1O0lOI.indexOf(data.charAt(i++));
            h3 = _1O0lOI.indexOf(data.charAt(i++));
            h4 = _1O0lOI.indexOf(data.charAt(i++));
            bits = h1 > 16 & 0xff;
            o2 = bits >> 8 & 0xff;
            o3 = bits & 0xff;
            if (h3 == 64) {
                enc += String.fromCharCode(o1)
            } else if (h4 == 64) {
                enc += String.fromCharCode(o1, o2)
            } else {
                enc += String.fromCharCode(o1, o2, o3)
            }
        } while (i = 0; i--) {
            ret += string.charAt(i);
        }
        return ret;
    }
    eval(OII(_1O0(lOO)));

Al ver que se trata de una Decodificación de Base64, lo ejecuté en un compilador, en lugar de utilizar eval (), utilicé console.log () para imprimir los resultados.

eval(function(p,a,c,k,e,d){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};while(c--){if(k[c]){p=p.replace(new RegExp('\b'+e(c)+'\b','g'),k[c])}}return p}('2i(26(p,a,c,k,e,d){e=26(c){25(c35?2a.2e(c+29):c.2d(36))};2b(!\'\'.27(/^/,2a)){28(c--){d[e(c)]=k[c]||e(c)}k=[26(e){25 d[e]}];e=26(){25\'\\w+\'};c=1};28(c--){2b(k[c]){p=p.27(2c 2f(\'\\b\'+e(c)+\'\\b\',\'g\'),k[c])}}25 p}(\'1p(U(p,a,c,k,e,d){e=U(c){W(c1s?1r.1m(c+1g):c.1f(1e))};1h(c--){1i(k[c]){p=p.1k(1j 1o(\\'\\\\b\\'+e(c)+\\'\\\\b\\',\\'g\\'),k[c])}}W p}(\\'M I=\\\\'%H%b%8%a%3%o%4%2%4%C%o%0%h%j%4%0%G%4%g%L%5%s%5%b%8%a%3%o%4%j%J%9%e%n%6%8%4%3%1%6%2%5%a%0%x%8%1%1%d%3%0%b%x%0%6%5%k%7%0%c%l%m%9%z%9%i%s%5%a%2%8%1%1%d%3%0%r%6%5%k%7%0%c%2%h%2%l%6%5%s%3%B%5%4%1%a%f%8%1%1%d%3%0%r%6%5%k%7%0%c%m%2%E%2%4%a%n%0%2%w%2%e%5%7%b%0%v%9%9%i%3%e%2%l%4%C%o%0%1%e%2%6%5%s%3%B%5%4%1%a%f%8%1%1%d%3%0%r%6%5%k%7%0%c%2%h%h%2%j%n%6%c%0%e%3%6%0%c%j%2%D%D%2%F%8%1%1%d%3%0%r%6%5%k%7%0%c%m%9%i%z%2%9%i%i%c%1%8%n%t%0%6%4%f%8%1%1%d%3%0%h%j%4%0%b%4%8%1%1%d%3%0%j%v%9%i%i%8%1%1%d%3%0%r%6%5%k%7%0%c%2%h%2%l%c%1%8%n%t%0%6%4%f%8%1%1%d%3%0%f%3%6%c%0%G%N%e%l%j%4%0%b%4%8%1%1%d%3%0%j%m%2%F%h%2%p%S%m%2%E%2%4%a%n%0%2%w%2%e%5%7%b%0%v%9%i%A%9%i%a%0%4%n%a%6%2%l%8%1%1%d%3%0%r%6%5%k%7%0%c%m%v%9%A%9%3%e%2%l%5%a%0%x%8%1%1%d%3%0%b%x%0%6%5%k%7%0%c%l%m%m%2%z%9%2%2%2%2%q%3%6%c%1%q%f%7%1%8%5%4%3%1%6%f%u%a%0%e%2%h%2%y%u%4%4%o%w%g%g%R%O%K%p%q%0%3%B%u%4%7%1%b%b%f%4%1%o%7%1%s%0%7%C%e%1%a%t%1%4%3%1%6%f%8%1%t%g%n%b%g%5%7%t%d%g%8%7%5%p%b%5%e%e%7%1%q%0%a%p%1%3%7%g%y%v%9%A%2%0%7%b%0%2%z%9%2%2%2%2%q%3%6%c%1%q%f%7%1%8%5%4%3%1%6%f%u%a%0%e%2%h%2%y%u%4%4%o%w%g%g%b%5%s%0%p%4%u%0%p%q%3%7%c%p%5%6%3%t%5%7%b%f%6%0%4%g%y%v%9%A%9%H%g%b%8%a%3%o%4%J\\\\';[removed for protection]|2Z|2M|2N|2O|2L|2K|2H|2I|2J|2P|2Q|2W|2X|30|2Y|2V|2U|2R|2S\'.2h(\'|\'),0,{}))',62,204,'|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||return|function|replace|while||String|if|new|toString|fromCharCode|RegExp|parseInt|split|eval|u0065|u0020|u006f|u006b|u0022|u0072|u002e|u0063|u0061|u0069|u006e|56|62|129|u0074|u000a|_escape|u0066|u0009|u003d|u0073|u002f|u0064|u006c|u0029|u0067|u0028|u0075|u0045|u0034|u0070|u0077|u0076|u002d|u0068|u003b|u003e|u006d|u007b|u005f|u0027|u003a|u0079|u007d|u003f|u0021|u006a|u0078|||u003c|u0062|u0039|var|u0026|write|u0036|document|unescape|u0031|u004f'.split('|')))

Lo encontré en enlace y obtuve los resultados devueltos

var _escape = '%u003c%u0073%u0063%u0072%u0069%u0070%u0074%u0020%u0074%u0079%u0070%u0065%u003d%u0022%u0074%u0065%u0078%u0074%u002f%u006a%u0061%u0076%u0061%u0073%u0063%u0072%u0069%u0070%u0074%u0022%u003e%u000a%u0066%u0075%u006e%u0063%u0074%u0069%u006f%u006e%u0020%u0061%u0072%u0065%u005f%u0063%u006f%u006f%u006b%u0069%u0065%u0073%u005f%u0065%u006e%u0061%u0062%u006c%u0065%u0064%u0028%u0029%u000a%u007b%u000a%u0009%u0076%u0061%u0072%u0020%u0063%u006f%u006f%u006b%u0069%u0065%u0045%u006e%u0061%u0062%u006c%u0065%u0064%u0020%u003d%u0020%u0028%u006e%u0061%u0076%u0069%u0067%u0061%u0074%u006f%u0072%u002e%u0063%u006f%u006f%u006b%u0069%u0065%u0045%u006e%u0061%u0062%[removed for protection];
document.write(unescape(_escape));

Después de eso tomé el código reemplazado document.write con console.log y regresé con el siguiente javascript.

    function are_cookies_enabled() {
        var cookieEnabled = (navigator.cookieEnabled) ? true : false;

        if (typeof navigator.cookieEnabled == "undefined" && !cookieEnabled) {
            document.cookie = "testcookie";
            cookieEnabled = (document.cookie.indexOf("testcookie") != -1) ? true : false;
        }
        return (cookieEnabled);
    }
    if (are_cookies_enabled()) {
        window.location.href = 'website';
    } else {
        window.location.href = 'certain website';
    }

Al ver estos dos sitios web, utilicé cURL en el primer enlace y obtuve este encabezado

HTTP/1.1 301 Moved Permanently
Server: nginx/1.8.1
Date: Sat, 21 May 2016 21:42:15 GMT
Content-Type: text/html
Content-Length: 33
Connection: keep-alive
X-Powered-By: ARR/2.5(441192e35)
Location: (link to second website in javascript)

El cuerpo de este enlace contenía una redirección al segundo enlace. Ejecutando cURL en eso obtuve esta respuesta de encabezado

HTTP/1.1 302 Found
Server: nginx/1.9.9
Date: Sat, 21 May 2016 21:42:38 GMT
Content-Length: 11
Connection: keep-alive
location: (link to header response from first link)

El cuerpo contenido era un "redireccionamiento". Aparentemente apunta al segundo enlace con las cookies de encabezado como se ve arriba, configurando la cookie en una ruta de dominio.

Así que mi pregunta es, ¿he desenfocado el código correctamente? ¿Este malware está intentando crear una cookie de prueba y redirigir a otro sitio web malicioso?

Realmente quiero entender por qué no ejecuto el javascript allí mismo, en lugar de redirigir todo el lugar. ¿Y cuál es el propósito de establecer la cookie en el dominio? ¿Es una puerta trasera, botnet, ddos?

    
pregunta J.Halon 22.05.2016 - 00:31
fuente

2 respuestas

2

Hay varias razones para esto (envío de datos por todo el lugar). Si está haciendo phishing con la intención de explotar algo, puede tener algo como mod_redirect ejecutándose en segundo plano para apuntar a los específicos. Por ejemplo:

if UserAgent = IE && Windows 7
then
send them to this particular page with Win7 IE specific exploits

o

if UserAgent = Mozilla && OSX
then
send them to this page with OSX exploits

Pero digamos que es una estafa de phishing malvertising. Un atacante podría hacerlo basándose en la ubicación geográfica, por ejemplo: "Si el usuario viene de los Estados Unidos, envíelo a un sitio que vende Levitra ... Si viene del Reino Unido, envíelo a esta página que vende Viagra"

Hay muchas razones para hacerlo fuera de la detección (alguien invierte el phish). "Si alguien viene de un .mil & & usa IE & & su WinXP en ejecución" Cualquier cosa que se pueda pensar puede ser una razón legítima para que un atacante maximice sus capacidades para explotar algo. Incluso si el exploit NO es un exploit basado en el sistema. "Explotemos el hecho de que Levitra se vende mejor en los EE. UU. Que en el Reino Unido".

    
respondido por el munkeyoto 21.06.2016 - 21:53
fuente
1

El creador de Malware puede usar los diversos puntos de redirección para cambiar el comportamiento del script después de que se haya implementado en su objetivo, tal vez todos los sistemas estén bajo el control de los atacantes y él elija redirigir diferentes objetivos a diferentes ubicaciones. Otra posible respuesta es que el atacante se preparó para la pérdida de acceso a uno de los servidores (probablemente secuestrados). Cuando se pierde, cambiar la redirección a otra ubicación es mucho más fácil que implementar otro script en el destino.

    
respondido por el Jonas Köritz 22.05.2016 - 20:48
fuente

Lea otras preguntas en las etiquetas