Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: carlitos.dll en 14 Julio 2008, 23:42 pm



Título: Truco: Debugear binarios usando el mismo bat invisible
Publicado por: carlitos.dll en 14 Julio 2008, 23:42 pm
Hola acabo de leer código, y aprendido lo que muestro a continuación:

Cómo debugear binarios usando el mismo archivo y sin salida gráfica.

Ejemplo:
Código:
::CarlitoS
@echo off

if exist "reply.com" (goto Code) else (goto Crea)

::INICIO CODE REPLY
A 100
MOV AH,08
INT 21
CMP AL,0
JNZ 010A
INT 21
MOV AH,4C
INT 21

RCX
E
N REPLY.COM
W
Q

:FIN CODE REPLY

:Crea
for /f "skip=6 tokens=*" %%a in ('debug ^< "%~f0" ^>NUL') do rem

:Code
reply.com
if %errorlevel%==32 (goto :texto)
goto Code

:texto
echo Presionaste espacio
pause



Lo que hace este código es usando el for con el salto de líneas apropiado (skip) entregarle al debug el código necesario para crear el binario redireccionando a NUL.

Prefiero que analicen el code y saquen sus propias conclusiones.

Este code que escribí crea un ejecutable antiguo de Microsoft llamado reply.com que es como el pause>NUL pero en %errorlevel% nos devuelve el número de tecla presionada.

La gracia de todo esto es que se crea el binario sin salida gráfica y usando el mismo archivo.

Nota: el debug lee hasta la q y el salto de línea.


Título: Re: Truco: Debugear binarios usando el mismo bat invisible
Publicado por: carlitos.dll en 15 Julio 2008, 00:22 am
Lo mismo, pero con el source para debugear al estilo de Shadow.

Código:
::CarlitoS
@echo off

if exist "reply.com" (goto Code) else (goto Crea)

::INICIO CODE REPLY
N REPLY.COM
e 0000 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
rcx
000E
w0
q

:FIN CODE REPLY

:Crea
for /f "skip=6 tokens=*" %%a in ('debug ^< "%~f0" ^>NUL') do rem

:Code
reply.com
if %errorlevel%==32 (goto :texto)
goto Code

:texto
echo Presionaste espacio
pause



Por cierto, el code de reply.com lo obtuve de :
Código:
http://support.microsoft.com/default.aspx?scid=KB;EN-US;Q77457&


Título: Re: Truco: Debugear binarios usando el mismo bat invisible
Publicado por: leogtz en 15 Julio 2008, 02:36 am
Buen aporte Carlitos, tambien voy a probar ese reply.com aver hasta donde se puede llegar.

Saludos.