Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
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
gdb-frontend — ☕ GDBFrontend es un depurador gráfico fácil, flexible y extensible. | Kitploit
Herramientas/GitHubGitHub/rohanrhu/gdb-frontend
Ingeniería InversaDepuradoresAnálisis de BinariosAprendizaje y Educación
GitHubrohanrhu/gdb-frontend

gdb-frontend

☕ GDBFrontend es un depurador gráfico fácil, flexible y extensible.

Ver Repositorio
3.0k112hace 9 mesesRevisado 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

GDBFrontend

GitHub release GitHub issues GitHub forks GitHub stars GDBFrontend Discord Apóyame en Patreon

GDBFrontend es un depurador gráfico fácil, flexible y extensible.

gdb-frontend

Instalación

Requisitos

  • GDB >= 8.2 (con python3)
  • python3 >= 3.6
  • tmux

Paquete PIP (Python Wheel) [Recomendado]

Puedes instalar GDBFrontend con pip.

root@kitploit:~
sudo python3 -m pip install gdbfrontend

si ya está instalado y lo estás actualizando

root@kitploit:~
sudo python3 -m pip install --upgrade gdbfrontend

o si deseas instalar una instantánea GIT específica:

root@kitploit:~
sudo python3 setup.py install

y puedes ejecutar

root@kitploit:~
gdbfrontend

Ejecutar desde GIT

Puedes descargar la última fuente y ejecutarla.

Puedes ejecutar gdb-frontend con los siguientes comandos:

root@kitploit:~
git clone https://github.com/rohanrhu/gdb-frontend.git gdb-frontend
cd gdb-frontend
./gdbfrontend

y puedes abrirlo con:

root@kitploit:~
http://127.0.0.1:5550/

Puedes abrir el shell de GDB con el comando:

root@kitploit:~
tmux a -t gdb-frontend

Arch Linux (AUR)

Puedes instalar el paquete de Arch Linux para distribuciones basadas en Arch. (Paquete AUR)

root@kitploit:~
yay -S gdb-frontend-bin

y puedes ejecutarlo:

root@kitploit:~
gdbfrontend

Flatpak

El paquete Flatpak está pendiente.

Depuración de apps C/C++ en Docker con GDBFrontend

Sigue este tutorial para aprender a depurar aplicaciones C/C++ en Docker con GDBFrontend.

Depuración embebida con GDBFrontend

Sigue este tutorial rápido para depurar dispositivos embebidos con GDBFrontend.

Depuración de extensiones C de Python con GDBFrontend

Sigue este tutorial rápido para depurar extensiones nativas C de Python con GDBFrontend.

¿Cómo desarrollar plugins para GDBFrontend?

GDBFrontend dispone de APIs potentes y extensibles. Sigue este tutorial rápido para aprender a desarrollar plugins para GDBFrontend.

¿Cómo integrar GDBFrontend con tu Makefile?

Sigue este tutorial rápido para ideas de integración para requisitos especiales de desarrollo/depuración.

Depuración STM32 usando OpenOCD, GDB y GDBFrontend en Linux

Sigue este tutorial para depurar STM32 con OpenOCD y GDBFrontend.

Características

Evaluador de expresiones

GDBFrontend tiene un evaluador de expresiones que puedes usar múltiples al mismo tiempo.

Visualización de punteros

Visualización de listas enlazadas

Puntos de interrupción condicionales

Haz clic derecho en un punto de interrupción para establecer su condición.

Expresiones conectadas

Las expresiones de todas las variables, miembros e ítems están conectadas en el Explorador de Variables de GDBFrontend.

Administrador de procesos

Puedes ver, filtrar o gestionar procesos con el Administrador de procesos.

Visualización de gráficos de arrays

Colaboración mejorada

GDBFrontend tiene un conjunto de funciones para la colaboración denominado "Colaboración mejorada".

Dibujo colaborativo

El dibujo colaborativo está disponible cuando activas la Colaboración mejorada. Haz clic en Dibujar o usa el atajo Ctrl + Mayús + X para dibujar y Ctrl + Mayús + C para borrar todos los dibujos.

