
Ask HN: Getting started with reverse engineering - jmstfv
What are some good resources for delving into reverse engineering? (apart from subreddit and Stack exchange forum)
======
alltakendamned
Well, it depends a little bit what you want to learn. Do you want to focus on
binary reversing or on e.g. protocol reversing or firmware reversing etc.

That being said, you'll need to learn:

\- Disassemblers like IDA Pro or Radare2

\- Internals of the operating system of your choice, so you know how it works

\- Internals of the file formats you want to reverse

\- What code constructs look like in disassembly so you can recognize them

\- Tons and tons of practice

Many people start learning with so called Crackme challenges, google for that.
challenges.re is a good start.

There's free ebooks around like at
[https://beginners.re/](https://beginners.re/)

Lists like [https://github.com/fdivrp/awesome-
reversing](https://github.com/fdivrp/awesome-reversing) will provide more
pointers.

It's important to understand that reverse engineering is not an easy topic to
master. It'll take tons of time and practice, so be patient.

~~~
phaus
I'm already working on binary reversing. Got any advice on learning protocol
reversing? I've been looking for a couple of years and I haven't found much.

~~~
alltakendamned
There are indeed less resources available for protocol analysis, and I'm
always on the lookout for them myself as this is an interesting topic.

So far, it's mainly been studying existing protocols, as many protocols reuse
the same ideas and techniques.

Additionally, here's 2 resources that I found interesting and related:

So you want to hack radios talk @HITB 2017, offering a good methodology for
basic RF reversing. Very good talk:
[https://www.youtube.com/watch?v=QeoGQwT0Z1Y](https://www.youtube.com/watch?v=QeoGQwT0Z1Y)

The upcoming book of James Forshaw on attacking network protocols, there are
already some chapters available through early access:
[https://www.nostarch.com/networkprotocols](https://www.nostarch.com/networkprotocols)

If you have good references, I'd love to hear about them.

~~~
phaus
Thanks! I actually pre-ordered that James Forshaw book a few months ago. I'll
probably wait until release to begin reading.

