All Projects → hq6 → Gdbshellpipe

hq6 / Gdbshellpipe

Enable piping of internal command output to external commands

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Gdbshellpipe

bleeding-edge-toolchain
All-in-one script to build bleeding-edge-toolchain for ARM microcontrollers
Stars: ✭ 60 (+0%)
Mutual labels:  gdb
Hyperpwn
A hyper plugin to provide a flexible GDB GUI with the help of GEF, pwndbg or peda
Stars: ✭ 387 (+545%)
Mutual labels:  gdb
Awesome Cheatsheets
超级速查表 - 编程语言、框架和开发工具的速查表,单个文件包含一切你需要知道的东西 ⚡
Stars: ✭ 7,930 (+13116.67%)
Mutual labels:  gdb
Stlink
Open source STM32 MCU programming toolset
Stars: ✭ 3,158 (+5163.33%)
Mutual labels:  gdb
Gef
GEF (GDB Enhanced Features) - a modern experience for GDB with advanced debugging features for exploit developers & reverse engineers ☢
Stars: ✭ 4,197 (+6895%)
Mutual labels:  gdb
Libheap
python library to examine ptmalloc (the glibc userland heap implementation)
Stars: ✭ 453 (+655%)
Mutual labels:  gdb
dotfiles
(Basically) Emacs... What else?
Stars: ✭ 40 (-33.33%)
Mutual labels:  gdb
Gdbgui
Browser-based frontend to gdb (gnu debugger). Add breakpoints, view the stack, visualize data structures, and more in C, C++, Go, Rust, and Fortran. Run gdbgui from the terminal and a new tab will open in your browser.
Stars: ✭ 8,339 (+13798.33%)
Mutual labels:  gdb
Dlangide
D language IDE based on DlangUI
Stars: ✭ 358 (+496.67%)
Mutual labels:  gdb
Inspector
A drop-anywhere C++ REPL
Stars: ✭ 767 (+1178.33%)
Mutual labels:  gdb
Pylane
An python vm injector with debug tools, based on gdb.
Stars: ✭ 282 (+370%)
Mutual labels:  gdb
Pwndbg
Exploit Development and Reverse Engineering with GDB Made Easy
Stars: ✭ 4,178 (+6863.33%)
Mutual labels:  gdb
Voltron
A hacky debugger UI for hackers
Stars: ✭ 5,599 (+9231.67%)
Mutual labels:  gdb
Docker Eyeos
Run iPhone (xnu-arm64) in a Docker container! Supports KVM + iOS kernel debugging (GDB)! Run xnu-qemu-arm64 in Docker! Works on ANY device.
Stars: ✭ 256 (+326.67%)
Mutual labels:  gdb
Android Unpacker
Android Unpacker presented at Defcon 22: Android Hacker Protection Level 0
Stars: ✭ 944 (+1473.33%)
Mutual labels:  gdb
insight
A Tcl/Tk Frontend for GDB. This is an AppImage(Portable Package) of insight for the sake of Jeff Duntemann's amazing book.
Stars: ✭ 31 (-48.33%)
Mutual labels:  gdb
Lldb
Project moved to: https://github.com/llvm/llvm-project
Stars: ✭ 412 (+586.67%)
Mutual labels:  gdb
Gdbstub
A simple, dependency-free GDB stub that can be easily dropped in to your project.
Stars: ✭ 56 (-6.67%)
Mutual labels:  gdb
Pince
A reverse engineering tool that'll supply the place of Cheat Engine for linux
Stars: ✭ 987 (+1545%)
Mutual labels:  gdb
Rr
Record and Replay Framework
Stars: ✭ 6,469 (+10681.67%)
Mutual labels:  gdb

Shell-Pipe Command

This gdb extension allows the piping of internal gdb commands to external commands, as described in this Stackoverflow question.

Suppose one wanted to find all the mov instructions in the current function.

(gdb) disas
Dump of assembler code for function foo:
0x0000000000400526 <+0>:     push   %rbp
0x0000000000400527 <+1>:     mov    %rsp,%rbp
0x000000000040052a <+4>:     sub    $0x10,%rsp
0x000000000040052e <+8>:     movq   $0x4005e4,-0x8(%rbp)
=> 0x0000000000400536 <+16>:    mov    -0x8(%rbp),%rax
0x000000000040053a <+20>:    mov    %rax,%rdi
0x000000000040053d <+23>:    callq  0x400400 <[email protected]>
0x0000000000400542 <+28>:    nop
0x0000000000400543 <+29>:    leaveq
0x0000000000400544 <+30>:    retq

One can source the file ShellPipeCommand.py in their $HOME/.gdb_init file, and then invoke the following command.

    (gdb) shell-pipe disas | grep mov
    0x0000000000400527 <+1>:     mov    %rsp,%rbp
    0x000000000040052e <+8>:     movq   $0x4005e4,-0x8(%rbp)
 => 0x0000000000400536 <+16>:    mov    -0x8(%rbp),%rax
    0x000000000040053a <+20>:    mov    %rax,%rdi

Note that the native gdb shell command already handles shell pipelines which do not involve internal gdb commands. This extension is intended for the case where the first command in the pipeline is a gdb internal command. If the first command in the pipeline is a valid gdb command as well as a valid external command, it will be interpreted as the former rather than the latter.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].