http://www.hackthissite.orgwell i dont know if you have heard of this site but pretty much it challenges your hacking/programming skills (legally

)
basic web hacking.....................simple find the password
realistic web hacking..................same as basic, except for realistic situations
application hacking....................usually consist of finding serials
programming............................forces you to create a program to solve the missions
you can try it out. the application challenges are fun
