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

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


  Mostrar Mensajes
Páginas: 1 ... 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 30 31 32 33 ... 143
171  Foros Generales / Sugerencias y dudas sobre el Foro / Ver el foro completo desde el móvil en: 2 Noviembre 2013, 19:26 pm
Desde algunos dispositivos solo se puede acceder al foro en la versión wap y no hay ninguna forma de verlo en formato completo.

Esto lo digo porque la mayoría de foros SMF, en modo wap, tienen una opción abajo del todo para ver el foro en la versión completa (Normalmente "Ir a la versión completa")...
¿Se podría añadir esta opción en el foro.elhacker.net?
172  Programación / Ingeniería Inversa / Re: Noticias en: 25 Octubre 2013, 00:22 am
24 de octubre de 2013 - ¿OllyDBG para 64 bits?

No veo todavía enlace de descarga, así que como dice su web: echa un vistazo a esto:
http://www.ollydbg.de/odbg64.html

Si hubiésemos estado en fecha de Santos Inocentes ese "This is a joke" me hubiera llevado a pensar que era una broma...

Parece que comienza un nuevo desarrollo, aunque todavía no puede depurar código, y no está ni siquiera en estado Alpha...
173  Programación / Ingeniería Inversa / Re: SpongeBob CRK1 by MadAntrax (éste es de los complicados) en: 12 Octubre 2013, 11:44 am
jeje MCKSys Argentina , enhorabuena!! ;-)

Yo la primera contraseña que probé fue "vive en una piña y debajo del mar..."  ;D

174  Programación / Ingeniería Inversa / Re: Crackme: Keyfile_Me by MadAntrax en: 11 Octubre 2013, 21:45 pm
Puf!!! Karmany eres una bestia! (ojo! en el buen sentido  :))

Ese plugin que comentas me ha dejado pasmado: estaba armando un script para reestructurar cada opcode de la vm, pero con esto no puedo competir! (el script demoro unas 3 horas en reestructurar solamente. De ahi a desofuscar estaba a 1 año luz...  :-\)

Pero bueno, mucho de este arte consiste en saber reconocer las cosas del principio. Pense que era una VM custom y por eso me puse a atacarla, pero veo ahora que es de Oreans.

@karmany: Felicitaciones amigo!
@||MadAntrax||: Muy buenas ideas, espero sigas posteando cosas asi cada tanto...

Saludos!

No te he podido contestar antes...
¡Buah! enfrentarse a una VM tan compleja como esta desde cero, requiere muchísimas horas de análisis. Yo no hubiese analizado la VM sin el plugin, muchas horas..... Además yo no sé si los opcodes son los que existen en la subrutina (después de cada jmp) o el mismo packer las "esconde" en otro sitio.
Un saludo amigo...
175  Programación / Ingeniería Inversa / Re: Mi primer Tutorial: Desempacando a mano UPX 3.91w (for newbies) en: 11 Octubre 2013, 21:41 pm
Muy bien hecho, se entiende perfectamente. Secillo y muy bien explicado.

Mi pequeño granito de arena es que yo cuando veo un UPX no pongo ningún Breakpoint y suelo avanzar con la tecla "Av Pág" hasta encontrar el
Código:
JMP
, pero lo del BP está bien hecho para otros packers diferentes...

Saludos!!

PD. Como bien explicas y haces en el tutorial, yo siempre digo que la primera opción para descomprimir un UPX debe ser el propio UPX. Además UPX, en su licencia, no permite la modificación de su stub, por este motivo la mayoría de programas se deberían descomprimir con UPX...
176  Programación / Ingeniería Inversa / Re: Crackme: Keyfile_Me by MadAntrax en: 7 Octubre 2013, 20:55 pm
Cita de: ||MadAntrax||

Te ha resultado complicada la VM?
Te ha resultado complicado el algoritmo del keyfile?

Alguna sugerencia que me puedas indicar para mejorar? Espero con ansias algún tutorial (aunque sea cortito) destripando el keyfile_me, incluyendo también el "fallo" que has descubierto ;)

