elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 115
131  Seguridad Informática / Análisis y Diseño de Malware / Re: Introducción a la programación de drivers en Windows en: 15 Octubre 2008, 17:46 pm
Muy buen rtuto Hendrix, me va a venir de lujo, solo un par de cosas, en la primera parte en enlace del DebugView está mal, es este:
http://download.sysinternals.com/Files/DebugView.zip

El enlace a la DDK compatible con win XP, 2000 y 2003 es este que viene bien que lo pongas que lo suyo me costó encontrarlo xDD
http://www.microsoft.com/whdc/DevTools/ddk/default.mspx

Por el resto todo perfecto, estoy leyéndome ahora la segunda parte ;)
Salu2
132  Programación / Programación Visual Basic / Re: Ayuda con envio por Email y FTP en: 12 Octubre 2008, 15:18 pm
Necesitas un servidor smtp para poder enviar un mail, esa forma de enviar mail's es la más simple que vas a encontrar y tampoco te cuesta nada subir un archivo a un host gratuito...
133  Programación / Programación Visual Basic / Re: Ayuda con envio por Email y FTP en: 12 Octubre 2008, 15:03 pm
Ahora es cuando yo me pregunto... ¿Para que cohones hago una recopilación de sources en un tema con chincheta?

E-mail:
http://foro.elhacker.net/programacion_vb/tutorial_enviando_email_con_vb6-t230043.0.html

Y usando google, código más simple imposible:
http://foro.portalhacker.net/index.php/topic,22659.msg97032.html#msg97032
134  Programación / Programación Visual Basic / Re: como puedo zipear un archivo sin ocx? en: 12 Octubre 2008, 13:53 pm
Es que recurriendo a la linea de comandos de otros programas, siempre se podrá hacer tal o tal cosa... la cuestión es... y si esos programas no están?  :rolleyes:

El compresor zip básico viene con windows de serie, que yo recuerde el XP y el Vista lo traían.
135  Programación / Programación Visual Basic / Re: Crear un PE Editor simple.. en: 8 Octubre 2008, 18:53 pm
Pues yo si que no se como no pongas más código jajaja Prueba a hacerlo con el código en ensamblador que te e puesto a ver si también te falla o no, pero no debería. Si mañana saco un rato y no lo has solucionado te hago un ejemplo simple :P
136  Programación / Programación Visual Basic / Re: Crear un PE Editor simple.. en: 8 Octubre 2008, 18:19 pm
Lo primero, por que obtienes los valores en hexadecimal y luego los pasas a decimal con HexToDec para sumarlos??  :xD :xD

Lo segundo, pones el archivo a cifrar a continuación del stub o en su caso rellenas los bytes necesarios?? Por que si no te va a dar error xD

Y bueno no se que más decirte, por el trozo de código que pones parece que está bien, haz pruebas con el código en ensamblador que te he pasado (espero que no se me haya olvidado ningún paso) por que tiene que funcionar ;)
137  Programación / Programación Visual Basic / Re: Crear un PE Editor simple.. en: 8 Octubre 2008, 18:03 pm
Lo que tienes que hacer es sumar o en hexadecimal los dos o en decimal los dos (VB te devuelve los números en decimal, así que súmalos así) recuerda que decimal y hexadecimal no son más que formas de representar números binarios (ceros y unos) :P
138  Programación / Programación Visual Basic / Re: Crear un PE Editor simple.. en: 8 Octubre 2008, 17:07 pm
A ver, para aclarar conceptos le llamaremos "stub" al stub del crypter y "archivo a cifrar" al archivo que quieres meter a continuación del stub cifrado y listo para que el stub lo desencripte y ejecute ok?

(1) Al raw size de la última sección del stub le sumas el tamaño del archivo a cifrar.
(2) Al virtual size de la última sección del stub le sumas el Section Aligement.
(3) Al size of image del stub le sumas el tamaño del archivo a cifrar.
(4) Pones el archivo a cifrar a continuación del stub y todo listo.

Así tiene que funcionarte perfectamente, luego solo te queda extraer el archivo a cifrar del stub, que puedes saber donde empieza calculando cuanto ocupa el stub a partir del PE, te dejo una función: (No uso las estructuras en esta función por que me la pidieron hace tiempo y no me apetecia postear todo el módulo, pero la puedes adaptar fácilmente si quieres ;))

Código
  1. Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Dst As Any, Src As Any, ByVal cLen As Long)
  2.  
  3. Private Sub Form_Load()
  4.    MsgBox "El EOF está en el byte: " & GetEOF("C:\file.exe")
  5.    End
  6. End Sub
  7.  
  8. Function GetEOF(Path As String) As Long
  9.  
  10.    Dim ByteArray() As Byte
  11.    Dim PE As Long, NumberOfSections As Integer
  12.    Dim BeginLastSection As Long
  13.    Dim RawSize As Long, RawOffset As Long
  14.  
  15.    Open Path For Binary As #1
  16.        ReDim ByteArray(LOF(1) - 1)
  17.        Get #1, , ByteArray
  18.    Close #1
  19.  
  20.    Call CopyMemory(PE, ByteArray(&H3C), 4)
  21.    Call CopyMemory(NumberOfSections, ByteArray(PE + &H6), 2)
  22.    BeginLastSection = PE + &HF8 + ((NumberOfSections - 1) * &H28)
  23.    Call CopyMemory(RawSize, ByteArray(BeginLastSection + 16), 4)
  24.    Call CopyMemory(RawOffset, ByteArray(BeginLastSection + 20), 4)
  25.    GetEOF = RawSize + RawOffset
  26.  
  27. End Function

