Buffer Overflow Attacks: Detect, Exploit, Prevent (英語) ペーパーバック – 2004/12/31
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
The SANS Institute maintains a list of the "Top 10 Software Vulnerabilities." At the current time, over half of these vulnerabilities are exploitable by Buffer Overflow attacks, making this class of attack one of the most common and most dangerous weapon used by malicious attackers. This is the first book specifically aimed at detecting, exploiting, and preventing the most common and dangerous attacks.
Buffer overflows make up one of the largest collections of vulnerabilities in existence; And a large percentage of possible remote exploits are of the overflow variety. Almost all of the most devastating computer attacks to hit the Internet in recent years including SQL Slammer, Blaster, and I Love You attacks. If executed properly, an overflow vulnerability will allow an attacker to run arbitrary code on the victim’s machine with the equivalent rights of whichever process was overflowed. This is often used to provide a remote shell onto the victim machine, which can be used for further exploitation.
A buffer overflow is an unexpected behavior that exists in certain programming languages. This book provides specific, real code examples on exploiting buffer overflow attacks from a hacker's perspective and defending against these attacks for the software developer.
- Over half of the "SANS TOP 10 Software Vulnerabilities" are related to buffer overflows.
- None of the current-best selling software security books focus exclusively on buffer overflows.
- This book provides specific, real code examples on exploiting buffer overflow attacks from a hacker's perspective and defending against these attacks for the software developer.
I'd like to offer a few reasons for a two star review. First, the book is published in a weird format -- 8.8 x 6 x 1.3 inches. I don't know why the publisher produced such a physically small but thick book. Second, this book suffers from too many authors addressing the same issues. BOA is disorganized and internally repetitive. There's no consistent style; some chapters prefer to show memory as a line of characters, others show hex dumps, while others show screen captures. Third, in many sections the writing style is too difficult to follow. Often code is listed for the reader, followed by page upon page of "Analysis." It's tough to match the explanation with the code. Furthermore, many of these Analysis sections have mistakes or look incomplete. Finally, the material itself isn't very compelling. For example, the "introduction to assembly" in chapter 2 is weak, and the book doesn't mention the differences between Intel and AT&T syntax until p 179!
One other point -- if you have the Syngress book Writing Security Tools and Exploits (WSTAE), you already have most of BOA. Ch 1 and Ch 2 appears to be the same in both books. Ch 3 in BOA is Ch 5 in WSTAE, 4 in BOA is 6 in WSTAE, 5 in BOA is 7 in WSTAE, and so on. Duplication of chapters was a problem for Syngress in the mid-2000s, unfortunately.
Thankfully, Syngress and others are publishing much better offensive security books now. I recommend checking for newer resources.
It is hard to believe that programmers keep making the same mistakes over and over again. This book shows what those mistakes are and how hackers exploit them. You need a good understanding of assembly language to get much out of this, but if you do have that background, this is a real eye-opener.
Extremely detailed, and some of this is a bit of a reach for me (it's been many a year since I did any C or Assembler), but it is fascinating, though in the same sense that watching a tiger stalk you would be: it's scary.
Certainly recommended for people who are writing code today, and I hope more of them pay attention, though the authors attitude seems to be that these problems will continue to plague us.