Saludos y gracias por participar!!

1.- Mi opinión
La idea de usar una VM (Máquina Virtual) es muy interesante para evitar que te puedan desensamblar el código, sin embargo, la has usado en la mayoría de subrutinas. Esto en un Crackme no lo veo del todo bien, porque limitas la resolución a las personas que conozcan dicha VM. Me lo imagino como analizar un P-Code sin ninguna herramienta y desde cero: es muy difícil.

Por este motivo yo creo que el Crackme debería haber usado la VM en una sola subrutina, así se hubiese animado más gente a analizarlo.

Sobre la VM: es impresionante (yo me quito el sombrero ante la programación de este "bicho"), va cambiando y no es igual en cada compilación y no he visto en la red ningún tutorial sobre cómo desvirtualizar (desensamblar los opcodes) de la última versión (aunque lleva años sin actualizarse). Sin embargo, la protección de esta VM no es completa porque deja muchas cosas a la vista, por ejemplo, la IAT está intacta. Esto es un punto débil que he aprovechado.

2.- Solución SENCILLA
Está comprimido con UPX, yo lo desempaco con el mismo UPX (no hace falta pero se trabaja mejor y es muy sencillo):
Código:
C:\upx309w>upx -d keyfile_me.exe
                       Ultimate Packer for eXecutables
                          Copyright (C) 1996 - 2013
UPX 3.09w       Markus Oberhumer, Laszlo Molnar & John Reiser   Feb 18th 2013

        File size         Ratio      Format      Name
   --------------------   ------   -----------   -----------
    864256 <-    791040   91.53%    win32/pe     keyfile_me.exe

Unpacked 1 file.

Llegas al OEP: 4013EC. Fíjate qué 2 funciones tenemos encima:
Código
  1. CPU Disasm
  2. Address   Hex dump          Command                                  Comments
  3. 004013BA   .- FF25 CC104000 jmp dword ptr ds:[4010CC]                ; MSVBVM60.__vbaFileOpen
  4. 004013C0   $- FF25 0C104000 jmp dword ptr ds:[40100C]
  5. 004013C6   .- FF25 C4104000 jmp dword ptr ds:[4010C4]
  6. 004013CC   .- FF25 80104000 jmp dword ptr ds:[401080]                ; MSVBVM60.__vbaStrCmp
  7. 004013D2   .- FF25 94104000 jmp dword ptr ds:[401094]
  8. 004013D8   .- FF25 7C104000 jmp dword ptr ds:[40107C]
  9. 004013DE   .- FF25 8C104000 jmp dword ptr ds:[40108C]
  10. 004013E4   $- FF25 F8104000 jmp dword ptr ds:[4010F8]
  11. 004013EA      00            db 00
  12. 004013EB      00            db 00
  13. 004013EC   >  68 5C1D4000   push 00401D5C
  14. 004013F1   .  E8 EEFFFFFF   call <jmp.ThunRTMain>                    ; Jump to MSVBVM60.ThunRTMain
  15.  

Poco más queda por decir. Pon un BP en __vbaStrCmp (gran debilidad) y verás qué muestra la pila en la primera parada:
Código:
0012F8F0   004540C1  /CALL to __vbaStrCmp
0012F8F4   004033A0  |Cadena1 = ""
0012F8F8   002BD55C  \Cadena2 = ""
0012F8FC   0012FAE8
0012F900   0012FBB8
0012F904   00000001
0012F908   00000000
0012F90C   00000000
0012F910   00000000
0012F914   00000000
0012F918   00000000
0012F91C   004083A4  keyfile_.004083A4
0012F920   00000000
0012F924   002BD5D4  UNICODE "\filekey.lic"

Parece que el archivo se debe llamar filekey.lic. Crealo en el mismo directorio del Crackme y en él escribe varias líneas (verás que necesita 7). Por ejemplo escribe esto:
Código:
Primera
Segunda
Tercera
Cuarta
Quinta
Sexta
Séptima