Visualización sincronizada del código fuente

Con la Colaboración mejorada, todos los clientes del depurador están sincronizados en la visualización del código fuente.

Explorador de variables emergente al pasar el ratón sobre una expresión

Extensibilidad

GDBFrontend es muy extensible y tiene APIs potentes. Algunos ejemplos de la extensibilidad de GDBFrontend.

./gdbfrontend

root@kitploit:~
$ gdbfrontend --help
GDBFrontend is a easy, flexible and extensionable gui debugger.

Options:
  --help, -h:                                   Shows this help message.
  --version, -v:                                Shows version.
  --gdb-args="ARGS", -G "ARGS":                 Specifies GDB command line arguments. (Optional)
  --gdb-executable=PATH, -g PATH:               Specifies GDB executable path (Default is "gdb" command on PATH environment variable.)
  --tmux-executable=PATH, -tmux PATH:           Specifies Tmux executable path (Default is "tmux" command on PATH environment variable.)
  --terminal-id=NAME, -t NAME:                  Specifies tmux terminal identifier name (Default is "gdb-frontend".)
  --credentials=USER:PASS, -c USER:PASS:        Specifies username and password for accessing to debugger.
  --host=IP, -H IP:                             Specifies current host address that you can access via for HTTP and WS servers.
  --listen=IP, -l IP:                           Specifies listen address for HTTP and WS servers.
  --port=PORT, -p PORT:                         Specifies HTTP port. (0 for random port.)
  --url-base=PATH, -u PATH:                     Specifies URL base path. (Default: /)
  --readonly, -r:                               Makes code editor readonly. (Notice: This option is not related to security.)
  --workdir, -w:                                Specifies working directory.
  --plugin-dir, -P:                             Specifies plugins directory.
  --dontopenuionstartup, -D:                    Avoids opening UI just after startup.
  --verbose, -V:                                Enables verbose output.

Opciones

--help, -h

Muestra el texto de ayuda.

--version, -v

Muestra la versión.

--gdb-args="ARGS", -G "ARGS"

Especifica los argumentos de línea de comandos de GDB. (Opcional)

--gdb-executable=PATH, -g PATH

Puedes especificar la ruta del ejecutable de GDB, por ejemplo: gdbfrontend --gdb-executable=/ruta/a/gdb. (Opcional)

--tmux-executable=PATH, -tmux PATH

Puedes especificar la ruta del ejecutable de Tmux, por ejemplo: gdbfrontend --tmux-executable=/ruta/a/tmux. (Opcional)

--terminal-id=PATH, -t PATH

Puedes especificar el ID del terminal de Tmux, por ejemplo: gdbfrontend --terminal-id=nombre-terminal. (Por defecto: gdb-frontend)

--credentials=USER:PASS, -c USER:PASS

Especifica el nombre de usuario y la contraseña para acceder al depurador.

--host=IP, -H IP

Especifica la dirección del host actual a la que puedes acceder para los servidores HTTP y WS.

--listen=IP, -l IP

Especifica la dirección de escucha para los servidores HTTP y WS.

--port=PORT, -p PORT

Especifica el puerto HTTP. (0 para un puerto aleatorio.)

--url-base=PATH, -u PATH

Especifica la ruta base de la URL. (Por defecto: /)

--readonly, -r

Hace que el editor de código sea de solo lectura. (Aviso: Esta opción no está relacionada con la seguridad.)

--workdir, -w

Especifica el directorio de trabajo.

--plugin-dir, -P

Especifica el directorio de plugins.

--dontopenuionstartup, -D

Evita abrir la interfaz de usuario justo después del inicio.

--verbose, -V

Activa la salida detallada.

Comandos GDB

Los comandos GDB de GDBFrontend comienzan con gf-.

gf-refresh

Refresca todos los clientes del navegador.

gf-theme [nombre-tema]

Cambia al tema deseado. Por ejemplo: gf-theme light, gf-theme red o gf-theme default para el tema por defecto.

gf-list-plugins

Lista todos los plugins de GDBFrontend en el directorio de plugins.

