Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/openocd-org/openocd
Sécurité des Systèmes EmbarquésRétro-ingénierieDébogueursHacking MatérielSécurité MatérielleSécurité Matériel et IoTAnalyse de Micrologiciel
GitHubopenocd-org/openocd

openocd

Miroir officiel en lecture seule d'OpenOCD (pas de pull requests)

Voir le dépôtSite web
2.3k1.0k32il y a 10 joursVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Bienvenue dans OpenOCD

OpenOCD fournit une prise en charge de la programmation et du débogage sur puce avec une architecture en couches de l'interface JTAG et du support TAP, notamment :

  • (X)SVF playback pour faciliter le scan de frontière automatisé et la programmation FPGA/CPLD ;
  • support de cibles de débogage (par ex. ARM, MIPS) : pas à pas, points d'arrêt/surveillance, profilage gprof, etc. ;
  • pilotes de puces flash (par ex. CFI, NAND, flash interne) ;
  • interpréteur Tcl intégré pour un scripting facile.

Plusieurs interfaces réseau sont disponibles pour interagir avec OpenOCD : telnet, Tcl et GDB. Le serveur GDB permet à OpenOCD de fonctionner comme une 'cible distante' pour le débogage au niveau source des systèmes embarqués en utilisant le programme GNU GDB (et les autres qui parlent le protocole GDB, par ex. IDA Pro).

Ce fichier README contient un aperçu des sujets suivants :

  • instructions de démarrage rapide,
  • comment trouver et construire plus de documentation OpenOCD,
  • liste du matériel supporté,
  • le processus d'installation et de compilation,
  • conseils pour l'empaquetage.

Démarrage rapide pour les impatients

Si vous avez une carte populaire, lancez simplement OpenOCD avec sa configuration, par ex. :

openocd -f board/stm32f4discovery.cfg

If you are connecting a particular adapter with some specific target, you need to source both the jtag interface and the target configs, e.g.:

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

Après le démarrage d'OpenOCD, connectez GDB avec

(gdb) target extended-remote localhost:3333

Installation d'OpenOCD

La façon la plus simple d'installer OpenOCD est via le gestionnaire de paquets de votre système d'exploitation.

  • Debian / Ubuntu

    sudo apt install openocd
    
  • Fedora

    sudo dnf install openocd
    
  • macOS (via Homebrew)

    brew install open-ocd
    
  • Windows (via MSYS2)

    pacman -S mingw-w64-x86_64-openocd
    

Ces paquets sont souvent plus stables que la version de développement Git, où le développement actif se produit. "Les empaqueteurs" créent des versions binaires d'OpenOCD après que les développeurs publient de nouvelles versions du code source. Les anciennes versions d'OpenOCD ne sont pas adaptées pour diagnostiquer les problèmes de la version actuelle. Les utilisateurs doivent rester en contact avec les responsables de leur distribution ou les fournisseurs d'interface pour s'assurer que les mises à jour appropriées sont fournies régulièrement.

Si vous utilisez l'un de ces paquets binaires, vous devez contacter l'empaqueteur pour obtenir du support ou des versions binaires plus récentes. Les développeurs d'OpenOCD ne fournissent pas de support direct pour les binaires empaquetés.

Note aux empaqueteurs d'OpenOCD

Vous êtes un EMPAQUETEUR d'OpenOCD si vous :

  • Vendez des dongles et incluez des binaires pré-construits ;
  • Fournissez des outils ou IDE (une solution de développement intégrant OpenOCD) ;
  • Construisez des paquets (par ex. des fichiers RPM ou DEB pour une distribution GNU/Linux).

En tant qu'EMPAQUETEUR, vous serez le premier à recevoir des rapports de la plupart des problèmes. Lorsque vous résolvez ces problèmes pour vos utilisateurs, votre solution peut aider à éviter des centaines (voire des milliers) d'autres questions de la part d'autres utilisateurs.

Si quelque chose ne fonctionne pas pour vous, veuillez informer les développeurs d'OpenOCD de la manière d'améliorer le système ou la documentation pour éviter de futurs problèmes, et assurez un suivi pour nous aider à garantir que le problème sera entièrement résolu dans nos prochaines versions.

Cela dit, les développeurs d'OpenOCD aimeraient également que vous suiviez quelques suggestions :

  • Envoyez des correctifs, y compris les fichiers de configuration, en amont, participez aux discussions ;
  • Activez toutes les options supportées par OpenOCD, même celles sans rapport avec votre matériel particulier ;
  • Utilisez le pilote d'adaptateur d'interface 'ftdi' pour les périphériques basés sur FTDI.

Documentation d'OpenOCD

En plus de la documentation dans l'arborescence, les derniers manuels peuvent être consultés en ligne aux URL suivantes :

  • OpenOCD User's Guide: http://openocd.org/doc/html/index.html

  • OpenOCD Developer's Manual: http://openocd.org/doc/doxygen/html/index.html

Ceux-ci reflètent les dernières versions de développement, donc la section suivante présente comment construire la documentation complète à partir du paquet.

Pour plus d'informations, référez-vous à ces documents ou contactez les développeurs en vous abonnant à la liste de diffusion des développeurs OpenOCD : [email protected]

Construire la documentation d'OpenOCD

Par défaut, le processus de compilation d'OpenOCD prépare la documentation au format 'Info' et l'installe de manière standard, de sorte que info openocd puisse y accéder.

De plus, le guide de l'utilisateur d'OpenOCD peut être produit dans les formats différents suivants :

Si PDFVIEWER est défini, cela crée et affiche le guide utilisateur PDF.

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

Si HTMLVIEWER est défini, cela crée et affiche le guide utilisateur HTML.

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

Le manuel du développeur OpenOCD contient des informations sur l'architecture interne et d'autres détails sur le code :

Remarque : assurez-vous que doxygen est installé, tapez doxygen --version

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

Matériel supporté

Adaptateurs 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.

Cibles de débogage

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.

Pilotes 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.

Compilation d'OpenOCD

Télécharger l’outil