Information Security Stack Exchange is a question and answer site for information security professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a feeling that I need to get more knowledge about system programming and winapi/windows architecture in particular to be able to understand how lots of exploits work (like those exploiting buffer overflows and other bugs in system services or regular apps) as well as to be able to debug and reverse the apps I am interested in.

I am not that scared to get my hands dirty but for the last few years I was doing programming mostly on high level and it is been a while since I dug on low/system level programming.

So, my question is - is there any good reading you could recommend that can provide an overview of windows architecture/internals and how things usually work on this platform on the edge of system and application layers (it would also be great if the security means/issues were highlighted too)?

share|improve this question

closed as not constructive by Ninefingers, Polynomial, Gilles, Scott Pack, Mark Davidson Sep 26 '12 at 13:04

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

I've voted to close this as Not Constructive, since it's subjective, non-definitive and promotes a list. However, I highly recommend the following: The Rootkit Arsenal (Bill Blunden), Subverting the Windows Kernel (Hoglund, Butler), Windows Internals 6th Edition, Parts 1 and 2 (Mark Russinovich), Reversing: Secrets of Reverse Engineering (Eldad Eilam). They're all great books, and have helped me a lot. – Polynomial Sep 26 '12 at 9:48
Just noticed that you mentioned you don't really know the Win32 API -- the above books won't really help you there. They're aimed at reverse engineering and Windows kernel internals, especially from a rootkit development point of view. I recommend getting down and dirty with the APIs in x86 asm or C first. Pick something simple, e.g. printing a list of all window titles, and go from there. – Polynomial Sep 26 '12 at 9:53
@Polynomial Thanks, I'll check the books you've mentioned. – Eugene Loy Sep 26 '12 at 10:30
  • Reversing: Secrets of Reverse Engineering (2005)
  • Disassembling Code: IDA Pro & SoftICE Book/CD Package: IDA Pro and SoftICE (2006)
  • Hacking: The Art of Exploitation Book/CD Package 2nd Edition (2007)
  • Malware Analyst's Cookbook and DVD: Tools and Techniques for Fighting Malicious Code (2008)

Personally I really liked the Reversing: Secrets of..

A must read for any reverser is obviously AoA (Art of Assembly) which is free and can be downloaded.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.