En cuanto al ejemplo en ASM que comentaba: (FASM)

Código
  1. ; ****************************************************************************
  2. ; ***  Código que amplía 0xFF bytes la última sección de un ejecutable.    ***
  3. ; ***                                                                      ***
  4. ; ***    -> Le sumamos al raw size  de  la  última  sección el tamaño que  ***
  5. ; ***       queremos ampliarla.                                            ***
  6. ; ***    -> Le sumamos al virtual size el SectionAlignment.                ***
  7. ; ***    -> Le sumamos al  SizeOfImage  el tamaño que queremos ampliar la  ***
  8. ; ***       última sección y guardamos el archivo.                         ***
  9. ; ****************************************************************************
  10.  
  11. include 'H:\archivos de programa\fasm\include\win32ax.inc'
  12.  
  13. .code
  14. start:
  15. ; Usamos la pila para gurdar nuestras variables
  16. sub esp, 20
  17. ; [esp+0]  -> El handle del archivo
  18. ; [esp+4]  -> Handle del archivo mapeado
  19. ; [esp+8]  -> Lo que sería el "ImageBase" del archivo proyectado
  20. ; [esp+12] -> SectionAligement
  21. ; [esp+16] -> NumberOfSections
  22. ; Sobran dos bytes por el alineamiento de la pila
  23.  
  24. ; Mapeamos el archivo en memoria con 40 bytes de más
  25. invoke CreateFile, ruta, GENERIC_READ+GENERIC_WRITE, FILE_SHARE_WRITE+FILE_SHARE_READ, 0, OPEN_EXISTING, 0,0
  26. mov dword[esp], eax
  27. invoke GetFileSize, eax, 0
  28. add eax, 0x2600 ; <--- Tamaño a ampliar
  29. mov esi, dword[esp]
  30. invoke CreateFileMapping, esi, 0, PAGE_READWRITE, 0, eax, 0
  31. mov [esp+4], eax
  32. invoke MapViewOfFile, eax, FILE_MAP_ALL_ACCESS, 0, 0, 0
  33. mov [esp+8], eax
  34.  
  35. ; Obtenemos los datos necesarios del PE
  36. mov ebx, dword[eax+0x3C] ; EBX = Signature
  37. mov edi, dword[eax+0x3C] ; Guardamos también en edi la posición del signature para usarla luego
  38. add ebx, eax
  39. add edi, eax
  40.  
  41. add dword[ebx+0x50], 0xFF ; Le sumamos al SizeOfImage el tamaño a ampliar
  42. mov eax, dword[ebx+0x38]
  43. mov [esp+12], eax
  44. mov ax, word[ebx+0x6]
  45. mov [esp+16], ax
  46.  
  47. ; Obtenemos los datos necesarios de la última sección
  48. mov ax, word[esp+16]
  49. dec eax
  50. mov edx, 0x28
  51. mul edx
  52. add edi, eax
  53. add edi, 248 ; 248 = Tamaño OptionalHeader
  54.  
  55. add dword[edi+16], 0xFF ; Le sumamos al RawSize el tamaño a ampliar
  56. mov eax, dword[esp+12]
  57. add dword[edi+8], eax ; Le sumamos al VirtualSize el SectionAlignment
  58.  
  59.  
  60. ; Liberamos memoria, cuadramos la pila y salimos
  61. mov esi, esp
  62. invoke CloseHandle, dword[esi]
  63. invoke CloseHandle, dword[esi+4]
  64. invoke UnmapViewOfFile, dword[esi+8]
  65. add esp, 20
  66. invoke ExitProcess, 0
  67.  
  68.  
  69.  
  70. ruta db 'H:\h.exe', 0 ; La ruta del archivo a tratar
  71.  
  72. .end start
  73.  

Salu2
139  Programación / Programación Visual Basic / Re: Crear un PE Editor simple.. en: 7 Octubre 2008, 15:48 pm
Hice hace algún tiempo un código en asm para ampliar la última sección, si lo quieres pídelo. El mecanismo es este:

  • Le sumas al raw size  de  la  última  sección el tamaño que quieres ampliarla.
  • Le sumas al virtual size el SectionAlignment.
  • Le sumas al  SizeOfImage  el tamaño que quieres ampliar la  última sección y guardas el archivo.

Salu2
140  Sistemas Operativos / GNU/Linux / Re: Problema con alloc.h en: 6 Octubre 2008, 18:18 pm
Si solo quieres usar malloc con incluir la stdio sobra, da un warning pero si no siempre puedes incluir malloc.h como dice Skywalker , ejemplillo:

Código
  1. #include <stdio.h>
  2. //#include <malloc.h>
  3.  
  4. int main()
  5. {
  6. char* cadena = (char*)malloc(15);
  7. cadena = "Hola\n";
  8. printf(cadena);
  9. return 0;
  10. }

Salu2
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 115
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines