I am currently writing a lot of software with public interfaces, and I would like to know more about how hackers break into systems, and the best ways to prevent them. I understand basic DoS and dictionary attacks, and I use bound variables for database queries, but that's all pretty basic. What are some good books for server side security?