SlideShare una empresa de Scribd logo
1 de 68
OLLYDBG
DEPURADOR O DESENSAMBLADOR
CLASE 11 TRABAJANDO CON OLLYDBG
INTRODUCCIÓN
• OLLYDBG ES UN DEPURADOR DE CÓDIGO ENSAMBLADOR DE 32 BITS PARA
SISTEMAS OPERATIVOS MICROSOFT WINDOWS. PONE ESPECIAL ÉNFASIS EN
EL ANÁLISIS DEL CÓDIGO BINARIO, ESTO LO HACE MUY ÚTIL CUANDO NO ESTÁ
DISPONE EL CÓDIGO FUENTE DEL PROGRAMA.
• TRAZA REGISTROS, RECONOCE PROCEDIMIENTOS, LLAMADAS A LAS
API, SWICHES, TABLAS, CONSTANTES Y STRINGS, ASÍ COMO LOCALIZA
RUTINAS DE ARCHIVOS OBJETO Y DE BIBLIOTECAS.
INTRODUCCIÓN
• DE ACUERDO CON LA AYUDA INCLUIDA EN EL PROGRAMA, LA VERSIÓN 1.10 ES
LA ÚLTIMA VERSIÓN ESTABLE. LA VERSIÓN 2.0, YA ESTA DISPONIBLE. EL
SOFTWARE ES LIBRE DE COSTO, PERO LA LICENCIA SHAREWARE REQUIERE
QUE LOS USUARIOS SE REGISTREN CON EL AUTOR.
INGENIERÍA INVERSA
• OLLYDBG ES FRECUENTEMENTE USADO PARA LA INGENIERÍA INVERSA DE
PROGRAMAS. ES FRECUENTEMENTE USADO POR CRACKERS PARA CRACKEAR
SOFTWARE HECHO POR OTROS DESARROLLADORES.
• ES A MENUDO LA HERRAMIENTA PRIMARIA PARA CRACKING E INGENIERÍA
INVERSA DEBIDO A SU FACILIDAD DE USO Y DISPONIBILIDAD.
• ES TAMBIÉN ÚTIL PARA QUE LOS PROGRAMADORES SE ASEGUREN DE QUE SU
PROGRAMA ESTÁ CORRIENDO SEGÚN LO PREVISTO.
CONOCIENDO EL PROGRAMA

• EXACTAMENTE LO PRIMERO ES CONOCER DE LA HERRAMIENTA QUE VAMOS A
UTILIZAR PARA DESENSAMBLAR UN PROGRAMA, PARA ELLO PUEDEN
PODEMOS BAJARLA DE LA SIGUIENTE DIRECCIÓN:
• HTTP://WWW.OLLYDBG.DE/VERSION2.HTML
• YO RECOMIENDO BAJAR LA DE OCTUBRE 04 DEL 2012, YA QUE ES LA VERSIÓN
ESTABLE.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• COMO AQUÍ ESTAMOS EMPEZANDO DESDE CERO PUES, RECIÉN NOS
ESTAMOS HACIENDO DEL ARCHIVO, Y AHORA YA QUE ES UN ARCHIVO
ZIPEADO, LO UNZIPEAREMOS CON WINZIP PREFERENTEMENTE A UNA
CARPETA EN NUESTRO DISCO QUE PODAMOS LOCALIZAR FÁCILMENTE, UNA
BUENA IDEA SERIA PONER DICHA CARPETA EN C:/ AUNQUE FUNCIONA EN
CUALQUIER LUGAR, YO LA PONDRÉ EN C:/.
CONOCIENDO EL PROGRAMA
• UNA VEZ DESCOMPRIMIDO PODEMOS ENTRAR A LA CARPETA Y VER
CONOCIENDO EL PROGRAMA
• ALLÍ ESTA EL ARCHIVO EJECUTABLE OLLYDBG.EXE EL CUAL EJECUTAREMOS
PARA ARRANCAR EL OLLYDBG Y AL CUAL PARA COMODIDAD LE HARÉ UN
ACCESO DIRECTO EN MI ESCRITORIO.
CONOCIENDO EL PROGRAMA
• BUENO YA TENEMOS BAJADO Y PREPARADO PARA ARRANCAR A NUESTRO
OLLYDBG.EXE, LO EJECUTAMOS COMO ADMINISTRADOR.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• ALLÍ ESTA EL OLLYDBG VACÍO, Y COMO SIEMPRE EL PRIMER PROGRAMA QUE
ABRIREMOS MAS QUE NADA PARA MIRAR LAS DIFERENTES PARTES DEL
OLLYDBG Y PODER UBICARNOS EN SUS DIFERENTE PARTES, ABRIMOS EL
CRACKME.EXE QUE SE TRABAJO LA CLASE PASADA CON W32DSM89.
• PARA ABRIR EL ARCHIVO A DEBUGGEAR O DESEMSAMBLAR
OLLYDBG, VAMOS A FILE OPEN O HACEMOS CLIC EN EL ICONO

EN

EL
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• ALLÍ SE ABRE EL CRACKME Y POR AHORA NO IMPORTA QUE NO ENTENDAMOS
LO QUE NOS MUESTRA YA MAS ADELANTE APRENDEREMOS ESO, LA IDEA ES IR
MOSTRANDO LAS PARTES DEL OLLYDBG Y CIERTAS CONFIGURACIONES DEL
MISMO.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• ANTERIORMENTE OBSERVAMOS LAS CUATRO PARTES DE LA VENTANA
PRINCIPAL DEL OLLYDBG.
• DESEMSAMBLADO

