I can already imagine the amount of technical barrier and knowledge gap one needs to fill even before getting started..
Holy shiet. It's impressive.
I can already imagine the amount of technical barrier and knowledge gap one needs to fill even before getting started..
Holy shiet. It's impressive.
Learning how this stuff works in the forward direction makes spotting patterns a whole lot easier. It’s a lot easier to start RE when you’re already familiar with stuff like calling conventions or memory layout (for example).
From there, there isn’t a ton of formal education as far as I’ve seen. I am really fond of Smash the Stack’s IO wargame if you’re interested in CTF-style challenges. I also spent a good bit of time compiling my own small programs and then using them to learn the tools. When you’re starting off, RE is a lot easier when you know what you’re looking for.
Fundamentally though, you will probably need to build up some low level knowledge of whatever you are targeting (whether it's an app platform, TCP packets, C/ASM code, etc).
If you have a web background there are lots of sites that have fun challenges you can start with. You could try Google's XSS game: https://xss-game.appspot.com/
It's a field that really interests me since I always liked puzzles and games and am happiest at work debugging tricky issues - but I'm not sure how easy it would be to break in as a 'junior' at age 35+.
Time in front of the screen is all you need. All code translates to an execution layer.
It helps if you have a few years of dev under your belt. Bonus for low level languages like C or assembly.
have to do a lot of multi-system level debugging, and/or low-level debugging and optimization