I'f you want to learn how exploits work and how to find them your gunna need to understand programming. I'd advise looking into C/ASM alot of exploits today are found in C programs due to functions like strcpy and many others that do not do proper bounds checking which often leads to common buffer overflows which is deffnitely the most common and most effective technique of exploitation. Google is thy friend.

Also if your intrested in writing exploits finding security holes etc take a look at this book:

[The Shellcoders Handbook]