Y ahora reinicia el depurador y simplemente con un BP en __vbaStrCmp observa la pila. El Crackme estará resuelto:

1ª línea
Código:
0012F8F0   00454237  /CALL to __vbaStrCmp
0012F8F4   001D7D94  |Cadena1 = "Registration keyfile"
0012F8F8   001DD624  \Cadena2 = "Primera"

etc...

2.- Solución compleja analizando la VM
Analizar la VM desde cero sin nada de información, es muy difícil. He visto algún artículo interesante en inglés, pero tutoriales y ejemplos ninguno.

Sin embargo, existe un poderoso plugin para OllyDBG 1.10 (sin ayuda de cómo utilizarlo) que puedes descargar de aquí: http://tuts4you.com/download.php?view.3108

Su manejo tampoco es que sea muy sencillo pero verás que (por ejemplo) si pulsas el botón derecho sobre:
Código:
00403C70   .- E9 67F40C00   jmp 004D30DC                             ;  keyfile_.004D30DC
y eliges una de las 3 opciones del plugin, aparecerá un archivo de texto con el código asm desvirtualizado (si se dice así). Debes hacerlo con todas las subrutinas en el salto jmp.

Así comprobé que el número de líneas era 7, que algunos textos (líneas) del archivo de la licencia tenían que tener más de 3 letras porque si no llegaba a NULL, que existía un código que creo que descifra strings y a veces se utiliza más de 1 vez, que se utiliza StrReverse ... todo el pastel

Lo único que no he analizado son las 3 o 4 licencias.

Finalmente, para los menos experimentados, decir que muchas veces algo complejo (una VM lo es) puede solucionarse de forma muy sencilla como se ha visto hoy...

Saludos




177  Programación / Ingeniería Inversa / Re: Crackme: Keyfile_Me by MadAntrax en: 7 Octubre 2013, 03:02 am
He disfrutamo mucho analizándolo. Después de pegarme un buen rato analizando la Máquina Virtual y de obtener el código a partir de los opcodes, descubrí que el crackme tiene una muy muy gran debilidad que ya explicaré...


Código:
Registration keyfile
karmany
elhacker.net
333437363034314729334731323230333637303134303347332E4430373330353433
423542323530433E383732344232
72666D2E76646D6062686A6072626D2972676D6461696E65
3233323635363431

Muy bueno...
178  Seguridad Informática / Bugs y Exploits / Re: Tutorial - Explotando aplicaciones con Heap Spraying en: 2 Octubre 2013, 20:06 pm
Muy buen tutorial, impresionante. Mis felicitaciones...
179  Programación / Ingeniería Inversa / Re: OllyDbg 1.0 o OllyDbg 2.0 en: 29 Septiembre 2013, 09:36 am
Desde mi punto de vista con OllyDBg 1.10 puedes trabajar perfectamente y con ayuda de los cientos de plugins que tiene, sin embargo, ollyDBG 1.10 no será ya actualizado y es incluso posible que en futuras versiones de Windows, ni siquiera llegue a funcionar.

Hace 2 días salió la versión estable de OllyDBG 2.01 y se supone que la mayoría de plugins y desarrollo va a ir dirigido a esta nueva versión.

OllyDBg 1.10 funciona perfecto pero el manejo es algo diferente y con muchas nuevas opciones. Yo creo que OllyDBG 2 se embarcó en un largo y difícil proyecto y OllyDBG 1.10 sigue siendo una excelente alternativa...
180  Programación / Ingeniería Inversa / Re: Noticias en: 28 Septiembre 2013, 15:24 pm
27 de septiembre de 2013 - Nueva versión de OllyDBG 2.01

Esta nueva versión contiene numerosas novedades. Tiene una ayuda de ¡77 páginas! donde puedes ver la descripción de la mayoría de novedades.

Su página web: http://www.ollydbg.de/
Páginas: 1 ... 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 30 31 32 33 ... 143
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines