Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
openocd — Espejo oficial de solo lectura de OpenOCD (sin pull requests) | Kitploit
Herramientas/GitHubGitHub/openocd-org/openocd
Seguridad de Sistemas EmbebidosIngeniería InversaDepuradoresHacking de HardwareSeguridad de HardwareSeguridad de Hardware e IoTAnálisis de Firmware
GitHubopenocd-org/openocd

openocd

Espejo oficial de solo lectura de OpenOCD (sin pull requests)

Ver Repositorio
2.3k1.0k32hace 10 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Sitio web

Bienvenido a OpenOCD

OpenOCD proporciona soporte de programación y depuración en chip con una arquitectura en capas de interfaz JTAG y soporte TAP que incluye:

  • Reproducción (X)SVF para facilitar el escaneo de límites automatizado y la programación de FPGA/CPLD;
  • soporte de objetivos de depuración (p.ej. ARM, MIPS): ejecución paso a paso, puntos de interrupción/vigilancia, perfilado gprof, etc;
  • controladores de chips flash (p.ej. CFI, NAND, flash interna);
  • intérprete Tcl integrado para facilitar la creación de scripts.

Varias interfaces de red están disponibles para interactuar con OpenOCD: telnet, Tcl y GDB. El servidor GDB permite que OpenOCD funcione como un 'objetivo remoto' para la depuración a nivel de fuente de sistemas embebidos usando el programa GNU GDB (y otros que hablan el protocolo GDB, p.ej. IDA Pro).

Este archivo README contiene una visión general de los siguientes temas:

  • instrucciones de inicio rápido,
  • cómo encontrar y construir más documentación de OpenOCD,
  • lista del hardware compatible,
  • el proceso de instalación y compilación,
  • consejos de empaquetado.

Inicio rápido para los impacientes

Si tienes una placa popular, simplemente inicia OpenOCD con su configuración, p.ej.:

openocd -f board/stm32f4discovery.cfg

Si estás conectando un adaptador particular con un objetivo específico, necesitas cargar tanto la interfaz JTAG como las configuraciones del objetivo, p.ej.:

openocd -f interface/ftdi/jtagkey2.cfg -c "transport select jtag" \
        -f target/ti/calypso.cfg
openocd -f interface/stlink.cfg -c "transport select swd" \
        -f target/stm32l0.cfg

Después del inicio de OpenOCD, conecta GDB con

(gdb) target extended-remote localhost:3333

Instalación de OpenOCD

La forma más fácil de instalar OpenOCD es a través del gestor de paquetes de tu sistema operativo.

  • Debian / Ubuntu

    sudo apt install openocd
    
  • Fedora

    sudo dnf install openocd
    
  • macOS (vía Homebrew)

    brew install open-ocd
    
  • Windows (vía MSYS2)

    pacman -S mingw-w64-x86_64-openocd
    

Estos paquetes suelen ser más estables que la rama principal Git de última generación, donde ocurre el desarrollo activo. Los 'empaquetadores' crean versiones binarias de OpenOCD después de que los desarrolladores publiquen nuevas versiones del código fuente. Las versiones antiguas de OpenOCD no son adecuadas para diagnosticar problemas en la versión actual. Los usuarios deben mantenerse en contacto con los mantenedores de su distribución o los vendedores de interfaces para asegurarse de que se proporcionen actualizaciones apropiadas regularmente.

Si usas uno de estos paquetes binarios, debes contactar al empaquetador para obtener soporte o versiones binarias más nuevas. Los desarrolladores de OpenOCD no proporcionan soporte directo para binarios empaquetados.

Una nota para los empaquetadores de OpenOCD

Eres un EMPAQUETADOR de OpenOCD si:

  • Vendes dongles e incluyes binarios preconstruidos;
  • Proporcionas herramientas o IDEs (una solución de desarrollo que integra OpenOCD);
  • Construyes paquetes (p.ej. archivos RPM o DEB para una distribución GNU/Linux).

Como empaquetador, experimentarás los primeros informes de la mayoría de los problemas. Cuando arregles esos problemas para tus usuarios, tu solución puede ayudar a prevenir cientos (si no miles) de otras preguntas de otros usuarios.

Si algo no funciona para ti, por favor trabaja para informar a los desarrolladores de OpenOCD cómo mejorar el sistema o la documentación para evitar problemas futuros, y da seguimiento para ayudarnos a asegurar que el problema se resuelva completamente en nuestras futuras versiones.

Dicho esto, los desarrolladores de OpenOCD también te piden que sigas algunas sugerencias:

  • Envía parches, incluyendo archivos de configuración, aguas arriba, participa en las discusiones;
  • Habilita todas las opciones que OpenOCD soporta, incluso las no relacionadas con tu hardware particular;
  • Usa el controlador de adaptador de interfaz "ftdi" para los dispositivos basados en FTDI.

Documentación de OpenOCD

