Director & Security Researcher @alleleintel.com
Blog: https://blog.andersonc0d3.io
Anderson Nascimento
Loading...
You can understand how things work in theory, but it’s always fascinating to see the challenges that crop up when implementing them in practice. I knew a mature debugger like GDB would be complex, but I didn't expect these specific issues and their solutions.
I wrote this post. As I mention in it, I’ve been using GDB almost daily for about 10 years, but I had never actually looked at its source code. I finally started digging into it to make sense of some quirky behaviors, and I ended up uncovering some fascinating details.
I really enjoyed learning these nuances and writing about them, especially since this deep dive wasn't originally planned!
Did you know there's a way to hit a breakpoint without using hardware or software breakpoints? Or how GDB patches the binary to execute an instruction?
Learn more about how GDB works under the hood.
Why is my shellcode being corrupted?
allelesecurity.com/why-is-my-sh...
We started analyzing a classic case where GDB creates the illusion that code in writable memory is corrupted. We ended up discovering two interesting behaviors of GDB.