1 / 16

UNIDAD IV Depuradores ( Debuggers )

UNIDAD IV Depuradores ( Debuggers ). LI & MSC OSCAR RAMÍREZ CORTÉS SISTEMAS DE PROGRAMACIÓN. Qué es un: Bug – Agujero - Bicho?. Defecto en un software no descubierto. El proceso para corregirlos se llama debugging .

Télécharger la présentation

UNIDAD IV Depuradores ( Debuggers )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UNIDAD IV Depuradores (Debuggers) LI & MSC OSCAR RAMÍREZ CORTÉS SISTEMAS DE PROGRAMACIÓN

  2. Qué es un: Bug – Agujero - Bicho? • Defecto en un software no descubierto. • El proceso para corregirlos se llama debugging. • El debugger de programas ya compilados es conocido como ingeniería inversa. 100% Funcional L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  3. Qué es un: Depurador - Debugger? Programa con el que podemos ir ejecutando paso a paso las instrucciones de un programa, con la finalidad de darnos cuenta qué es lo que falla y corregirlo. Aplicación o herramienta que permite la ejecución controlada de un programa o un código, para seguir cada instrucción ejecutada y localizar así bugs, códigos de protección, etc. Con un depurador es posible: poner un punto de interrupción, leer y modificar registros, empezar la ejecución del programa, ejecutar un solo paso manualmente, ejecutar una secuencia de pasos mediante simulaciones, evaluar y solucionar problemas ocultos. L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  4. Algunos Ejemplos De Herramientas y Programas • DBG (debugger de PHP) • DEBUG DOS Command• Eclipse • GoBugsymbolic (debugger para Windows)• GNU Debugger (GDB) • Java PlatformDebuggerArchitecture• JSwat, open-source Java debugger• Turbo Debugger• WinDbg • CCleaner• VB WatchDebuggerfor Visual Basic 6.0 • Visual Studio Debugger L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  5. DEBUGGERS Ambiente Visual y MSDOS L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  6. Entonces el Debugging es? Dados ciertos indicios tenemos que encontrar los errores en nuestros programas. Si sabemos qué tipos de situaciones producen los errores en el software, tenemos más probabilidades de detectar y corregir los problemas. «Proceso metodológico para encontrar y reducir bugs (errores) o defectos en un programa incluyendo piezas de hardware.» Podemos considerar dos tipos de depuración: la preventiva (para el caso de desarrollar software) y la correctiva (con programas instalados). L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  7. Depuración Preventiva (Programación) • Lectura de lo codificado. • Casos de prueba. • Aislar errores. • Rastreo. • Sesiones de evaluación L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  8. Reacciones ante el Proceso de Depuración… L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  9. Qué es un Breakpoint – punto de ruptura? El colocar un breakpoint en una línea de código implica que la ejecución del programa se detendrá al llegar a esa línea. Está ligado a un punto de la ejecución. L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  10. Depuración • Correctiva(Post-Instalación) • Reconocer que ese error existe (un programa puede contener errores que jamás serán detectados). • Aislar la fuente del error. • Identificar la causa del error. • Determinar una solución para el error. • Aplicar la solución (software de sistemas o utilería). • Probar el programa. L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  11. Software de sistemas • O Utilerías • WinDbg • Microsoft pone a disposición las Debugging Tools for Windows, una suite de aplicaciones y documentación destinadas a la depuración en sistemas Windows. WinDbg es una de éstas herramientas: concretamente es un depurador que nos permite adjuntarnos a procesos de usuario y al kernel del sistema operativo. • Permite tanto la depuración en vivo (livedebugging), que consiste en adjuntarse a un proceso que está en ejecución, como la depuración postmortem, mediante el análisis de volcados de memoria generados por la aplicación o el sistema operativo en momentos determinados. L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  12. Software de sistemas • O Utilerías Complejas L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  13. Software de sistemas • O Utilerías de Interfaz Amigable CCleaner «Es una aplicación gratuita, de código cerrado (software no libre), que tiene como propósito mejorar el rendimiento de cualquier equipo que lo ejecute mediante la eliminación de archivos innecesarios, entradas inválidas del Registro de Windows con la posibilidad de desinstalar programas desde su interfaz al igual que inhabilitar la ejecución de aplicaciones en el inicio del sistema con el fin de mejorar la velocidad de arranque del sistema operativo. L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  14. Y qué son los • Anti-Debuggers? «Un debugger es un programa que puede servir para desensamblar a otro programa y así ver como está hecho por dentro. Los virus usan técnicas para evitar ser desensamblados y así impedir su análisis para la fabricación del antivirus correspondiente. El Anti-debug es un conjunto de técnicas que los virus emplean para impedir ser investigados. Los virus son anti-debuggers que acceden a los códigos traducidos de archivos y programas para autoreproducirse y dañarlos.» L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  15. Tecnicas utilizadas por • los Anti-Debuggers TECNICAS STEALTH Falsificación de archivos y de interrupciones. TUNNELING Es la técnica que utilizan tanto virus como antivirus para saltarse todas las rutinas al servicio de una interrupción y tener así un control directo sobre dicha interrupción. POLIMORFISMO Se utiliza la encriptación de su código para que de esta forma ningún antivirus lo pueda detectar. L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN

  16. Por su atención Gracias

More Related