Autor Tema: Como instalar y empezar a utilizar IDA  (Leído 1148 veces)

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

Desconectado Jackass

  • No Grade
  • *
  • Topic Author
  • Mensajes: 49
  • Agradecimientos: 24
  • Developer.-
  • Cronica: : C4 a H5
  • Revision: -
  • S.O: Windows Server 2008
  • Serverpack : aCis;L2Off
A Kimeraweb y dani1757, les gusta este post.

Como instalar y empezar a utilizar IDA
« en: Abril 20, 2014, 02:52:37 pm »
gracias
Este post tiene 2 agradecimientos
  • Añade a tus favoritos
    Bueno, voy a hacer esta simple guía ya que por ahora no voy a enseñar mas.
    He aprendido bastante desde que empeze con esto y tengo que admitir que me esta gustando.
    Voy a hacer una guia que pueden conseguir en otro foro ingles, pero actualmente creo que muchos no la entienden, ni tienen los files para lograrlo. Asi que la actualizo.

    Atencion!: Actualmente yo me estoy dedicando a server C4! Con lo cual no se si actualmente en gracia final es lo mismo. Esto preguntenselo a geralt, pero creo que unicamente se modifica los bloques de memoria.
    Lo que les voy a enseñar hoy es basicamente, que es un debugger.
    Primero de todo: Deben bajarse el IDA (La version 64bits para nuestro trabajo) de aqui:


    (Si alguien dispone de un mejor link por favor pasenlo o vos mismo geralt edita el thread ya que sabes mas de IDA que yo)
    Que es un debugger?
    Un depurador o un debugger (termino en ingles), tiene el objetivo de dejar ver el codigo interno de los programas, para arreglarlos, en este caso a bajo nivel. Con el lenguaje mas conocido como ensamblador o assembly/bler. Aparte de mostrarnos funciones, movimientos de datos en memoria, etc.

    Para que nos sirve?
    Facilita MUCHO, pero MUCHO, la programacion de extenders a la hora de trabajar en un server OFF.
    Con decirles que yo sin saber nada, y leyendo libros he logrado hacer mi propio extender dsp. de mucho tiempo, me siento honrado y por eso me dispuse a enseñar cosas basicas, las cuales ire publicando aqui dia a dia. Cosa que muchos no hacen.
    Una vez logrado esto, ejecuten el IDA. La version 64 bits es la que tiene el logo rojo, arriba a la izquieda, que visto de cerca significa 64 (64 bits):



    Una vez ejecutado les aparecera este cartel:



    Apreten New en esta ventana y les aparecera esta otra:



    Como ven, el entorno grafico del programa no es tan dificil (aunque no sepan assembly) Logicamente, aqui se tiene que elegir la opcion "PE Executable", la cual indica que vamos a trabajar con un archivo ejecutable de windows, un .exe, en este caso el "L2Server.exe".
    Cuando elijen asi les salta algo parecido a una configuracion. En la primer pestaña tienen que chequear "Analisys Option" y darle a siguiente, esto les habilitara la parte de kernel Options (Si les salta una ventana con imports, yo generalmente la dejo por default, pero esto lo van a terminar de dominar por si solos cuando entiendan de que trata este lenguaje) vamos a deshabilitar "Create offset data if xref to seg32 exists" para evitar que se eliminen las strings, luego deshabilitamos "Delete instructions with no xref"
    Luego de alli veran esto:



    Aca, viendo esta imagen se dan cuenta que si no saben assembler, no van a entender una mierda; y a la mayoria se les caera su ilusion. Pero no desespereis. Bajense libros y aprendan, por mi parte empiezen por el assembler de alto nivel, el HLA (Creo que se llamaba asi), van a aprender assembler mas facil, ya que tiene muchas cosas de ASM, pero tmb de la programacion normal y cotidiana de hoy en dia, que es la de alto nivel. Igual les digo que aprender ese ensamblador no alcanza, luego de eso tendrian que ir por los bajo niveles, y cuando logren dominar la pila, los bloques de memoria y entender como funciona un microprocesador van a poder programar en asm.
    Bueno, como dije al principio esto ayuda a encontrar funciones, como por ejemplo un builderCMD_, para el que no sabe que es, un comando de GM. Como en el foro conocido ingles se intento arreglar el announce, voy a tomar parte de su guia para explicarles bien esto.
    Una vez el IDA este terminado de cargar la db (fijense en la imagen anterior la luz verde arriba en panel tirando a la derecha, si se encuentra amarilla significa que sigue trabajando, esto tarda un tiempito dependiendo tu pc) vamos a buscar la String del comando ANNOUNCE, el cual generalmente esta bugeado, porque unicamente toma 55 caracteres (si no me equivoco), no les puedo pasar exactamente el bloque de memoria, porque depende el .EXE es distinto, ya que puede ser el chino, el usa, o uno modificado. En mi caso el bloque de memoria era: "0x4501E2" Se esto, porque es una String en la cual se ve claramente la string "buildercmd_announce".
    A partir de aqui tienen que tener un minimo de asm (como en mi caso, no me creo un experto aun). En este momento se puede ver que la funcion "buildercmd_announce" podemos ver que el codigo es de 4 bytes, que ademas almacena en el buffer lo escrito y luego lo deriva a la funcion "broadcasttoallpayers..."
    Por ende tenemos que hacer que no use el buffer, a esto me refiero que: si leen el codigo, este se mueve desde r8 (la string completa) a r12 (donde almacena la string antes de enviar la informacion al buffer) por ende si ejecutamos un mov de r12 a rcx esto seria la solucion mas facil.
    Esta guia todavia esta incompleta porque estoy con mucho laburo, pero prometo en unos dias (o mes/es espero que sea pronto), poder hacer un ext publico y propio para el foro. Actualmente les tendria que subir el extender que realiza lo que les mostre a continuacion (en realidad voy a subir dos alternativas, una reescribir todo el handler de 0 y la otra la solucion facil)
    Espero terminarla pronto y que a geralt no le disgute mis ideas.
    Saludos a todos!


    Autor de la guía: Anarchy

    Edit: Les dejo la ext
    http://www.mediafire.com/?p0uc9g557j8fekt


    Saludos.

    PD: La volvi a poner aca, pero es muy probable que la reedite en cualquier momento, les pediria que no cierren el tema en el caso que haga una nueva mas completa :).
    Si necesitas un developer, contacta a mi skype.

    Desconectado OxFord

    • Grado C
    • *
    • Mensajes: 102
    • 00
    • Agradecimientos: 13
    • Java Developer Jr
      • L2 Horus Retail
    • Cronica: : Interlude
    • Revision: 358
    • S.O: Windows Server 2008
    • Serverpack : L2jaCis
    Re:Como instalar y empezar a utilizar IDA
    « Respuesta #1 en: Abril 23, 2014, 09:40:59 pm »
    gracias
    Este post tiene 0 agradecimientos
  • Añade a tus favoritos
    gracias. fue muy breve pero todo ayuda. ya que estoy en un proyecto de L2Off C4. muchas gracias maestro
    hola que hace!!

    Desconectado Jackass

    • No Grade
    • *
    • Topic Author
    • Mensajes: 49
    • Agradecimientos: 24
    • Developer.-
    • Cronica: : C4 a H5
    • Revision: -
    • S.O: Windows Server 2008
    • Serverpack : aCis;L2Off
    Re:Como instalar y empezar a utilizar IDA
    « Respuesta #2 en: Abril 25, 2014, 02:46:20 pm »
    gracias
    Este post tiene 0 agradecimientos
  • Añade a tus favoritos
    Ya la re-estructurare.
    Si necesitas un developer, contacta a mi skype.

    Desconectado zeatman

    • No Grade
    • *
    • Mensajes: 14
    • Agradecimientos: 0
    • Cronica: : C4 Interlude
    • Revision: Ni idea
    • S.O: otro
    • Serverpack : L2Off
    Re:Como instalar y empezar a utilizar IDA
    « Respuesta #3 en: Diciembre 05, 2014, 03:46:21 am »
    gracias
    Este post tiene 0 agradecimientos
  • Añade a tus favoritos
    La pass del rar que contiene IDA es rl-team.net , se ve que jackass se olvideo