• TAMBIÉN LLAMADO LISTADO, AQUÍ EL OLLY NOS MUESTRA EL LISTADO
DESENSAMBLADO DEL PROGRAMA QUE VAMOS A DEBUGGEAR, POR DEFAULT
EL OLLY VIENE CONFIGURADO PARA ANALIZAR EL PROGRAMA QUE VAMOS A
DEBUGGEAR SI DESEAMOS CAMBIAR OPCIONES VAMOS OPTIONS Y
POSTERIORMENTE A OPTIONS Y NOS APARECERÁ LA SIGUIENTE PANTALLA.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• OTRA COSITA QUE HACE A LA CLARIDAD PARA TRABAJAR Y QUE POR LO
MENOS A MI ME GUSTA, AUNQUE CADA UNO PUEDE VARIAR EN ESTOS TEMAS
ES COLORIZAR LOS JUMPS Y CALLS ESO SE HACE HACIENDO CLIC DERECHO
APPEARENCE – HIGHLIGHTING – JUMPS AND CALLS
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• EL RESULTADO ES EL SIGUIENTE
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• OBSERVAMOS QUE EN COLOR AZUL AQUA QUEDAN RESALTADOS LOS CALLS Y
EN AMARILLO LOS JUMPS, LO CUAL ES MAS CLARO PARA LA VISTA.
• BUENO CON ESO NUESTRO LISTADO QUEDA MAS FÁCIL DE INTERPRETAR,
AUNQUE AUN NO TENGAMOS LA MAS REMOTA IDEA DE QUE SIGNIFICA, PERO
BUENO HAY QUE PREPARAR ANTES LAS HERRAMIENTAS PARA PODER IR DE A
POCO APRENDIENDO
CONOCIENDO EL PROGRAMA
• REGISTROS
• LA SEGUNDA VENTANA IMPORTANTE DEL OLLYDBG ES LA DE LOS REGISTROS
CONOCIENDO EL PROGRAMA
• RECORDAMOS QUE LA VENTANA DE REGISTROS SE ENCUENTRA EN LA PARTE
SUPERIOR DERECHA DEL OLLYDBG, ALLÍ MUESTRA BASTANTE MAS
INFORMACIÓN SOBRE LOS REGISTROS EN SI
CONOCIENDO EL PROGRAMA
• TIENE MUCHÍSIMA MÁS INFORMACIÓN QUE AUN NO VEREMOS, PERO SE
PUEDE CAMBIAR EL MODO DE VISUALIZACIÓN EN TRES FORMAS. (REGISTERS
FPU, REGISTERS 3D NOW Y REGISTERS MMX) POR DEFAULT VIENE ELEGIDA LA
PRIMERA (PRESIONANDO EN LA BARRA EN GRIS REGISTERS (FPU)) COMO SE
MUESTRA A CONTINUACIÓN.
CONOCIENDO EL PROGRAMA
• O HACIENDO CLIC CON EL RATÓN DERECHO DEL MOUSE EN REGISTROS NOS
APRECERA LA SIGUIENTE VENTANA EMERGENTE.
CONOCIENDO EL PROGRAMA
• POR AHORA NO AHONDAREMOS MUCHO EN ESO YA QUE NOS
PREOCUPAREMOS MÁS QUE NADA EN EL TEMA REGISTROS Y FLAGS, LO
MENCIONO PARA QUE SEPAN QUE HAY VARIAS VISTAS EN EL REGISTRO.
• STACK O PILA
• BUENO ALLÍ VEMOS EL LLAMADO STACK O PILA AQUÍ NO HAY MUCHA
CONFIGURACIÓN POSIBLE SOLO LA OPCIÓN DE MOSTRAR LA INFORMACIÓN
RELATIVA AL REGISTRO ESP O AL REGISTRO EBP.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• POR DEFAULT Y LO QUE MAS SE UTILIZA ES LA VISTA RELATIVA A ESP, PERO
PARA CAMBIAR A LA VISTA SEGÚN EBP, HACIENDO CLIC DERECHO EN EL STACK
ELIGIENDO GO TO EBP CAMBIAMOS Y PARA VOLVER GO TO ESP VOLVEMOS A
LA OPCIÓN POR DEFAULT.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• DUMP
• LA VENTANA DEL DUMP TIENE MUCHAS OPCIONES DE VISUALIZACIÓN, POR
DEFAULT NOS MUESTRA LA VISUALIZACIÓN HEXADECIMAL DE 16 BYTES, LA
CUAL PUEDE SER MODIFICADA HACIENDO CLICK DERECHO EN EL DUMP Y
ELIGIENDO LA OPCIÓN DESEADA.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• LA OPCIÓN POR DEFAULT ES LA QUE GENERALMENTE MAS SE USA, AUNQUE
TENEMOS OPCIONES PARA CAMBIAR PARA MOSTRAR DESENSAMBLADO
(DISASSEMBLE), TEXTO (TEXT) Y DIVERSOS FORMATOS (SHORT, LONG, FLOAT).
• YA CONOCEMOS LAS PARTES QUE SE VEN EN LA VENTANA PRINCIPAL DEL
OLLYDBG, AUNQUE TAMBIÉN HAY MÁS VENTANAS QUE NO SE VEN
DIRECTAMENTE, SE PUEDE ACCEDER A ELLAS, TANTO POR EL MENÚ, COMO
POR LOS BOTONES DE LAS VISTAS.
CONOCIENDO EL PROGRAMA
• EL BOTÓN L NOS MUESTRA LO QUE EL OLLYDBG ESCRIBE EN LA VENTANA DEL
LOG LO CUAL PUEDE SER CONFIGURADO PARA MOSTRAR DIFERENTES TIPOS
DE INFORMACIÓN, POR DEFAULT EN LA VENTANA DEL LOG VA GUARDANDO
ALLÍ INFORMACIÓN SOBRE EL ARRANQUE, Y DE LA INFORMACIÓN ESCRITA EN
EL MISMO POR LOS DIFERENTES BREAKPOINTS CONDICIONAL LOGS, LO CUAL
SE VERA MAS ADELANTE, POR AHORA VEMOS ALLÍ ,LA INFORMACIÓN DEL
PROCESO QUE ARRANCO, EN ESTE CASO EL CRACKME, LAS DLL QUE CARGO,
Y CIERTOS TIPS SOBRE EL ANÁLISIS.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• EL BOTÓN E O VIEW-EXECUTABLES NOS MUESTRA LA LISTADO DE LOS
EJECUTABLES QUE UTILIZA EL PROGRAMA, EXE, DLLS, OCXS, ETC.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• AQUÍ TAMBIÉN EL BOTÓN DERECHO TIENE MUCHAS OPCIONES QUE POR
AHORA NO VEREMOS YA QUE ESTAMOS MIRANDO EN FORMA GENERAL AL
OLLYDBG.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• EL BOTÓN M O VIEW – MEMORY, NOS MUESTRA LA MEMORIA OCUPADA POR
NUESTRO PROGRAMA, ALLÍ SE VEN LAS SECCIONES DEL EJECUTABLE, DLLS
QUE UTILIZA EL PROCESO, ASÍ COMO EL STACK Y DIVERSAS SECCIONES Y
MUCHAS VECES AL CORRER LOS PROGRAMAS, LOS MISMOS REALIZAN
NUEVAS LOCACIONES DE MEMORIA. EN TIEMPO DE EJECUCIÓN.
CONOCIENDO EL PROGRAMA
• EL BOTÓN M O VIEW – MEMORY, NOS MUESTRA LA MEMORIA OCUPADA POR
NUESTRO PROGRAMA, ALLÍ SE VEN LAS SECCIONES DEL EJECUTABLE, DLLS
QUE UTILIZA EL PROCESO, ASÍ COMO EL STACK Y DIVERSAS SECCIONES Y
MUCHAS VECES AL CORRER LOS PROGRAMAS, LOS MISMOS REALIZAN
NUEVAS LOCACIONES DE MEMORIA. EN TIEMPO DE EJECUCIÓN.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• HACIENDO CLIC DERECHO PODEMOS HACER SEARCH EN LA MEMORIA PARA
BUSCAR EN ELLA, STRINGS, CADENAS HEXA, UNICODE ETC., ADEMÁS NOS DA
LA POSIBILIDAD DE COLOCAR DIFERENTES TIPOS DE BREAKPOINTS EN LA
SECCIONES, COMO ASÍ TAMBIÉN LA POSIBILIDAD DE CAMBIAR EL ACCESO A
LAS MISMAS CON SET ACCESS YA PROFUNDIZAREMOS EN ESTO.
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• EL BOTÓN T O VIEW-THREADS NOS DA EL LISTADO DE LOS THREADS DEL
PROGRAMA
CONOCIENDO EL PROGRAMA
• EL BOTÓN W O VIEW-WINDOWS NOS MUESTRA LAS VENTANAS DEL
PROGRAMA, COMO AUN NO CORRIÓ, NO HAY VENTANAS ASÍ QUE ESTA VACÍA.
CONOCIENDO EL PROGRAMA
• EL BOTÓN C O VIEW-CPU NOS RETORNA A LA VENTANA PRINCIPAL DEL
PROGRAMA
CONOCIENDO EL PROGRAMA
• AGREGANDO PLUGINS AL OLLYDBG
• EL OLLYDBG TRAE LA OPCIÓN PARA AGREGAR PLUGINS QUE NOS SON
NECESARIOS PARA REALIZAR CIERTA TAREA, POR AHORA SOLO
AGREGAREMOS EL PLUGIN COMMAND BAR PARA APRENDER COMO SE
AGREGAN LOS MISMOS.
• BAJAMOS EL PLUGIN COMMAND BAR EL CUAL PUEDE SER BAJADO DE MI BLOG
DE TRABAJO EL CUAL TIENE LA SIGUIENTE DIRECCIÓN

