Ayuda descubrir tipo de proteccion !

Iniciado por Dawer, 28 Julio 2016, 03:00 AM

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

Dawer

Hola Saludos, soy nuevo en esta agradable comunidad, la cual visito con frecuencia buscando aprender algo nuevo.
bueno el tema en el que desearia un poco de ayuda y orientacion es porque eventualmente asumo retos en modificacion de uno que otro programita  :rolleyes:
pero ahora me siento frustrado porque di con uno que despues de 3 semanas no logro  ni tan solo conocer que tipo de proteccion es que tiene, los datos son estos:
-programa hecho en visual basic 5 segun RDG packer, tipo gestion- ventas.

-lo analize peid y dice lo mismo, nada de packer ni proteccion

- con olly activando todas la excepciones logro correlo pero en los puntos o apis
que a mi parecer son mas sospechosas al poner HBP o BP nunca para ni me pasa informacion en un condicional.

- lo curioso que veo es que en la zona de codigo mas caliente en el momento que se ejecuta aparecen lineas de codigo nuevo y luego cuando termina la rutina desaparecen que sera????

- en la carpeta donde esta el exe solo hay 2 archivos el exe y la base de datos,
porque solo 2??????? :o
cualquier consejo es bien recibido gracias..

MCKSys Argentina

Hola!

Está en código nativo o PCODE? Le pasaste VBDecompiler?

Saludos!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


Dawer

Hola,
Si esta en codigo nativo y le pase el VBDecompiler pero no logre avanzar por ahi.
con esfuerzo lo mas que le he encontrado es que usa una api llamada "RtlcompareMemory" casi seguro estoy que ahi compara con los bytes del nombre-serial verdadero, pero:
* Con los bp no logro pararlo alli
* Con un Bp en GetProcAddress si va para parando pero nunca aparece la api en mencion.
*Con un all intermodular calls, solo aparecen llamadas a MSVBVM60 pero ni rastros de dicha api.
Si tan solo pudiera ver en el exe donde llama esta api pues probaria invirtiendo los saltos que le siguen y creo quedaria listo, pero no logro llegar alla.
Y para complicar mas las cosas con un nombre-serial falso nunca dice nada, ojala saliera el cartelito notificando nombre incorrecto y todo seria mas facil pero no.
bueno gracias sigo a la espera..saludos...

apuromafo CLS

solo por curiosidad, te mandaré un mail pidiendote el programa para verlo por encima, posiblemente tiene algun molebox o similar...

Saludos Apuromafo

MCKSys Argentina

Probablemente no debería, pero es sólo para demostrar que poniendo un poco de entusiasmo en el tema y leyendo tutoriales, se puede romper lo que sea:


  • Abrir programa con Olly normal
  • BP en 007EE56F
  • Ejecutar y cuando para, ver valor STRING Variant (EAX-->Follow in dump. En el dump, el 3er DWORD-->Follow in dump) PUSHeado al stack.
  • Reiniciar proggie.
  • Abrir C:\Lic.dat y colocar el valor "pescado" como texto simplemente.
  • Ejecutar e ingresar el mismo texto para registrar.

Como ves, registrar el programa es sencillo. Ojo! Si el programador puso "cosas ocultas", entonces no sería todo; PERO según lo que veo, parece que si.

Saludos!

PD: Aún no es navidad, pero va otro regalo: pass de la db: /398026878
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


Dawer

#5
Magistral gracias a ti MCKSys Argentina y a Apuromafo que han tenido la gentileza de ayudarme con este karma que aun no termina, porque como dices si tiene algo oculto
que ya no es oculto porque se que es y donde esta pero no logro superarlo, pero vamos avanzando que es lo importante  ;-)


Cuando pongo los HBP en la rutina sospechosa estos son desactivados por la misma proteccion que tiene el programa, use un plugin anti-anti-HBP pero no tuve exito, luego use el script descrito en el curso del reconocido Narvaja en la leccion 42 pero tampoco logra pararlo, cuando se detiene en el KiuserDespacher miro el context y trazando con F7 veo como cambia la direccion de mi HBP por otra y asi lo hace una y otravez entrando y saliendo.
La cosa es que trazando nunca llega al final de la rutina ya que esta es cronometrada y al ver que exedio el tiempo limite me lleva a dar vueltas infinitas.

Que otra tecnica podria usar para evitar la desactivacion de los HBP?

MOD EDIT: No hacer doble post.

MCKSys Argentina

Cita de: Dawer en  3 Agosto 2016, 19:40 PM
Cuando pongo los HBP en la rutina sospechosa estos son desactivados por la misma proteccion que tiene el programa, use un plugin anti-anti-HBP pero no tuve exito, luego use el script descrito en el curso del reconocido Narvaja en la leccion 42 pero tampoco logra pararlo, cuando se detiene en el KiuserDespacher miro el context y trazando con F7 veo como cambia la direccion de mi HBP por otra y asi lo hace una y otravez entrando y saliendo.
La cosa es que trazando nunca llega al final de la rutina ya que esta es cronometrada y al ver que exedio el tiempo limite me lleva a dar vueltas infinitas.

Que otra tecnica podria usar para evitar la desactivacion de los HBP?

El programa que pasaste no tiene protección de ninguna clase. No debería borrar los HBP ni los BP comunes. Debes estar haciendo algo mal...

Saludos!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


Dawer

Cuando estando en olly hago correr el programa y luego en la barra de comandos yo digito "? RtlCompareMemory" me da la direccion de esta api en mi caso es 7c912b53  coloco un Bp o un HBP y queriendo regresar al programa para ejecutar una rutina ya no me lo permite porque de inmediato me activa el Bp, obligandome a que quite el Bp para poder regresar al programa.
Entonces no es esto una proteccion?? que mas podria ocasionar eso?

MCKSys Argentina

Cita de: Dawer en  4 Agosto 2016, 00:50 AM
Entonces no es esto una proteccion?? que mas podria ocasionar eso?

Que el proggie la esté llamando a cada rato. Si tiene muchos OCX's hechos en C/C++, esa API es llamada mucho.
De todas formas, en VB no necesitas preocuparte por dicha API. Debes mirar las de la libreria del runtime (msvbvmXX.dll)

Saludos!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


Dawer

ahhh en verdad muchas gracias MCKSys Argentina, disculpa mi ignoracia  :-[
Ahora tengo esta otra inquietud haber si por aqui le pegamos a algo,
estando en el propio ejecuble (el de la carpeta) con olly voy a esta direccion:
006EF17F el siguiente codigo:
006EF17F ADD BYTE PTR DS:[EDX],AL
006EF181 OR BYTE PTR DS: [ECX+8D8B084A],44
006EF188 ???
006EF18A DEC DWORD PTR DS: [ECX+D48B0C4A]

Bueno lo extraño para mi es que estas lineas en cuanto trato de desplazarme hacia arriba o hacia abajo de inmediato desaparecen sin dejar rastro, solo aparecen si las llamo con su direccion exacta, es esto normal? y cuando hago correr el programa siguen ocultas porque se esconden? sera que es un exe embrujado?