Además de la documentación en el árbol, los manuales más recientes pueden verse en línea en las siguientes URLs:

  • Guía de usuario de OpenOCD: http://openocd.org/doc/html/index.html

  • Manual del desarrollador de OpenOCD: http://openocd.org/doc/doxygen/html/index.html

Estos reflejan las últimas versiones de desarrollo, por lo que la siguiente sección presenta cómo construir la documentación completa desde el paquete.

Para más información, consulta estos documentos o contacta a los desarrolladores suscribiéndote a la lista de correo de desarrolladores de OpenOCD: [email protected]

Construyendo la documentación de OpenOCD

Por defecto, el proceso de compilación de OpenOCD prepara la documentación en 'formato Info' y la instala de manera estándar, para que info openocd pueda acceder a ella.

Además, la Guía de usuario de OpenOCD puede producirse en los siguientes formatos diferentes:

Si PDFVIEWER está configurado, esto crea y visualiza la Guía de usuario en PDF.

make pdf && ${PDFVIEWER} doc/openocd.pdf

Si HTMLVIEWER está configurado, esto crea y visualiza la Guía de usuario en HTML.

make html && ${HTMLVIEWER} doc/openocd.html/index.html

El Manual del desarrollador de OpenOCD contiene información sobre la arquitectura interna y otros detalles sobre el código:

Nota: asegúrate de que doxygen esté instalado, escribe doxygen --version

make doxygen && ${HTMLVIEWER} doxygen/index.html

Hardware compatible

Adaptadores JTAG

AM335x, ARM-JTAG-EW, ARM-USB-OCD, ARM-USB-TINY, AT91RM9200, axm0432, BCM2835, Bus Blaster, Buspirate, Cadence DPI, Cadence vdebug, Chameleon, CMSIS-DAP, Cortino, Cypress KitProg, DENX, Digilent JTAG-SMT2, DLC 5, DLP-USB1232H, embedded projects, Espressif USB JTAG Programmer, eStick, FlashLINK, FlossJTAG, Flyswatter, Flyswatter2, FTDI FT232R, Gateworks, Hoegl, ICDI, ICEBear, J-Link, JTAG VPI, JTAGkey, JTAGkey2, JTAG-lock-pick, KT-Link, Linux GPIOD, Lisa/L, LPC1768-Stick, Mellanox rshim, MiniModule, NGX, Nuvoton Nu-Link, Nu-Link2, NXHX, NXP IMX GPIO, OOCDLink, Opendous, OpenJTAG, Openmoko, OpenRD, OSBDM, Presto, Redbee, Remote Bitbang, RLink, SheevaPlug devkit, Stellaris evkits, ST-LINK (SWO tracing supported), STM32-PerformanceStick, STR9-comStick, sysfsgpio, Tigard, TI XDS110, TUMPA, Turtelizer, ULINK, USB-A9260, USB-Blaster, USB-JTAG, USBprog, VPACLink, VSLLink, Wiggler, XDS100v2, Xilinx XVC/PCIe, Xverve.

Objetivos de depuración

ARM: AArch64, ARM11, ARM7, ARM9, Cortex-A/R (v7-A/R), Cortex-M (ARMv{6/7/8}-M), FA526, Feroceon/Dragonite, XScale. ARCv2, AVR32, DSP563xx, DSP5680xx, EnSilica eSi-RISC, EJTAG (MIPS32, MIPS64), ESP32, ESP32-S2, ESP32-S3, Intel Quark, LS102x-SAP, RISC-V, ST STM8, Xtensa.

Controladores flash

ADUC702x, AT91SAM, AT91SAM9 (NAND), ATH79, ATmega128RFA1, Atmel SAM, AVR, CFI, DSP5680xx, EFM32, EM357, eSi-RISC, eSi-TSMC, EZR32HG, FM3, FM4, Freedom E SPI, GD32, i.MX31, Kinetis, LPC8xx/LPC1xxx/LPC2xxx/LPC541xx, LPC2900, LPC3180, LPC32xx, LPCSPIFI, Marvell QSPI, MAX32, Milandr, MXC, NIIET, nRF51, nRF52 , NuMicro, NUC910, Nuvoton NPCX, onsemi RSL10, Orion/Kirkwood, PIC32mx, PSoC4/5LP/6, Raspberry RP2040, Renesas RPC HF and SH QSPI, S3C24xx, S3C6400, SiM3x, SiFive Freedom E, Stellaris, ST BlueNRG, STM32, STM32 QUAD/OCTO-SPI for Flash/FRAM/EEPROM, STMSMI, STR7x, STR9x, SWM050, TI CC13xx, TI CC26xx, TI CC32xx, TI MSP432, Winner Micro w600, Xilinx XCF, XMC1xxx, XMC4xxx.

Compilando OpenOCD

El archivo INSTALL contiene instrucciones genéricas para ejecutar configure y compilar el código fuente de OpenOCD. Ese archivo se proporciona por defecto para todos los paquetes GNU autotools. Si no estás familiarizado con GNU autotools, entonces deberías leer esas instrucciones primero.

Descargar herramienta