gef
blink
Our great sponsors
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.
gef
-
Beej's Quick Guide to GDB (2009)
There is also GEF, which is widely used by the reverse engineering and CTF community.
-
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).
LLDB's closest alternative to this is called Venom, but it's not the same at all. https://github.com/ovh/venom
blink
- Python Is Portable
- Porting a Micro Linux VM (Blink) to WebAssembly
-
Patching GCC to Build Portable Executables
> Consider offering APE for x64 but then still producing ARM binaries the old fashioned way.
The recent version of cosmopolitan generates ARM binaries for Linux and MacOS (https://github.com/jart/cosmopolitan#arm; mode aarch64). There is also blink that provides the x86-64 emulation layer for (APE and other) binaries on a variety of platforms (https://github.com/jart/blink).
-
Blink 1.0
Would love a second pair of eyes on the powerpc64le JIT, since it partially works but hangs on some tests. https://github.com/jart/blink/issues/17
-
Searchable Linux Syscall Table for x86 and x86_64
I've never used it, but https://github.com/jart/blink is pretty much that. It's tiny and:
> We regularly test that Blink is able run x86-64-linux binaries on the following platforms:
> Linux (x86, ARM, RISC-V, MIPS, PowerPC, s390x)
> macOS (x86, ARM)
> FreeBSD
> OpenBSD
> Cygwin
-
Blink virtual machine now supports running GUI programs
I wonder if blink could be used as a lightweight sandbox. Looking at PR46[0], it seems sandboxing is not one of the current features, but it would be cool to have a way to run arbitrary code (e.g: Python) in a sandboxed environment. Even cooler if you could limit the amount of memory/CPU used.
[0]: https://github.com/jart/blink/pull/46#pullrequestreview-1264...
-
jart/blink: tiniest x86-64-linux emulator
https://github.com/jart/blink/issues/8 Porting to webassembly
What are some alternatives?
pwndbg - Exploit Development and Reverse Engineering with GDB Made Easy
chromium - The official GitHub mirror of the Chromium source
peda - PEDA - Python Exploit Development Assistance for GDB
blink - Blink Mobile Shell for iOS (Mosh based)
gdb-dashboard - Modular visual interface for GDB in Python
cosmonim - A Nim template to compile your code with the Cosmopolitan libc
lldb-mi - LLDB's machine interface driver
strace - strace is a diagnostic, debugging and instructional userspace utility for Linux
radare2 - UNIX-like reverse engineering framework and command-line toolset [Moved to: https://github.com/radareorg/radare2]
xserver-SIXEL - A X server implementation for SIXEL-featured terminals, based on @pelya's Xsdl kdrive server(https://github.com/pelya/xserver-xsdl)
edb-debugger - edb is a cross-platform AArch32/x86/x86-64 debugger.
superconfigure - wrap autotools configure scripts to build with Cosmopolitan Libc