A quick search didn't show this mentioned before.
Whilst reading up on local privilege escalation in Linux, I came across the following resource:
http://exploit-exercises.com/nebulaNebula takes the participant through a variety of common (and less than common) weaknesses and vulnerabilities in Linux. It takes a look at
SUID files
Permissions
Race conditions
Shell meta-variables
$PATH weaknesses
Scripting language weaknesses
Binary compilation failures
At the end of Nebula, the user will have a reasonably thorough understanding of local attacks against Linux systems, and a cursory look at some of the remote attacks that are possible.
I'm currenlty working my way through them, and have found them really useful so far.