• HTTPS://MEGA.CO.NZ/#!UG9VHT4A!MGMCOYYSBFXED_A3VBXXIAE6HMIEV4N4U
Y_VT_W8JUY
CONOCIENDO EL PROGRAMA
• AGREGANDO PLUGINS AL OLLYDBG

• SOLO COPIAMOS EL CONTENIDO DE LA CARPETA COMMAND BAR A NUESTRO
DIRECTORIO RAÍZ DONDE CORREMOS EL OLLYDBG Y CUANDO LO
EJECUTEMOS SE ACTIVARA EL MENÚ DE PLUGINS CON NUESTRO PLUGIN
AGREGADO.
CONOCIENDO EL PROGRAMA
• ES UNA BARRA PARA ESCRIBIR COMANDOS QUE NOS FACILITARA MUCHO LAS
COSAS, MAS ADELANTE VEREMOS SU USO, POR AHORA LO IMPORTANTE ES
SABER AGREGAR PLUGINS.
• PARA QUITAR CUALQUIER PLUGIN CON SOLO QUITAR LA DLL
CORRESPONDIENTE DE NUESTRA CARPETA PLUGINS Y REINICIAR EL
OLLYDBG, DESAPARECERÁ, LES ACONSEJO QUE DEJEN SIEMPRE ACTIVA LA
COMMAND BAR.
• ARRANCO NUEVAMENTE EL CRACKME EN OLLYDBG Y TENDREMOS LA BARRA
CONOCIENDO EL PROGRAMA
• LAS TECLAS MAS USADAS EN EL OLLYDBG SON:
• F7: EJECUTA UNA SOLA LÍNEA DE CÓDIGO (SI ESTAS EN UN CALL ENTRA AL MISMO A
EJECUTARLO POR DENTRO)
• F8: EJECUTA UNA SOLA LÍNEA DE CÓDIGO (SI ESTAS EN UN CALL NO ENTRA AL
MISMO LO EJECUTA COMPLETO SIN ENTRAR Y SIGUE EN LA SIGUIENTE LÍNEA
LUEGO DEL CALL)
• ESOS DOS FORMAS DE TRACEAR MANUALMENTE SON VERDADERAMENTE
DIFERENTES Y SEGÚN CADA CASO USAREMOS F7 O F8 LO CUAL VEREMOS MÁS
ADELANTE.
• F2: COLOCA UN BREAKPOINT COMUN EN LA LÍNEA QUE MARCAS CON EL MOUSE EN
EL LISTADO, PARA QUITAR EL BP APRIETAS NUEVAMENTE F2.
CONOCIENDO EL PROGRAMA
• POR EJEMPLO
• QUIERO PONER UN BP EN 40101A PUES MARCO CON EL MOUSE ESA LÍNEA
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• VEMOS QUE SE PINTA DE ROJO LA ZONA DE LA DIRECCIÓN, ESO SIGNIFICA
QUE HAY ACTIVO UN BP O BREAKPOINT ALLÍ, SI APRETO F2 NUEVAMENTE SE
QUITA.
• F9: PARA CORRER EL PROGRAMA ES SIMILAR A RUN, CON ESTO EL PROGRAMA
CORRERÁ, HASTA QUE ENCUENTRE ALGÚN BREAKPOINT, O ALGUNA
EXCEPCION QUE LO DETENGA O FINALICE POR ALGÚN MOTIVO, AL APRETAR
RUN VEREMOS EN LA ESQUINA INFERIOR DEL OLLYDBG LA PALABRA RUNNING
O SEA QUE ESTA CORRIENDO.
CONOCIENDO EL PROGRAMA
• SI COLOCAMOS UN BREAKPOINT EN LA DIRECCIÓN 0040101A AL PRESIONAR F9
EL PROGRAMA SE DETENDRÁ Y NOS APARECERÁ LO SIGUIENTE
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• SI QUITAMOS EL BREAKPOINT PRESIONANDO NUEVAMENTE F2 EN ESA
DIRECCIÓN TENDREMOS LOS SIGUIENTE
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• SI PAUSO LA EJECUCIÓN EN OLLYDBG APRETANDO F12 O DEBUG –PAUSE,
TENDREMOS LO SIGUIENTE
CONOCIENDO EL PROGRAMA
CONOCIENDO EL PROGRAMA
• VEMOS QUE EL OLLYDBG CAMBIA A MOSTRAR PAUSED O SEA QUE ESTA
PAUSADO, PODEMOS VOLVER A HACERLO CORRER CON F9 O DEBUG-RUN
• PARA CERRAR EL PROGRAMA QUE ESTA SIENDO DEBUGGEADO APRETO
DEBUG-CLOSE
CONOCIENDO EL PROGRAMA

Más contenido relacionado

La actualidad más candente

Impact Analysis with PL/Scope
Impact Analysis with PL/ScopeImpact Analysis with PL/Scope
Impact Analysis with PL/ScopeSteven Feuerstein
 
