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ú

Temas - ViejoMajara

#1
Ingeniería Inversa / Despedida
24 Junio 2015, 08:36 AM
¡Hola!

Mi padre ViejoMajara me ha pedido insistentemente que me despida de vosotros, agradeciéndoos los buenos ratos que le habéis hecho pasar, ya que sus condiciones de salud actuales son muy precarias para ponerse ante un PC y no sabemos cómo evolucionarán.

También me ha insistido que comience con ¡Hola! y termine con Saludos, y así lo hago.

Saludos
#2
Scripting / Python mezclado con ASM
5 Abril 2015, 21:09 PM
¡Hola!

Vaya por delante que soy nuevo en Python, que de ASM sé lo que haya podido aprender en las lecciones sobre OLLY de R.Narvaja y que también tengo que pensar bastante para saber en qué sección del Foro debo colocar las preguntas que se me ocurren.

Hace unos días en el Foro de Ingeniería inversa, en el titulado "[KeygenMe] Matrix <<1,2,3>> por mr.blood", presenté un keygen en Python. Funciona pero es muy lento porque tiene que hacer la comparación entre una ingente combinación de letras. En mi PC, si el nombre que introduzco no tiene clave posible, tarda casi 40 segundos. Pensé, si las comparaciones las pudiese hacer en ASM tardaría mucho menos.

Buscando por la red encontré un módulo pyasm.py en la página de un tal pyalot-pyasm que parece ser que permite injertar código ASM en Phyton. He tratado de hacer correr el "HOLA MUNDO" de ejemplo que hay en la página citada y me da un montón de errores.

Preguntas ¿Se puede injertar ASM en Python? ¿Acelera los módulos?¿Hay alguien que haya usado el pyasm y tenga algún ejemplo de uso?

Saludos.



#3
¡Hola!

Entre la diversa infomación que tengo sobre ASM están estas 3 lecciones de R.Narvaja sobre 'Cómo hacer un keygen en ASM sin saber programación' en formato doc. En la segunda utiliza un crackme4 como ejemplo, pero no dispongo de él.

No me acuerdo ni cuándo ni cómo conseguí estas lecciones. He entrado en la web de Ricardo y no localizo ni las lecciones ni el crackme. ¿Podría alguien facilitarme la dirección donde puedo conseguir este crackme4?

Saludos
#4
¡Hola!

En la lección 30 del manual de R.Narvaja, en la penúltima página, aparece un ejemplo en el que, para crear una salida con el nombre y salario de cada empleado,  hace lo siguiente:

Citar

lista={'Pepe':'I','Jose':'E','Pirulo':'I','Jorge':'E','Salvador':'E'}

for emp in lista:
    if lista[emp]=='E':
        a= Empleados(emp)
        a.computarSueldo()
        print a.empleado, a.sueldo
    else:
        a= Ingenieros(emp)
        a.computarSueldo()
        print a.empleado, a.sueldo


Se entiende perfectamente, pero al imprimir el orden en el que salen es:

Citar
Jose 2000
Pirulo 3000
Pepe 3000
Jorge 2000
Salvador 2000

Por más vueltas que le doy al tema no consigo averiguar el por qué de esta ordenación. ¿Podría alguien aclararlo?

Saludos
#5
¡Hola!

Es mi primer escrito en este Foro y aprovecho la ocasión para saludarles.

Estoy estudiando PYTHON 2.4 siguiendo el "Aprendiendo PYTHON desde 0" del gran R.Narvaja. El SO es XP SP3 y utilizo el WING IDE Pro 3.0.1-1.

Hasta el momento había conseguido realizar todos los ejercicios del Manual, pero me he atascado en la Lección 29 en el ejemplo del class C1: con los números de teléfono y la variable (o lo que sea) self. Le he denominado ejemplo29_1.py.

Cuando pulso Debug me imprime cosas de ejercicios anteriores de HOLA MUNDO y otros que están archivados en otras carpetas y con otros nombres en vez de ceñirse al ejemplo29_1.