gf-load-plugin [nombre-plugin]

Carga un plugin de GDBFrontend.

gf-unload-plugin [nombre-plugin]

Descarga un plugin de GDBFrontend.

Atajos / Teclas rápidas

Los atajos actuales se enumeran a continuación.

Temas

GDBFrontend tiene temas integrados.

Para cambiar entre temas, usa el comando gf-theme [TEMA] en el shell de GDB.

root@kitploit:~
(gdb) gf-theme doki
(gdb) gf-theme sky
(gdb) gf-theme sakura
(gdb) gf-theme waifu
(gdb) gf-theme cyberpunk
(gdb) gf-theme dark
(gdb) gf-theme green
(gdb) gf-theme light
(gdb) gf-theme red

Para volver al tema por defecto.

root@kitploit:~
(gdb) gf-theme

También puedes consultar el Tutorial de desarrollo de plugins.

API Python de GDBFrontend

Puedes acceder a la API Python de GDBFrontend a través del módulo gdbfrontend.

root@kitploit:~
(gdb) python-interactive
root@kitploit:~
>>> dir(gdbfrontend)

Por ejemplo, puedes obtener todos los sockets de cliente así:

root@kitploit:~
>>> gdbfrontend.api.globalvars.httpServer.ws_clients
{1: <server.GDBFrontendSocket object at 0x...>}

o puedes obtener todos los plugins:

root@kitploit:~
>>> gdbfrontend.plugin.getAll()
['hello', 'theme_cyberpunk', 'theme_dark', 'theme_doki', 'theme_green', 'theme_light', 'theme_red', 'theme_sakura', 'theme_sky', 'theme_waifu']

Seguridad al compartir sesiones

Puedes usar la opción --credentials=USER:PASS para agregar autenticación HTTP a tu sesión de depuración.

Compatibilidad con navegadores

GDBFrontend se desarrolla principalmente probando en navegadores basados en Chromium. Funcionará correctamente con otros navegadores, especialmente con Firefox, pero si encuentras algún problema en otros navegadores, puedes enviar un informe de error.

Solución de problemas

Bloqueo del shell/hilo principal de GDB

La mayoría de las funciones de GDBFrontend son seguras para subprocesos y trabajan en el hilo principal de GDB. Por lo tanto, si ejecutas algo que bloquea el shell de GDB, las funciones de GDBFrontend deben esperar hasta que termine.

Recibirás esta advertencia cuando una función segura para subprocesos de GDBFrontend necesite trabajar y estés bloqueando el hilo principal de GDB.

root@kitploit:~
(gdb) shell
$ ...

Cuando salgas del shell, las funciones bloqueadas de GDBFrontend continuarán funcionando.

Nota: A veces puedes recibir esta advertencia sin ejecutar nada en el shell de GDB, significa que algo (en el bucle de eventos de GDB) está tomando mucho tiempo; en este caso ignora esta advertencia.

Procesos zombies

GDBFrontend envía SIGTERM a sus subprocesos, a tu aplicación y a sus subprocesos. Si tu aplicación está bifurcando nuevos procesos y estableciendo sus PGID, GDBFrontend puede no cerrarlos. En ese caso, debes enviar SIGKILL a tus procesos.

root@kitploit:~
pkill -f gdb

Consejos de rendimiento del evaluador de expresiones

Si estás usando ExpressionEvaluator con variables/miembros expandidos de profundidad muy larga, el rendimiento del desplazamiento y el movimiento de la ventana del evaluador puede verse afectado negativamente para la visualización de punteros. En esta situación, puedes desactivar las indicaciones de signal y slot para esa ventana del evaluador.

Botones de visualización de punteros del evaluador

Problemas y consejos relacionados con GDB

  • Es posible que GDB no proporcione las fuentes de un objeto enlazado dinámicamente hasta que se ejecute una línea que llame a una función del objeto enlazado dinámicamente una vez. Puedes agregar un punto de interrupción en una línea y ejecutarla una vez; luego verás las fuentes del objeto enlazado dinámicamente durante el resto de la sesión.

Windows

