Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - LSL

#1
muchas gracias +NCR, por compartir tu trabajo.
#2
Gracias por el aporte.

y gracias a AbsshA, que está que se sale....
#3
No hay de que, era medianamente facil.
Me alegro de que ya lo tengas controlado, y que no tengas que cargar con la mochila.

Para finalizar me gustaria saber que modificastes para el resultado definitivo.

#4
Hola Masterx2010, veo que ya sabes como iniciar el programa con los argumentos que el mismo programa espera recibir, ¡verdad que es muy facil!, por eso el amigo MCKSys te recomendaba la lectura de los manuales de ollydbg desde cero, pues como no nos empapemos del manejo del olly no podemos aprovechar todas las ventajas que este nos ofrece, y lo cual es imprescindible para poder ir avanzando algo.

Y gracias por la estima que me tienes, pero que mas quisiera yo tener el nivel de los maestros que estan diez pueblos por encima mia, solo soy un currante del metodo ensayo y error, vease la http://es.wikipedia.org/wiki/Ensayo_y_error, con lo cual con paciencia, observación y mucha lectura todo ó casi todo se consigue  ;D

Te envio el archivo que yo utilizo, por si no fuese el mismo que tu utilizas.

Cualquier duda por aqui nos tienes.

p.d.- con el argumento no se te olvide poner el simbolo de guión delante del texto,
es decir exactamente "-agent" (sin las comillas).


#5
Con el primer archivo que dices "descomprimido" el punto de entrada es distinto al del original y el programa no hace nada y se cierra incluso con los argumentos que deberia encontrar al ejecutarse.

Pero con el archivo original y poniendole el argumento indicado anteriormente, si sale el splash del programa y luego al no encontrar la proteccion lanza a otro ejecutable "HDxxx" y se autocierra el ejecutable principal, lo que tienes que hacer es encontrar donde lanza al programa Auxiliar con el mensaje de error de protección, y seguramente antes de dicho proceso encontraras saltos que lo evitan a la vez de evitar cierre del proceso, (para encontrar el proceso de cirre busca en las string references el nombre del archivo HDxxx.xxx que es facil de encontrarlo, y mirando los saltos anteriores e incluso las call que llaman al inicio de dicho proceso, se debería poder evitarlo.


#6
con el primer paquete puesto, al ejecutar una de las herramientas independientes me daba el mensaje de que faltaba la dll cc3280mt, por lo que entendi que el programa no estaba totalment completo, y para andar dando palos de ciegos es mejor siempre instalar la aplicación desde el principio pues sino el resultado nunca va a ser el esperado. Total solucionado instalando la aplicacion completa.

Despues no entiendo porque as descomprimido ó dumpeado el ejecutable xxxxxxxServerx.exe, si ningun analizador de packer detecta alguno, y además el olly tampoco te advierte de nada raro ¿?.

Si solo quieres hacerlo correr, tienes que ejecutarlo añadiendole el parámetro ó argumento  "-agent" ó "-Conf" (sin las comillas)

es decir

xxxxxxxServerx.exe -agent
ó
xxxxxxxServerx.exe -conf

para debuguearlo con el ollydbg.
-> File -> Open
Nombre: xxxxxxxServerx.exe
Arguments: -agent

luego la protección debe ser por el estilo de los otras herramientas ó plugins que ya dices tener controladas.

#7
en vez de nopear, cambia el MOV DWORD PTR DS:[100C39A4],xxx, para que se mueva a dicha dirección el valor 1, ya que las comparaciones por 0 son las malas, cuando se compara por 1 debe ser el valor idoneo según se ve en otras comparaciones de las expuestas por MCKSys.

como a la dirección 100C39A4 se mueve por ejemplo el valor de EAX en ese momento, intenta previamente poner a EAX con el valor 1, por ejemplo con

XOR EAX,EAX        ; pones EAX a cero
INC EAX                ; incrementas el valor de eax en 1, 0+1= 1
MOV DWORD PTR DS:[100C39A4],EAX

Tambien prueba a sumarle 2, ó incluso a mover el valor FF, pues segun las comparaciones posteriores puede que necesite valores superiores a 0 ó 1 (o valores negativos -FF)

#8
Podrias subir el programa de instalación, pues faltan librerias.
#9
Hola MCKSys Argentina.

Cambiando un solo bit del USR.EXE, en una de las subrutinas previas al mensaje DEMO, comprobado se soluciona todo,

call    sub_164
or      al, al
jz      loc_23ED

si conseguimos que AL salga con el valor 1 (no problem) ;D

(es aconsejable hacerlo dentro de la subrutina, pues la misma es llamada desde 2 lugares distintos, y con el código de ejecución posterior muy parecidos).

Y no le puedo dar mas pistas a trepana :), que ya le puse que fuera probando y subiendo por el código en la zona caliente, para que practique y encuentre la mejor de las posibles opciones.

p.d. para evitar otros errores al guardar o leer archivos con los que trabaja la aplicación, deben de existir las subcarpetas
ABC\
CAR\
DXF\
EXE\
GRI\
HELP\    
ISO\
LIN\
PCX\
TXT\
dentro de C:\NASCAD\




#10
Hola karmany,

Celebro te guste el trabajo.   :D

Como caso practico, me ha parecido interesante realizarlo a fin de animar a los nuevos foreros, para que vean que con solo aprender básicamente a utilizar las herramientas adecuadas, y una nociones tambien elementales y básicas sobre comparaciones y saltos condicionales, las cosas pueden ser más facil de lo que parecen.