La verdad es que el WING no lo controlo y la ayuda que tiene me resulta poco amigable. Su configuración no la he tocado. ¿Será que hay que modificarla para que no haga estas cosas?

Saludos
#6
¡Hola!

Estaba tratando de destripar el crackme4.exe (sin tener ni idea de VB) y había realizado avances, a mi entender muy esperanzadores, al llegar a colocar en CallNamedPipeA el nombre y la clave en Hexa separados por un punto, conocer el buffer donde estaban colocados y la dirección a donde debía llegar la respuesta. Pero no pasé de ahí.

De pronto me encontré con el tutorial que sobre el tema había hecho Thunder y me volvió la esperanza. Si consigo llegar a donde hace las transformaciones matemáticas, pensé, lo tengo vencido. Pero me he encontrado con que emplea el plugin LCB y no consigo entenderlo. Esto es lo que dice Thunder:

"Ahora lo que vamos a hacer aquí, ya que necesitamos depurar ambos
padre/hijo al unísono es abrir el mismo crackme en otro Olly, hacemos uso del
plugin LCB para importar los mismo Labels, Comments y BP usados en el
padre hacia el hijo"

¿Podría algún alma caritativa explicarme en detalle cómo se puede hacer esto?

Saludos

#7
¡Hola!

R.Narvaja propugna emplear este OLLY parcheado para buscar OEPs (en adelante OLLY VB) para estudiar los programas en VB.

De acuerdo con este criterio he tratado de abrir con OLLY BV el crackme4.exe de MCKSys y en cuanto le doy al F9 se termina el programa. El OLLY parcheado con el Repair, que en mi caso se llama Bip43.exe sí que lo corre.

La pregunta es ¿cómo habría que parchear el Bip43 para que, además de sus características, tenga la del OLLY BV?

Saludos

#8
¡Hola!

En la pág.40 de la INTRODUCCIÓN AL CRACKING CON OLLYDBG PARTES 41 a 50 de R.Narvaja, dice:

"Allí paro al fin en el OEP así que puedo mirar el listado de la fila txt.

00485EAE Main JL SHORT 00485ECA
00485ECA Main POPAD ; EAX=00000000, ECX=0012FFB0,
EDX=7C91EB94, EBX=7FFDF000, ESI=FFFFFFFF
00485ECB Main JMP SHORT 00485ECE
00485ECE Main JMP DWORD PTR DS:[485ED4]
Breakpoint at UnPackMe.004271B5"

Llego a la dirección que indica Narvaja en el ejemplo, pincho Log to file y pulso Debug->Trace Into, y, tras unos segundos de espera, lo único que me loguea es la última línea de las arriba indicadas. ¿Qué condiciones debo poner y dónde para que me salga lo mismo que en el manual?

Saludos
#9
¡Hola!

He llegado a la Parte 39 de la Introducción al Olly Debugger y me he atrancado. Sigo al pie de la letra las instruciones y me va distinto que lo que indica el manual.

En primer lugar, aunque no le doy mayor importancia, en mi PC las direcciones del STACK empiezan por 13 en vez de 12, así la famosa 12FFC4 es la 13FFC4.

En el programa, una vez que llego al retorno de la última excepción antes de llegar al CODE, los caminos que sigue son distintos en el Manual y en mi PC.

En el Manual el retorno es en 3A6746 JMP SHORT 003A674A, y en mi caso el retorno es en 036746 JMP SHORT 0003674A. Parece que en mi caso se ha cambiado el 3A por 03.

Pero a partir de aquí todo se va al traste. Las condiciones de Trace Into que he colocado son las mismas que en el Manual, pero a mi se me va directamente al Entry Point 4271D6. Parece que no encontró ni un POPAD ni un PUSH EBP en su recorrido.

Condiciones: EIP entre 00401000 y 00475000
Command is one of: POPAD o PUSH EBP.

¿Qué otras condiciones tendría que tantear para resolverlo de otra forma?