Spring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em JavaSpring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em JavaMariana de Azevedo Santos
 
Estructura semantica Html5.pptx
Estructura semantica Html5.pptxEstructura semantica Html5.pptx
Estructura semantica Html5.pptxEliAlbertoMendoza1
 
Evidencia sesión virtual funciones php
Evidencia sesión virtual funciones phpEvidencia sesión virtual funciones php
Evidencia sesión virtual funciones phpSebastian Torres
 
Cuaderno de trabajo de introduccion a la programacion (Revisado ver 2.0).docx
Cuaderno de trabajo de introduccion a la programacion (Revisado ver 2.0).docxCuaderno de trabajo de introduccion a la programacion (Revisado ver 2.0).docx
Cuaderno de trabajo de introduccion a la programacion (Revisado ver 2.0).docxLaura Macias
 
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(1)-アーキテクチャ、データソース
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(1)-アーキテクチャ、データソース2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(1)-アーキテクチャ、データソース
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(1)-アーキテクチャ、データソースEnpel
 
REST in AEM by Roy Fielding
REST in AEM by Roy FieldingREST in AEM by Roy Fielding
REST in AEM by Roy FieldingAEM HUB
 
What-is-Laravel-23-August-2017.pptx
What-is-Laravel-23-August-2017.pptxWhat-is-Laravel-23-August-2017.pptx
What-is-Laravel-23-August-2017.pptxAbhijeetKumar456867
 
Pripreme za programiranje 8.
Pripreme za programiranje 8.Pripreme za programiranje 8.
Pripreme za programiranje 8.Brankica Jokić
 
A quick tour of Mysql 8 roles
A quick tour of Mysql 8 rolesA quick tour of Mysql 8 roles
A quick tour of Mysql 8 rolesGiuseppe Maxia
 
AEM target Integration
AEM target IntegrationAEM target Integration
AEM target IntegrationKanika Gera
 
Angular 7 Firebase5 CRUD Operations with Reactive Forms
Angular 7 Firebase5 CRUD Operations with Reactive FormsAngular 7 Firebase5 CRUD Operations with Reactive Forms
Angular 7 Firebase5 CRUD Operations with Reactive FormsDigamber Singh
 

La actualidad más candente (20)

Impact Analysis with PL/Scope
Impact Analysis with PL/ScopeImpact Analysis with PL/Scope
Impact Analysis with PL/Scope
 
Proyencto netbeans
Proyencto netbeansProyencto netbeans
Proyencto netbeans
 
Introducción a PHP
Introducción a PHPIntroducción a PHP
Introducción a PHP
 
Spring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em JavaSpring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em Java
 
Estructura semantica Html5.pptx
Estructura semantica Html5.pptxEstructura semantica Html5.pptx
Estructura semantica Html5.pptx
 
Spring Framework
Spring FrameworkSpring Framework
Spring Framework
 
Evidencia sesión virtual funciones php
Evidencia sesión virtual funciones phpEvidencia sesión virtual funciones php
Evidencia sesión virtual funciones php
 
Cuaderno de trabajo de introduccion a la programacion (Revisado ver 2.0).docx
Cuaderno de trabajo de introduccion a la programacion (Revisado ver 2.0).docxCuaderno de trabajo de introduccion a la programacion (Revisado ver 2.0).docx
Cuaderno de trabajo de introduccion a la programacion (Revisado ver 2.0).docx
 
Svn information
Svn informationSvn information
Svn information
 
Maven
MavenMaven
Maven
 
Pseudocodigo pptx
Pseudocodigo pptxPseudocodigo pptx
Pseudocodigo pptx
 
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(1)-アーキテクチャ、データソース
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(1)-アーキテクチャ、データソース2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(1)-アーキテクチャ、データソース
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(1)-アーキテクチャ、データソース
 
REST in AEM by Roy Fielding
REST in AEM by Roy FieldingREST in AEM by Roy Fielding
REST in AEM by Roy Fielding
 
Get & post
Get & postGet & post
Get & post
 
What-is-Laravel-23-August-2017.pptx
What-is-Laravel-23-August-2017.pptxWhat-is-Laravel-23-August-2017.pptx
What-is-Laravel-23-August-2017.pptx
 
Pripreme za programiranje 8.
Pripreme za programiranje 8.Pripreme za programiranje 8.
Pripreme za programiranje 8.
 
A quick tour of Mysql 8 roles
A quick tour of Mysql 8 rolesA quick tour of Mysql 8 roles
A quick tour of Mysql 8 roles
 
Listas html
Listas htmlListas html
Listas html
 
AEM target Integration
AEM target IntegrationAEM target Integration
AEM target Integration
 
Angular 7 Firebase5 CRUD Operations with Reactive Forms
Angular 7 Firebase5 CRUD Operations with Reactive FormsAngular 7 Firebase5 CRUD Operations with Reactive Forms
Angular 7 Firebase5 CRUD Operations with Reactive Forms
 

Similar a Introduccion a ollydbg clase 11a

Ollydbg introducción
Ollydbg introducciónOllydbg introducción
Ollydbg introducciónTensor
 
Introduccion al cracking con ollydbg partes 1 a 10
Introduccion al cracking con ollydbg partes 1 a 10Introduccion al cracking con ollydbg partes 1 a 10
Introduccion al cracking con ollydbg partes 1 a 10juanchiy2k
 
2 2 2015_cargar_archivos
2 2 2015_cargar_archivos2 2 2015_cargar_archivos
2 2 2015_cargar_archivosZuleika
 
Bienvenidos a su web site
Bienvenidos a su web  siteBienvenidos a su web  site
Bienvenidos a su web siteKarina Chapa
 
Bienvenidos a su web site
Bienvenidos a su web  siteBienvenidos a su web  site
Bienvenidos a su web siteKarina Chapa
 
Bienvenidos a su web site
Bienvenidos a su web  siteBienvenidos a su web  site
Bienvenidos a su web siteKarina Chapa
 
BASICOS DE OFFICE AGS
BASICOS DE OFFICE AGSBASICOS DE OFFICE AGS
BASICOS DE OFFICE AGSannyrocke
 
Lenjuage_ensamblador_UTEQ
Lenjuage_ensamblador_UTEQLenjuage_ensamblador_UTEQ
Lenjuage_ensamblador_UTEQGabriel Nuñez
 
2 1 2015_manejo_carpetas
2 1 2015_manejo_carpetas2 1 2015_manejo_carpetas
2 1 2015_manejo_carpetasZuleika
 

Similar a Introduccion a ollydbg clase 11a (20)

Ollydbg introducción
Ollydbg introducciónOllydbg introducción
Ollydbg introducción
 
Tutorial
TutorialTutorial
Tutorial
 
