Most computer books are badly written. The information in the book is fine (usually, hopefully), but the actual craft of writing is poor. They read like computer programs. This isn't surprising, as most computer books are written by computer professionals. By the time you're good enough at a computing topic to write a book about it, your brain automatically arranged things in machine-friendly order. That's human nature. The downside of this, however, is that most computing books lack the things that make books interesting to human beings. We readers grit our teeth and plow through them because we need the information.
I'm pleased to say that Richard Bejtlich's The Practice of Network Security Monitoring is not one of those books. The damn thing is actually readable. By normal people.
That's a vague assertion. How about a metric? Season 6 of Burn Notice just hit Netflix streaming. I watched a few episodes Saturday. They ended on a tense cliffhanger, but I finally had to go to bed. Sunday, I finished reading this book before seeing how Westin and company got out of their fix. (Okay, that's not exactly a metric, but it's a good sign.)
Bejtlich graduated from Harvard and the Air Force Academy graduate. He led CIRT teams in the Air Force, built a security team at General Electric, and is now Chief Security Officer at Mandiant. He's on television as an electronic security guru. And for the last decade-plus, he's been beating the drum about intelligent attackers and the need for a holistic approach to security. When everybody else was going on about firewalls and antivirus and access controls and penetration testing, he wrote books like The Tao of Network Security Monitoring arguing that we need to think about network defense as an ongoing activity. He made absurd claims like "prevention eventually fails" and "there are smart people slowly breaking into your network," lumping these into an overall practice called Network Security Monitoring.
Time has proved that he was right.
Books like Tao and Extrusion Detection had a lot about the business process of security. They had specific examples of how to respond to security incidents. Other books, like my own Network Flow Analysis, cover using a specific tool that's usable in a NSM context. But there hasn't been a good book on how to deploy real security monitoring in your organization, across all tools -- and, just as importantly, how to get buy-in from the business side on this.
The Practice of Network Security Monitoring does all that and more.
The book starts with an overview of the NSM philosophy and practice, and what makes it different from the conventional "we respond to intrusions" perspective. He spends some time going over the Security Onion toolkit. For those readers not familiar with SO Security Onion is to security monitoring what PfSense is for firewalls -- an integrated toolkit built atop a free operating system. You can build everything you need for NSM without Security Onion, but like PfSense, why bother?
Richard gives a brief overview of the various tools in SO, from Sguil to Bro to Snort to Xplico and on and on and on. While you can hook these tools together yourself so they operate more or less seamlessly, again, SO has done all the work for you.
The best part of the book, however, is where Bejtlich takes us through two security incidents. He uses various Security Onion tools to dissect the data from an intrusion response system alert. He backtracks both a client-side and a server-side intrusion, and shows how to accurately scope the intrusion. Was only one server broken into? What data was stolen? What action can you take in response?
What really makes this book work is that he humanizes the security events. Computing professionals think that their job is taking care of the machine. That's incorrect. Their main job is to interface between human beings and the computer. Sometimes this takes the form of implementing a specification from a written document, or solving a bug, or figuring out why your SSL web site is running slowly. Maybe most of your professional skill lies in running the debugger. That's fine, and your skill is admirable. But the reason you get paid is because you interact with other human beings.
Bejtlich pays attention to this human interface. The security incidents happen because people screw up. And they screw up in believable ways -- I read the server compromise walkthrough and thought "This could be me." (Actually, it probably has been me, I just didn't know it.) Deploying network security monitoring takes hardware, which means you need money and staff. Bejtlich advises the reader on how to approach this conversation, using metrics that competent managers understand. His scenarios include discouragement and even fear. If you've ever worked in intrusion response, you know those emotions are very much a part of cleaning up.
But he shows you how to deal with those problems and the attendant emotions: with data.
He even demonstrates practical, real-world examples in how to get that data when the tools fail.
Humanizing a tech book is no easy task. Most authors fail, or don't even try. But Bejtlich pulls it off. He applies "prevention eventually fails" to both the people and the software, and the result is both readable and useful.
Is this book perfect for me? No. The sections on how to install Security Onion are written so that Windows administrators can use them. I don't need that level of detail. But the end result is that tPoNSM is usable by people unfamiliar with Unix-like systems, so I can't really fault him for that.
tPoNSM is useful for anyone interested in the security of their own network. Many of the tools can actually be used outside of a security context, to troubleshoot network and system problems. Deploying NSM not only means you can quickly identify, contain, and remediate intrusions, it gives you insight into the network as a whole. You might start off looking for intrusions, but you'll end up with a more stable network as a side effect.
Now if you'll excuse me, there's another dozen or so episodes of Burn Notice that need watching.