[AYUDA] [BATCH] ¿Se puede "crear" el comando debug con el notepad?

Iniciado por .:Xx4NG3LxX:., 27 Marzo 2020, 21:50 PM

0 Miembros y 1 Visitante están viendo este tema.

.:Xx4NG3LxX:.

Saludos,

¿Se podría "crear" el debug.exe mediante un Batch?

Como he visto que hacen el keyboard.com, me atreví a publicar esto, ya que no me corre el debug original. * Me da un error.

Muchas Gracias.
"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"



XKC

Cita de: .:Xx4NG3LxX:. en 27 Marzo 2020, 21:50 PM
Saludos,

¿Se podría "crear" el debug.exe mediante un Batch?

Como he visto que hacen el keyboard.com, me atreví a publicar esto, ya que no me corre el debug original. * Me da un error.

Muchas Gracias.

El debug.exe? COmo no des mas detalles...
Para poder atacar y vencer con seguridad, ataca donde ellos no puedan defenderse.
Para defenderte y resistir firme, defiéndete en donde ellos no atacarán.

.:Xx4NG3LxX:.

"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"



XKC

Cita de: .:Xx4NG3LxX:. en 27 Marzo 2020, 23:48 PM
No comprendo
Pregunto que a que te refieres con el debug.exe.
Hablas de compilar tu programa en modo debug?
Para poder atacar y vencer con seguridad, ataca donde ellos no puedan defenderse.
Para defenderte y resistir firme, defiéndete en donde ellos no atacarán.

.:Xx4NG3LxX:.

Lo que quiero saber es: como crear ese comando.

Asi como se crea el keyboard.com algo así:


If not exist keyboard.exe call:KEY
:_
keyboard
echo %errorlevel%
GOTO:_
:KEY
(echo n keyboard.dat
echo e 0000 4D 5A 2E 00 01 00 00 00 02 00 00 10 FF FF F0 FF
echo e 0010 FE FF 00 00 00 01 F0 FF 1C 00 00 00 00 00 00 00
echo e 0020 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
echo rcx
echo 002E
echo w0
echo q
echo.)>keyboard.dat
type keyboard.dat|debug>NUL 2>&1
del /f/q/a "keyboard.exe">NUL 2>&1
rename "keyboard.dat" "keyboard.exe"
GoTo:EOF


Cosas en hexadecimal no sé...
"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"



WHK

No le veo mucho sentido.

Primero... si puedes ejecutar un .bat es porque tambien puedes ejecutar un .exe, si puedes subir un batch es porque puedes subir un .exe, ¿para qué necesitarías empacar un .exe dentro de un .bat si al desempacarlo el antivirus lo detectará de todas maneras?. No sale mas facil descargar el .exe con el comando ftp o a traves de un archivo .vbs y ya?

Segundo, un ejecutable puede tener cualquier nombre, un archivo llamado debug.exe no me dice nada ni comprendo que es lo que quieres buscar, ¿quieres ponerle el nombre debug.exe a un malware?, normalmente cuando se crea un ejecutable existen versionamientos y modos de compilar, uno de ellos es el modo de depuración que generalmente se le dice debug, el modo productivo, etc, pero el modo debug es simplemente un ejecutable que hace cualquier cosa para lo que fue programado y tiene funcionalidades adicionales que hace mas facil encontrar errores y problemas en la ejecución.

Si buscas ofuscar un binario para ocultarlo y evadir algún tipo de sistema de protección entonces estás perdiendo el tiempo porque de todas maneras una ves desempacado no podrás ejecutarlo, para eso existen otros métodos pero necesitas conocer sobre el funcionamiento del sistema a bajo nivel, uso de memoria, interrupciones, etc.

Talves puedas darle un vistazo a esta sección y salir de algunas dudas:

https://foro.elhacker.net/analisis_y_diseno_de_malware-b17.0/

Saludos.

.:Xx4NG3LxX:.

Quiero (de alguna forma que no sea descarga) "crear" el comando debug de Batch, algo parecido a poner un montón de números Hexadecimales en un .dat y luego hacerlo funcional. Algo como el keyboard que hace @SmartGenius para sus BatchGames. Pero en keyboard que hace en sus codes el usa debug, así que es un poco confuso,

El comando debug, no me funciona o algo así: me sale...

Citar
Windows no puede encontrar el archivo "D:\Windows\System32\debug.exe". Asegurese de que el nombre esté escrito correctamente e inténtelo de nuevo.

Es por eso que quiero "crear" el comando yo mismo.
"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"



EdePC

Saludos,

- Debug.exe es un archivo ejecutable de 16-bit, necesitas un sistema operativos de 16-bit para que funcione. Un sistema operativo de 32-bit es capaz de emular y hacer funcionar aplicaciones de 16-bit, así mismo un sistema operativo de 64-bit es capaz de emular y hacer funcionar aplicaciones de 32-bit pero no 16-bit.

- Si tienes un sistema operativo de 64-bit no puedes hacer funcionar aplicaciones de 16-bit.

- He estado buscando y no he encontrado ningún Debug.exe para funcional para 64-bit, todos recomiendan utilizar una máquina virtual o DosBox. A lo sumo he visto que hay un proyecto DebugX pero también está desarrollado para 16-bit: https://sites.google.com/site/pcdosretro/enhdebug aunque provee el código fuente en ensamblador, por lo que se podría intentar portarlo a 32-bit ... el problema es que un programa real como Debug.exe tiene miles de líneas de código.

- Ahora, si tu sistema es de 32-bit puedes copiar el Debug.exe de un Windows XP o Windows 7, 8 de 32-bit. Pero si quieres crearlo por medio de "códigos hexadecimales" no lo vas a poder hacer del modo que has puesto en el ejemplo porque dices que NO tienes debug.exe, porque si ese código te funciona es que SI tienes debug.exe. En tu código estás utilizando a debug.exe para crear keyboard.com.

- Aquí te dejo un PasteBin del código de 1294 líneas que "crea" Debug.exe extraido de un Windows 7 de 32-bit: https://pastebin.com/6P6xnu3Q

-- En tu código que crea Keyboard.com se utiliza Debug.exe para interpretar los números hexadecimales a un binario ejecutable keyboard.com. En mi caso estoy utilizando como "intérprete" a CertUtil.exe que viene disponible en Windows 7, 8, 8.1, 10 en 32 y 64 bits, pero no en XP.

-- Nota que Debug.exe se utiliza además para "ensamblar" programas por medio de instrucciones Assemble o Código Ensamblador, cosa que no se puede con CertUtil.exe

.:Xx4NG3LxX:.

Y una ves más @EdePC ayudando, gracias por tomarte el tiempo de investigar, yo también lo hice pero sin éxito. Gracias por las aclaraciones. Actualmente no puedo acceder a internet desde mi laptop (ingreso desde un movil) el SO creo que está obsoleto o algo parecido. Lo cierto es que (ciertamente) es de 32 bits.

Abrí un tema donde explico un poco mi problema... Aunque llegue a una conclusión...
"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"