Tutorial
TutorialTutorial
Tutorial
 
Tutorial
TutorialTutorial
Tutorial
 
Tutorial Codeblocks
Tutorial CodeblocksTutorial Codeblocks
Tutorial Codeblocks
 
Introduccion al cracking con ollydbg partes 1 a 10
Introduccion al cracking con ollydbg partes 1 a 10Introduccion al cracking con ollydbg partes 1 a 10
Introduccion al cracking con ollydbg partes 1 a 10
 
2 2 2015_cargar_archivos
2 2 2015_cargar_archivos2 2 2015_cargar_archivos
2 2 2015_cargar_archivos
 
Bienvenidos a su web site
Bienvenidos a su web  siteBienvenidos a su web  site
Bienvenidos a su web site
 
Bienvenidos a su web site
Bienvenidos a su web  siteBienvenidos a su web  site
Bienvenidos a su web site
 
Bienvenidos a su web site
Bienvenidos a su web  siteBienvenidos a su web  site
Bienvenidos a su web site
 
BASICOS DE OFFICE AGS
BASICOS DE OFFICE AGSBASICOS DE OFFICE AGS
BASICOS DE OFFICE AGS
 
Ubuntu presentacion
Ubuntu presentacionUbuntu presentacion
Ubuntu presentacion
 
Licencias cc
Licencias ccLicencias cc
Licencias cc
 
Adobe
AdobeAdobe
Adobe
 
Lenjuage_ensamblador_UTEQ
Lenjuage_ensamblador_UTEQLenjuage_ensamblador_UTEQ
Lenjuage_ensamblador_UTEQ
 
Diapocitivas guia 4
Diapocitivas guia 4Diapocitivas guia 4
Diapocitivas guia 4
 
Adoble dreanweare1
Adoble dreanweare1Adoble dreanweare1
Adoble dreanweare1
 
2 1 2015_manejo_carpetas
2 1 2015_manejo_carpetas2 1 2015_manejo_carpetas
2 1 2015_manejo_carpetas
 
Curso de-mcu-proteus
Curso de-mcu-proteusCurso de-mcu-proteus
Curso de-mcu-proteus
 
Algoritmos y Diagramas
Algoritmos y DiagramasAlgoritmos y Diagramas
Algoritmos y Diagramas
 

Más de Tensor

Libertad
LibertadLibertad
LibertadTensor
 
Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)Tensor
 
Metodo de la bisección
Metodo de la bisecciónMetodo de la bisección
Metodo de la bisecciónTensor
 
Transito vehicular
Transito vehicularTransito vehicular
Transito vehicularTensor
 
Teoria de colas
Teoria de colasTeoria de colas
Teoria de colasTensor
 
Practica 7 2016
Practica 7 2016Practica 7 2016
Practica 7 2016Tensor
 
Practica 6 2016
Practica 6 2016Practica 6 2016
Practica 6 2016Tensor
 
Game maker
Game makerGame maker
Game makerTensor
 
Practica 5 2016
Practica 5 2016Practica 5 2016
Practica 5 2016Tensor
 
Procesamiento de archivos
Procesamiento de archivosProcesamiento de archivos
Procesamiento de archivosTensor
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadenaTensor
 
Simulación en promodel clase 04
Simulación en promodel clase 04Simulación en promodel clase 04
Simulación en promodel clase 04Tensor
 
Reduccion de orden
Reduccion de ordenReduccion de orden
Reduccion de ordenTensor
 
Variación+de+parametros
Variación+de+parametrosVariación+de+parametros
Variación+de+parametrosTensor
 
Coeficientes indeterminados enfoque de superposición
Coeficientes indeterminados   enfoque de superposiciónCoeficientes indeterminados   enfoque de superposición
Coeficientes indeterminados enfoque de superposiciónTensor
 
Bernoulli y ricatti
Bernoulli y ricattiBernoulli y ricatti
Bernoulli y ricattiTensor
 
Practica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicioPractica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicioTensor
 
Clase 14 ondas reflejadas
Clase 14 ondas reflejadasClase 14 ondas reflejadas
Clase 14 ondas reflejadasTensor
 
Ondas em
Ondas emOndas em
Ondas emTensor
 
Clase 7 ondas electromagneticas
Clase 7 ondas electromagneticasClase 7 ondas electromagneticas
Clase 7 ondas electromagneticasTensor
 

Más de Tensor (20)

Libertad
LibertadLibertad
Libertad
 
Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)
 
Metodo de la bisección
Metodo de la bisecciónMetodo de la bisección
Metodo de la bisección
 
Transito vehicular
Transito vehicularTransito vehicular
Transito vehicular
 
Teoria de colas
Teoria de colasTeoria de colas
Teoria de colas
 
Practica 7 2016
Practica 7 2016Practica 7 2016
Practica 7 2016
 
Practica 6 2016
Practica 6 2016Practica 6 2016
Practica 6 2016
 
Game maker
Game makerGame maker
Game maker
 
Practica 5 2016
Practica 5 2016Practica 5 2016
Practica 5 2016
 
Procesamiento de archivos
Procesamiento de archivosProcesamiento de archivos
Procesamiento de archivos
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadena
 
Simulación en promodel clase 04
Simulación en promodel clase 04Simulación en promodel clase 04
Simulación en promodel clase 04
 
Reduccion de orden
Reduccion de ordenReduccion de orden
Reduccion de orden
 
Variación+de+parametros
Variación+de+parametrosVariación+de+parametros
Variación+de+parametros
 
Coeficientes indeterminados enfoque de superposición
Coeficientes indeterminados   enfoque de superposiciónCoeficientes indeterminados   enfoque de superposición
Coeficientes indeterminados enfoque de superposición
 
Bernoulli y ricatti
Bernoulli y ricattiBernoulli y ricatti
Bernoulli y ricatti
 
Practica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicioPractica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicio
 
Clase 14 ondas reflejadas
Clase 14 ondas reflejadasClase 14 ondas reflejadas
Clase 14 ondas reflejadas
 
Ondas em
Ondas emOndas em
Ondas em
 
Clase 7 ondas electromagneticas
Clase 7 ondas electromagneticasClase 7 ondas electromagneticas
Clase 7 ondas electromagneticas
 