De hecho, gdb-frontend puede ejecutarse en Windows, pero hay algunos problemas graves en la versión de GDB para Windows que impiden usar gdb-frontend en Windows. Por supuesto, puedes usar gdb-frontend en WSL si usas Windows 10.

Problemas con Windows-GDB

  • El hilo principal de GDB se bloquea durante la ejecución del proceso. (gdb-frontend tiene un mecanismo de interrupción para solucionar esto, pero aún no es suficiente).
  • El prompt de Windows-GDB se bloquea durante la ejecución del proceso y hay algunos problemas al interrumpir la aplicación.

WSL

Puedes usar gdb-frontend en WSL (Subsistema de Windows para Linux).

Problemas con WSL

  • En WSL 1, la opción de puerto aleatorio no es utilizable en WSL porque la interfaz /proc/net/tcp no funciona en WSL. (WSL 2 no tiene este problema).

Versionado

Desde v0.2.0-beta, GDBFrontend cambió a una nueva estrategia de versionado.

Lectura de versiones

En vX.Y.Z-ESTABILIDAD:

  • X son versiones principales, cambian a largo plazo con características y mejoras importantes.
  • Y son versiones principales que incluyen nuevas características y mejoras.
  • Z son lanzamientos de corrección de errores de las versiones principales.
  • ESTABILIDAD es el nivel de estabilidad del lanzamiento (alpha, beta, rcN, stable).

Documentación

La documentación está pendiente.

Documentación de la API

La documentación de la API está pendiente.

Desarrollo de plugins

Puedes leer el Tutorial de desarrollo de plugins.

Desarrollo de temas

Los temas se desarrollan como plugins.

Discord

Únete a la comunidad de Discord.

GDBFrontend Discord

🎊 Contribuciones

Puedes contribuir realizando commits al proyecto o desarrollando un plugin. Todos los commits son bienvenidos.

Guía de contribución

❤️ Donaciones

  • Patreon
  • GitHub Sponsors

Donaciones en criptomonedas

MonedaDirección
BTCbc1qhvlc762kwuzeawedl9a8z0duhs8449nwwc35e2
ETH / USDT / USDC0x1D99B2a2D85C34d478dD8519792e82B18f861974
XMR88qvS4sfUnLZ7nehFrz3PG1pWovvEgprcUhkmVLaiL8PVAFgfHjspjKPLhWLj3DUcm92rwNQENbJ1ZbvESdukWvh3epBUty

Preferiblemente, se recomienda donar USDT o USDC, pero puedes donar cualquiera de las monedas anteriores. 🥳

Licencia

Copyright (C) 2019, Oğuzhan Eroğlu [email protected] (https://oguzhaneroglu.com/)

GNU General Public License v3 (GPL-3)

Puedes copiar, distribuir y modificar el software siempre que realices un seguimiento de los cambios/fechas en los archivos fuente. Cualquier modificación al software o software que incluya (a través del compilador) código con licencia GPL también debe ponerse a disposición bajo la GPL junto con las instrucciones de compilación e instalación.

Descargar herramienta
AcciónTeclaContexto
General: Abrir un archivo fuenteCtrl + OGDBFrontend
General: Nuevo evaluador de expresionesCtrl + RGDBFrontend
General: Nuevo evaluador de expresiones en ventana nativaCtrl + Mayús + RGDBFrontend
General: Buscador difuso de fuentesCtrl + PGDBFrontend
Ejecución: EjecutarF5GDBFrontend
Ejecución: ContinuarF6GDBFrontend
Ejecución: Pausar/InterrumpirF7GDBFrontend
Ejecución: Saltar líneaF8GDBFrontend
Ejecución: Entrar en funciónF9GDBFrontend
Ejecución: Ejecutar instrucciónF10GDBFrontend
Ejecución: DetenerF11GDBFrontend
Colaboración Mejorada: Activar/desactivar modo dibujoCtrl + Mayús + XGDBFrontend / Colaboración Mejorada: Activada
Colaboración Mejorada: Borrar todos los dibujosCtrl + Mayús + CGDBFrontend / Colaboración Mejorada: Activada