Saludos
#10
¡Hola!

Voy por la lección 33 de la Introducción al Cracking con OLLY del Maestro Narvaja y trabajando con alguna otra cosilla y aún no termino de entender, en la ventana de Desensamblado, la relación existente entre la columna de Hex Dump y la de Disassembly.

Yo pensaba que lo que aparece en Hex Dump traducido a binario es lo que se pasa al procesador pero, por ejemplo, leo esta línea:

Address 0040135C; Hex Dump E8 D9000000; Disassembly CALL 0040143A; Comment MessageBoxA.

E8 equivale a CALL, pero ¿qué tiene que ver D9000000 con 0040143A?

No sé si esto tiene importancia, pero si es sencillo de explicar y de entender os agradecería una respuesta.

Estas preguntas de novato ¿Habría que plantearlas en otro foro?

Saludos

#11
¡Hola!
Aunque voy picoteando por otros lugares, sigo con las lecciones clásicas.

Narvaja, Lección 22 sphynx.exe
El Hide Debugger y las Exceptions puestas como indica el programa que es parcheado y con otro nombre (Oms19.exe)
Emulación XP Sp3 en W7.

Primera pregunta:
No me funciona como indica el tutorial y me pasa lo mismo tanto si lo corro con OLLY o independientemente. Si pongo el número incorrecto se queda RUNNING a la espera de un nuevo número, y sólo se cierra si le doy al EXIT. Si pongo el bueno me sale una pequeña ventana con un botón que dice Aceptar, lo pulso y se cierra el programa.¿Es por algún motivo especial? ¿Es esto lo que tiene que pasar si no se detecta el debugger?

Segunda pregunta, matemática:
En 4010BC y siguientes el programa transforma el número que he metido como clave mediante ADC y RCL en otro que se guarda en EDX y se compara con 19372. Yo he cambiado el 19372 por el que correspondía a la clave, pero ¿Sería posible encontrar la clave original partiendo de 19372 hacia atrás, aunque sea por aproximaciones sucesivas? Si hubiese alguna forma, me gustaría que me la explicasen.

Pregunta sencilla, pero que no me la sé: En OLLY aparecen direcciones como DS:[401030] o SS y no sé si alguna más. ¿Qué significan?

Saludos.
#12
Ingeniería Inversa / Crackme bugger3.exe
9 Noviembre 2014, 18:34 PM
¡Hola!
Soy nuevo en el foro, es mi primer escrito y me voy a presentar.

Llevo unos cuantos años jubilado y antes ya estuve practicando con el OLLY y las explicaciones del gran Narvaja. Con objeto de no caer en el encefalograma plano he vuelto a abrir aquellos apuntes y, visto que también los recomendáis vosotros para empezar desde cero, me he animado a registrarme para poderos preguntar las pegas que me vayan surgiendo. Cuando lo haga me referiré
a la lección y el crackme del que estoy hablando, a no ser que me indiquéis que hay que adjuntarlo.

Mi SO es W7 32 bits.
Aquí va mi primer tropiezo.

Lección 21, buggers3.exe
Uso OLLY con nombre cambiado y con el pluggin Hide Debugger con IsDebuggerPresent y FindWindow/EnumWindows marcados.

Comienzo a correrlo
F8 en 401000 pone ECX a 0
F8 en 401004 DEC ECX y lo pone a FFFFFFFF
En 401005 va a poner EDX a 0000003B
Si trato de ir a esa dirección en el Dump, "No memory on specified address" en rojo.
Si le doy al F8:
Access violation when reading [0000003B]- use shift.....
Después de shift+F9
Debugged program was unable to process exception.
Y tras F9
Ventana que invita a cerrar el programa.

Si corro el programa directamente me aparece la ventana diciendo que buggers3 dejó de funcionar.
¿Será que mi buggers3.exe está mal o será por correrlo en W7? ¿Cómo podría hacer que funcionase el programa? ¿Tenéis por ahí alguno que marche bien?

Saludos.