sigmillogo

The SIGMil Recommended Reading List

Software Development

Data Structures and Algorithms in C++ Second Edition by Adam Drozdek

This book covers all sorts of essential programming concepts and algorithms. Without a doubt the best book I have ever encountered regarding the topics at hand. Topics include: Covers Big O, Big Theta, and Big Omega as well as an additional mathematical analysis of each topic covered.

Design Patterns CD Edition

This book is a great reference for developing solid Object Oriented software. The way to use this is to skim over all the available patterns, and then refer back to the book when you need to make a complicated OO construct. The CD edition is much recommended, but consult the SIGMil chairs before purchase ;)

AI Application Programming

A book that covers AI with detailed examples. Overall, not such an easy read, but has some great information.

Assembly Language Step by Step by Jeff Duntemann

Title pretty much explains it all; covers DOS as well as Linux assembly language coding. Also, this book covers the many different memory models.

Visual C++ Windows Shell Programming by Dino Esposito

An excellent book for interacting with the windows shell. Covers a lot of topics that are noteworthy, but by far the best is message interception. Read this book only if you are a seasoned Windows programmer.

Windows 95 WIN32 Programming API Bible by Richard Simon

The title says it all; it is a great reference for a lot of the Windows API. This book is gigantic and should get anyone started with this general command reference (examples included).

PERL Cookbook by Christansen & Torkington

A book geared to showing you how to get things done in PERL. A most excellent book.

Cryptography

Malicious Cryptography: Exposing Cryptovirology

An introduction to how cryptography works when applied to virus code and theory. It covers cryptography and s applications as well as showing the mathematical background of the theory presented.

Shellcode & Kung Foo

Hacking the Art of Exploitation

This book is an excellent reference for jack of all hacker. It covers many advanced topics and is definitely worth the read.

The Shellcoder's Handbook

If you read any book on this list, it is this one. Worth its weight in gold this book presents shellcoding and advanced exploitation for Linux, Windows, Solaris, and Tru64. Covers buffer overflows, defeating a non-executable stack, heap overflows, as well as a plethora of information to auditing and discovering new holes in security. This is a must read.

Hacker Disassembling Uncovered

Shows how to reverse engineer software in attempt to circumvent copyright protection and various other software security methods.

Exploiting Software: How to Break Code

Another book about fuzzing, and discovering security holes.

Networking

Internetworking with TCP/IP Vol.1

The best TCP/IP Book on the market; it has accurate diagrams and helpful descriptions of just about every protocol that runs on the internet.

802.11 Wireless Networks: The Definitive Guide

This is THE book for understanding 802.11. Descibes the entire protocol, including packet headers, the state machine, etc. Complete with diagrams and written in a similar manner to the above volume.

General Hacking/Introductory

Hacking Exposed

An overview to those completely unaware to how network security is circumvented. Recommended only for those with no prior experience.

Hacking Exposed: Windows 2003 Server

This book is actually pretty useful if you know little about the Windows security model, etc. It is more tool-oriented than code-oriented, and can be skimmed in a sitting or two at the bookstore. Take notes, though. Many of the tools are useful.

Hacking Exposed: Web Applications

Again, this book is useful if you have little web experience. Many low level hackers lack web hacking expertise because they never went through the "webtrash" phase. If this sounds like you, grab this book.

Essential System Administration by Aleen Frisch

A great book that covers the ins and outs of *nix based operating systems.