idea-native2-debugger
gef
idea-native2-debugger | gef | |
---|---|---|
2 | 15 | |
2 | 6,575 | |
- | - | |
6.9 | 8.4 | |
about 1 month ago | 3 days ago | |
Java | Python | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
idea-native2-debugger
-
Beej's Quick Guide to GDB (2009)
CLion uses lldb.
I wrote https://github.com/daym/idea-native2-debugger as a stop-gap. It uses gdb and works in IntelliJ IDEA Community edition. Setting it up the first time is kinda weird since you need to add a new run/debug configuration "Native2Debugger". I could not figure out how to hook this directly into the existing run configuration that you use to run your program to begin with. Otherwise, I like how it turned out.
If you want a standalone frontend, https://github.com/epasveer/seer is extremely good.
And emacs has gdb integration. By now I tried it, and... I guess it's better than nothing.
-
Invariants: A Better Debugger?
>After playing around with a bit of C and trying gdb, I asked myself if this is really what people use. The display constantly breaks and there's not a lot of stuff to quickly walk through code and visualize what it's doing.
As someone doing unix programming since 2001, hell no, that's not what I use (directly), for the reasons you say.
I mean gdb in the backend is okay. But gdb actually specifies Gdb/Mi, a protocol to remote control it.
I use IntelliJ IDEA. I wrote https://github.com/daym/idea-native2-debugger which is a native debugger plugin (that uses gdb in the back) for IntelliJ IDEA Community Edition. You can also use CLion (needs subscription) and that uses lldb in the backend instead of gdb.
Some of my colleagues use emacs (with gdb remote thing). Seems to work OK too.
Earlier in life I used ddd https://www.gnu.org/software/ddd/ a lot--but nowadays I just stay in IDEA.
gef
-
Beej's Quick Guide to GDB (2009)
There is also GEF, which is widely used by the reverse engineering and CTF community.
https://github.com/hugsy/gef
-
How do you use gdb without the tui? Are there advantages? Or just describe your GDB workflow.
If you are on Linux, install GEF and be happy.
- TF2 on Linux is running incredibly poorly, reporting 1200%+ CPU usage. Steam also appears to have some sort of memleak and infinite loop/callback going on leading to absurd CPU usage over time.
-
Any good and easy-to-use C debuggers?
If you are in linux, I recomend none of them (haha) because you should get more used to GDB a little bit. You just need to install some good visualizers likes GEF, for example.
- Emulating an emulator inside itself. Meet Blink
-
Are there any cpu emulators that could help me learn i386 assembly?
https://github.com/hugsy/gef, https://hugsy.github.io/gef/, https://hugsy.github.io/gef/commands/context/ ("Values in red indicate that this register has had its value changed since the last time execution stopped.")
- What plugins do you recommend for ExploitDev or RE and why?
- Awesome TUI tools
-
Fully Dockerized Linux kernel debugging environment
The attached debugger is not just raw GDB but is using https://hugsy.github.io/gef/ to make debugging less of a pain. It's still not perfect but helps plenty already.
-
Debugging with GDB
I still struggle with GDB but my excuse is that I seldom use it.
When I was studying reverse engineering though, I came across a really cool kit (which I've yet to find an alternative for lldb, which would be nice given: rust)
I'd recommend checking it out, if for no other reason than it makes a lot of things really obvious (like watching what value lives in which register).
https://github.com/hugsy/gef
LLDB's closest alternative to this is called Venom, but it's not the same at all. https://github.com/ovh/venom
What are some alternatives?
pdv - parse don't validate
pwndbg - Exploit Development and Reverse Engineering with GDB Made Easy
seer - Seer - a gui frontend to gdb
peda - PEDA - Python Exploit Development Assistance for GDB
gdb-dashboard - Modular visual interface for GDB in Python
lldb-mi - LLDB's machine interface driver
radare2 - UNIX-like reverse engineering framework and command-line toolset [Moved to: https://github.com/radareorg/radare2]
edb-debugger - edb is a cross-platform AArch32/x86/x86-64 debugger.
rr - Record and Replay Framework
voltron - A hacky debugger UI for hackers
qira - QEMU Interactive Runtime Analyser [Moved to: https://github.com/geohot/qira]
pwntools - CTF framework and exploit development library