Introduccion a ollydbg clase 11a

  • 1. OLLYDBG DEPURADOR O DESENSAMBLADOR CLASE 11 TRABAJANDO CON OLLYDBG
  • 2. INTRODUCCIÓN • OLLYDBG ES UN DEPURADOR DE CÓDIGO ENSAMBLADOR DE 32 BITS PARA SISTEMAS OPERATIVOS MICROSOFT WINDOWS. PONE ESPECIAL ÉNFASIS EN EL ANÁLISIS DEL CÓDIGO BINARIO, ESTO LO HACE MUY ÚTIL CUANDO NO ESTÁ DISPONE EL CÓDIGO FUENTE DEL PROGRAMA. • TRAZA REGISTROS, RECONOCE PROCEDIMIENTOS, LLAMADAS A LAS API, SWICHES, TABLAS, CONSTANTES Y STRINGS, ASÍ COMO LOCALIZA RUTINAS DE ARCHIVOS OBJETO Y DE BIBLIOTECAS.
  • 3. INTRODUCCIÓN • DE ACUERDO CON LA AYUDA INCLUIDA EN EL PROGRAMA, LA VERSIÓN 1.10 ES LA ÚLTIMA VERSIÓN ESTABLE. LA VERSIÓN 2.0, YA ESTA DISPONIBLE. EL SOFTWARE ES LIBRE DE COSTO, PERO LA LICENCIA SHAREWARE REQUIERE QUE LOS USUARIOS SE REGISTREN CON EL AUTOR.
  • 4. INGENIERÍA INVERSA • OLLYDBG ES FRECUENTEMENTE USADO PARA LA INGENIERÍA INVERSA DE PROGRAMAS. ES FRECUENTEMENTE USADO POR CRACKERS PARA CRACKEAR SOFTWARE HECHO POR OTROS DESARROLLADORES. • ES A MENUDO LA HERRAMIENTA PRIMARIA PARA CRACKING E INGENIERÍA INVERSA DEBIDO A SU FACILIDAD DE USO Y DISPONIBILIDAD. • ES TAMBIÉN ÚTIL PARA QUE LOS PROGRAMADORES SE ASEGUREN DE QUE SU PROGRAMA ESTÁ CORRIENDO SEGÚN LO PREVISTO.
  • 5. CONOCIENDO EL PROGRAMA • EXACTAMENTE LO PRIMERO ES CONOCER DE LA HERRAMIENTA QUE VAMOS A UTILIZAR PARA DESENSAMBLAR UN PROGRAMA, PARA ELLO PUEDEN PODEMOS BAJARLA DE LA SIGUIENTE DIRECCIÓN: • HTTP://WWW.OLLYDBG.DE/VERSION2.HTML • YO RECOMIENDO BAJAR LA DE OCTUBRE 04 DEL 2012, YA QUE ES LA VERSIÓN ESTABLE.
  • 7. CONOCIENDO EL PROGRAMA • COMO AQUÍ ESTAMOS EMPEZANDO DESDE CERO PUES, RECIÉN NOS ESTAMOS HACIENDO DEL ARCHIVO, Y AHORA YA QUE ES UN ARCHIVO ZIPEADO, LO UNZIPEAREMOS CON WINZIP PREFERENTEMENTE A UNA CARPETA EN NUESTRO DISCO QUE PODAMOS LOCALIZAR FÁCILMENTE, UNA BUENA IDEA SERIA PONER DICHA CARPETA EN C:/ AUNQUE FUNCIONA EN CUALQUIER LUGAR, YO LA PONDRÉ EN C:/.
  • 8. CONOCIENDO EL PROGRAMA • UNA VEZ DESCOMPRIMIDO PODEMOS ENTRAR A LA CARPETA Y VER
  • 9. CONOCIENDO EL PROGRAMA • ALLÍ ESTA EL ARCHIVO EJECUTABLE OLLYDBG.EXE EL CUAL EJECUTAREMOS PARA ARRANCAR EL OLLYDBG Y AL CUAL PARA COMODIDAD LE HARÉ UN ACCESO DIRECTO EN MI ESCRITORIO.
  • 10. CONOCIENDO EL PROGRAMA • BUENO YA TENEMOS BAJADO Y PREPARADO PARA ARRANCAR A NUESTRO OLLYDBG.EXE, LO EJECUTAMOS COMO ADMINISTRADOR.
  • 12. CONOCIENDO EL PROGRAMA • ALLÍ ESTA EL OLLYDBG VACÍO, Y COMO SIEMPRE EL PRIMER PROGRAMA QUE ABRIREMOS MAS QUE NADA PARA MIRAR LAS DIFERENTES PARTES DEL OLLYDBG Y PODER UBICARNOS EN SUS DIFERENTE PARTES, ABRIMOS EL CRACKME.EXE QUE SE TRABAJO LA CLASE PASADA CON W32DSM89. • PARA ABRIR EL ARCHIVO A DEBUGGEAR O DESEMSAMBLAR OLLYDBG, VAMOS A FILE OPEN O HACEMOS CLIC EN EL ICONO EN EL
  • 15. CONOCIENDO EL PROGRAMA • ALLÍ SE ABRE EL CRACKME Y POR AHORA NO IMPORTA QUE NO ENTENDAMOS LO QUE NOS MUESTRA YA MAS ADELANTE APRENDEREMOS ESO, LA IDEA ES IR MOSTRANDO LAS PARTES DEL OLLYDBG Y CIERTAS CONFIGURACIONES DEL MISMO.
  • 20. CONOCIENDO EL PROGRAMA • ANTERIORMENTE OBSERVAMOS LAS CUATRO PARTES DE LA VENTANA PRINCIPAL DEL OLLYDBG. • DESEMSAMBLADO • TAMBIÉN LLAMADO LISTADO, AQUÍ EL OLLY NOS MUESTRA EL LISTADO DESENSAMBLADO DEL PROGRAMA QUE VAMOS A DEBUGGEAR, POR DEFAULT EL OLLY VIENE CONFIGURADO PARA ANALIZAR EL PROGRAMA QUE VAMOS A DEBUGGEAR SI DESEAMOS CAMBIAR OPCIONES VAMOS OPTIONS Y POSTERIORMENTE A OPTIONS Y NOS APARECERÁ LA SIGUIENTE PANTALLA.
  • 23. CONOCIENDO EL PROGRAMA • OTRA COSITA QUE HACE A LA CLARIDAD PARA TRABAJAR Y QUE POR LO MENOS A MI ME GUSTA, AUNQUE CADA UNO PUEDE VARIAR EN ESTOS TEMAS ES COLORIZAR LOS JUMPS Y CALLS ESO SE HACE HACIENDO CLIC DERECHO APPEARENCE – HIGHLIGHTING – JUMPS AND CALLS
  • 25. CONOCIENDO EL PROGRAMA • EL RESULTADO ES EL SIGUIENTE
  • 27. CONOCIENDO EL PROGRAMA • OBSERVAMOS QUE EN COLOR AZUL AQUA QUEDAN RESALTADOS LOS CALLS Y EN AMARILLO LOS JUMPS, LO CUAL ES MAS CLARO PARA LA VISTA. • BUENO CON ESO NUESTRO LISTADO QUEDA MAS FÁCIL DE INTERPRETAR, AUNQUE AUN NO TENGAMOS LA MAS REMOTA IDEA DE QUE SIGNIFICA, PERO BUENO HAY QUE PREPARAR ANTES LAS HERRAMIENTAS PARA PODER IR DE A POCO APRENDIENDO
  • 28. CONOCIENDO EL PROGRAMA • REGISTROS • LA SEGUNDA VENTANA IMPORTANTE DEL OLLYDBG ES LA DE LOS REGISTROS
  • 29. CONOCIENDO EL PROGRAMA • RECORDAMOS QUE LA VENTANA DE REGISTROS SE ENCUENTRA EN LA PARTE SUPERIOR DERECHA DEL OLLYDBG, ALLÍ MUESTRA BASTANTE MAS INFORMACIÓN SOBRE LOS REGISTROS EN SI
  • 30. CONOCIENDO EL PROGRAMA • TIENE MUCHÍSIMA MÁS INFORMACIÓN QUE AUN NO VEREMOS, PERO SE PUEDE CAMBIAR EL MODO DE VISUALIZACIÓN EN TRES FORMAS. (REGISTERS FPU, REGISTERS 3D NOW Y REGISTERS MMX) POR DEFAULT VIENE ELEGIDA LA PRIMERA (PRESIONANDO EN LA BARRA EN GRIS REGISTERS (FPU)) COMO SE MUESTRA A CONTINUACIÓN.
  • 31. CONOCIENDO EL PROGRAMA • O HACIENDO CLIC CON EL RATÓN DERECHO DEL MOUSE EN REGISTROS NOS APRECERA LA SIGUIENTE VENTANA EMERGENTE.
  • 32. CONOCIENDO EL PROGRAMA • POR AHORA NO AHONDAREMOS MUCHO EN ESO YA QUE NOS PREOCUPAREMOS MÁS QUE NADA EN EL TEMA REGISTROS Y FLAGS, LO MENCIONO PARA QUE SEPAN QUE HAY VARIAS VISTAS EN EL REGISTRO. • STACK O PILA • BUENO ALLÍ VEMOS EL LLAMADO STACK O PILA AQUÍ NO HAY MUCHA CONFIGURACIÓN POSIBLE SOLO LA OPCIÓN DE MOSTRAR LA INFORMACIÓN RELATIVA AL REGISTRO ESP O AL REGISTRO EBP.
  • 34. CONOCIENDO EL PROGRAMA • POR DEFAULT Y LO QUE MAS SE UTILIZA ES LA VISTA RELATIVA A ESP, PERO PARA CAMBIAR A LA VISTA SEGÚN EBP, HACIENDO CLIC DERECHO EN EL STACK ELIGIENDO GO TO EBP CAMBIAMOS Y PARA VOLVER GO TO ESP VOLVEMOS A LA OPCIÓN POR DEFAULT.
  • 36. CONOCIENDO EL PROGRAMA • DUMP • LA VENTANA DEL DUMP TIENE MUCHAS OPCIONES DE VISUALIZACIÓN, POR DEFAULT NOS MUESTRA LA VISUALIZACIÓN HEXADECIMAL DE 16 BYTES, LA CUAL PUEDE SER MODIFICADA HACIENDO CLICK DERECHO EN EL DUMP Y ELIGIENDO LA OPCIÓN DESEADA.
  • 38. CONOCIENDO EL PROGRAMA • LA OPCIÓN POR DEFAULT ES LA QUE GENERALMENTE MAS SE USA, AUNQUE TENEMOS OPCIONES PARA CAMBIAR PARA MOSTRAR DESENSAMBLADO (DISASSEMBLE), TEXTO (TEXT) Y DIVERSOS FORMATOS (SHORT, LONG, FLOAT). • YA CONOCEMOS LAS PARTES QUE SE VEN EN LA VENTANA PRINCIPAL DEL OLLYDBG, AUNQUE TAMBIÉN HAY MÁS VENTANAS QUE NO SE VEN DIRECTAMENTE, SE PUEDE ACCEDER A ELLAS, TANTO POR EL MENÚ, COMO POR LOS BOTONES DE LAS VISTAS.
  • 39. CONOCIENDO EL PROGRAMA • EL BOTÓN L NOS MUESTRA LO QUE EL OLLYDBG ESCRIBE EN LA VENTANA DEL LOG LO CUAL PUEDE SER CONFIGURADO PARA MOSTRAR DIFERENTES TIPOS DE INFORMACIÓN, POR DEFAULT EN LA VENTANA DEL LOG VA GUARDANDO ALLÍ INFORMACIÓN SOBRE EL ARRANQUE, Y DE LA INFORMACIÓN ESCRITA EN EL MISMO POR LOS DIFERENTES BREAKPOINTS CONDICIONAL LOGS, LO CUAL SE VERA MAS ADELANTE, POR AHORA VEMOS ALLÍ ,LA INFORMACIÓN DEL PROCESO QUE ARRANCO, EN ESTE CASO EL CRACKME, LAS DLL QUE CARGO, Y CIERTOS TIPS SOBRE EL ANÁLISIS.
  • 41. CONOCIENDO EL PROGRAMA • EL BOTÓN E O VIEW-EXECUTABLES NOS MUESTRA LA LISTADO DE LOS EJECUTABLES QUE UTILIZA EL PROGRAMA, EXE, DLLS, OCXS, ETC.
  • 43. CONOCIENDO EL PROGRAMA • AQUÍ TAMBIÉN EL BOTÓN DERECHO TIENE MUCHAS OPCIONES QUE POR AHORA NO VEREMOS YA QUE ESTAMOS MIRANDO EN FORMA GENERAL AL OLLYDBG.
  • 45. CONOCIENDO EL PROGRAMA • EL BOTÓN M O VIEW – MEMORY, NOS MUESTRA LA MEMORIA OCUPADA POR NUESTRO PROGRAMA, ALLÍ SE VEN LAS SECCIONES DEL EJECUTABLE, DLLS QUE UTILIZA EL PROCESO, ASÍ COMO EL STACK Y DIVERSAS SECCIONES Y MUCHAS VECES AL CORRER LOS PROGRAMAS, LOS MISMOS REALIZAN NUEVAS LOCACIONES DE MEMORIA. EN TIEMPO DE EJECUCIÓN.
  • 46. CONOCIENDO EL PROGRAMA • EL BOTÓN M O VIEW – MEMORY, NOS MUESTRA LA MEMORIA OCUPADA POR NUESTRO PROGRAMA, ALLÍ SE VEN LAS SECCIONES DEL EJECUTABLE, DLLS QUE UTILIZA EL PROCESO, ASÍ COMO EL STACK Y DIVERSAS SECCIONES Y MUCHAS VECES AL CORRER LOS PROGRAMAS, LOS MISMOS REALIZAN NUEVAS LOCACIONES DE MEMORIA. EN TIEMPO DE EJECUCIÓN.
  • 48. CONOCIENDO EL PROGRAMA • HACIENDO CLIC DERECHO PODEMOS HACER SEARCH EN LA MEMORIA PARA BUSCAR EN ELLA, STRINGS, CADENAS HEXA, UNICODE ETC., ADEMÁS NOS DA LA POSIBILIDAD DE COLOCAR DIFERENTES TIPOS DE BREAKPOINTS EN LA SECCIONES, COMO ASÍ TAMBIÉN LA POSIBILIDAD DE CAMBIAR EL ACCESO A LAS MISMAS CON SET ACCESS YA PROFUNDIZAREMOS EN ESTO.
  • 50. CONOCIENDO EL PROGRAMA • EL BOTÓN T O VIEW-THREADS NOS DA EL LISTADO DE LOS THREADS DEL PROGRAMA
  • 51. CONOCIENDO EL PROGRAMA • EL BOTÓN W O VIEW-WINDOWS NOS MUESTRA LAS VENTANAS DEL PROGRAMA, COMO AUN NO CORRIÓ, NO HAY VENTANAS ASÍ QUE ESTA VACÍA.
  • 52. CONOCIENDO EL PROGRAMA • EL BOTÓN C O VIEW-CPU NOS RETORNA A LA VENTANA PRINCIPAL DEL PROGRAMA
  • 53. CONOCIENDO EL PROGRAMA • AGREGANDO PLUGINS AL OLLYDBG • EL OLLYDBG TRAE LA OPCIÓN PARA AGREGAR PLUGINS QUE NOS SON NECESARIOS PARA REALIZAR CIERTA TAREA, POR AHORA SOLO AGREGAREMOS EL PLUGIN COMMAND BAR PARA APRENDER COMO SE AGREGAN LOS MISMOS. • BAJAMOS EL PLUGIN COMMAND BAR EL CUAL PUEDE SER BAJADO DE MI BLOG DE TRABAJO EL CUAL TIENE LA SIGUIENTE DIRECCIÓN • HTTPS://MEGA.CO.NZ/#!UG9VHT4A!MGMCOYYSBFXED_A3VBXXIAE6HMIEV4N4U Y_VT_W8JUY
  • 54. CONOCIENDO EL PROGRAMA • AGREGANDO PLUGINS AL OLLYDBG • SOLO COPIAMOS EL CONTENIDO DE LA CARPETA COMMAND BAR A NUESTRO DIRECTORIO RAÍZ DONDE CORREMOS EL OLLYDBG Y CUANDO LO EJECUTEMOS SE ACTIVARA EL MENÚ DE PLUGINS CON NUESTRO PLUGIN AGREGADO.
  • 55. CONOCIENDO EL PROGRAMA • ES UNA BARRA PARA ESCRIBIR COMANDOS QUE NOS FACILITARA MUCHO LAS COSAS, MAS ADELANTE VEREMOS SU USO, POR AHORA LO IMPORTANTE ES SABER AGREGAR PLUGINS. • PARA QUITAR CUALQUIER PLUGIN CON SOLO QUITAR LA DLL CORRESPONDIENTE DE NUESTRA CARPETA PLUGINS Y REINICIAR EL OLLYDBG, DESAPARECERÁ, LES ACONSEJO QUE DEJEN SIEMPRE ACTIVA LA COMMAND BAR. • ARRANCO NUEVAMENTE EL CRACKME EN OLLYDBG Y TENDREMOS LA BARRA
  • 56. CONOCIENDO EL PROGRAMA • LAS TECLAS MAS USADAS EN EL OLLYDBG SON: • F7: EJECUTA UNA SOLA LÍNEA DE CÓDIGO (SI ESTAS EN UN CALL ENTRA AL MISMO A EJECUTARLO POR DENTRO) • F8: EJECUTA UNA SOLA LÍNEA DE CÓDIGO (SI ESTAS EN UN CALL NO ENTRA AL MISMO LO EJECUTA COMPLETO SIN ENTRAR Y SIGUE EN LA SIGUIENTE LÍNEA LUEGO DEL CALL) • ESOS DOS FORMAS DE TRACEAR MANUALMENTE SON VERDADERAMENTE DIFERENTES Y SEGÚN CADA CASO USAREMOS F7 O F8 LO CUAL VEREMOS MÁS ADELANTE. • F2: COLOCA UN BREAKPOINT COMUN EN LA LÍNEA QUE MARCAS CON EL MOUSE EN EL LISTADO, PARA QUITAR EL BP APRIETAS NUEVAMENTE F2.
  • 57. CONOCIENDO EL PROGRAMA • POR EJEMPLO • QUIERO PONER UN BP EN 40101A PUES MARCO CON EL MOUSE ESA LÍNEA
  • 60. CONOCIENDO EL PROGRAMA • VEMOS QUE SE PINTA DE ROJO LA ZONA DE LA DIRECCIÓN, ESO SIGNIFICA QUE HAY ACTIVO UN BP O BREAKPOINT ALLÍ, SI APRETO F2 NUEVAMENTE SE QUITA. • F9: PARA CORRER EL PROGRAMA ES SIMILAR A RUN, CON ESTO EL PROGRAMA CORRERÁ, HASTA QUE ENCUENTRE ALGÚN BREAKPOINT, O ALGUNA EXCEPCION QUE LO DETENGA O FINALICE POR ALGÚN MOTIVO, AL APRETAR RUN VEREMOS EN LA ESQUINA INFERIOR DEL OLLYDBG LA PALABRA RUNNING O SEA QUE ESTA CORRIENDO.
  • 61. CONOCIENDO EL PROGRAMA • SI COLOCAMOS UN BREAKPOINT EN LA DIRECCIÓN 0040101A AL PRESIONAR F9 EL PROGRAMA SE DETENDRÁ Y NOS APARECERÁ LO SIGUIENTE
  • 63. CONOCIENDO EL PROGRAMA • SI QUITAMOS EL BREAKPOINT PRESIONANDO NUEVAMENTE F2 EN ESA DIRECCIÓN TENDREMOS LOS SIGUIENTE
  • 65. CONOCIENDO EL PROGRAMA • SI PAUSO LA EJECUCIÓN EN OLLYDBG APRETANDO F12 O DEBUG –PAUSE, TENDREMOS LO SIGUIENTE
  • 67. CONOCIENDO EL PROGRAMA • VEMOS QUE EL OLLYDBG CAMBIA A MOSTRAR PAUSED O SEA QUE ESTA PAUSADO, PODEMOS VOLVER A HACERLO CORRER CON F9 O DEBUG-RUN • PARA CERRAR EL PROGRAMA QUE ESTA SIENDO DEBUGGEADO APRETO DEBUG-CLOSE