CDN$ 49.83
  • List Price: CDN$ 57.99
  • You Save: CDN$ 8.16 (14%)
Only 1 left in stock (more on the way).
Ships from and sold by Gift-wrap available.
How to Break Web Software... has been added to your Cart
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

How to Break Web Software: Functional and Security Testing of Web Applications and Web Services Paperback – Feb 2 2006

See all 2 formats and editions Hide other formats and editions
Amazon Price
New from Used from
Kindle Edition
"Please retry"
"Please retry"
CDN$ 49.83
CDN$ 43.33 CDN$ 41.94

Harry Potter and the Cursed Child
click to open popover

Special Offers and Product Promotions

  • You'll save an extra 5% on Books purchased from, now through July 29th. No code necessary, discount applied at checkout. Here's how (restrictions apply)

No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
Getting the download link through email is temporarily not available. Please check back later.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your mobile phone number.

Product Details

  • Paperback: 240 pages
  • Publisher: Addison-Wesley Professional; 1 edition (Feb. 2 2006)
  • Language: English
  • ISBN-10: 0321369440
  • ISBN-13: 978-0321369444
  • Product Dimensions: 17.5 x 1.8 x 22.9 cm
  • Shipping Weight: 499 g
  • Average Customer Review: Be the first to review this item
  • Amazon Bestsellers Rank: #436,535 in Books (See Top 100 in Books)
  •  Would you like to update product info, give feedback on images, or tell us about a lower price?

  • See Complete Table of Contents

Product Description

From the Back Cover

"The techniques in this book are not an option for testers–they are mandatory and these are the guys to tell you how to apply them!"
–HarryRobinson, Google.


Rigorously test and improve the security of all your Web software!


It’s as certain as death and taxes: hackers will mercilessly attack your Web sites, applications, and services. If you’re vulnerable, you’d better discover these attacks yourself, before the black hats do. Now, there’s a definitive, hands-on guide to security-testing any Web-based software: How to Break Web Software.


In this book, two renowned experts address every category of Web software exploit: attacks on clients, servers, state, user inputs, and more. You’ll master powerful attack tools and techniques as you uncover dozens of crucial, widely exploited flaws in Web architecture and coding. The authors reveal where to look for potential threats and attack vectors, how to rigorously test for each of them, and how to mitigate the problems you find. Coverage includes


·   Client vulnerabilities, including attacks on client-side validation

·   State-based attacks: hidden fields, CGI parameters, cookie poisoning, URL jumping, and session hijacking

·   Attacks on user-supplied inputs: cross-site scripting, SQL injection, and directory traversal

·   Language- and technology-based attacks: buffer overflows, canonicalization, and NULL string attacks

·   Server attacks: SQL Injection with stored procedures, command injection, and server fingerprinting

·   Cryptography, privacy, and attacks on Web services


Your Web software is mission-critical–it can’t be compromised. Whether you’re a developer, tester, QA specialist, or IT manager, this book will help you protect that software–systematically.


Companion CD contains full source code for one testing tool you can modify and extend, free Web security testing tools, and complete code from a flawed Web site designed to give you hands-on practice in identifying security holes.

About the Author

Mike Andrews is a senior consultant at Foundstone who specializes in software security and leads the Web application security assessments and Ultimate Web Hacking classes. He brings with him a wealth of commercial and educational experience from both sides of the Atlantic and is a widely published author and speaker. Before joining Foundstone, Mike was a freelance consultant and developer of Web-based information systems, working with clients such as The Economist, the London transport authority, and various United Kingdom universities. In 2002, after being an instructor and researcher for a number of years, Mike joined the Florida Institute of Technology as an assistant professor, where he was responsible for research projects and independent security reviews for the Office of Naval Research, Air Force Research Labs, and Microsoft Corporation. Mike holds a Ph.D. in computer science from the University of Kent at Canterbury in the United Kingdom, where his focus was on debugging tools and programmer psychology.


James A. Whittaker is a professor of computer science at the Florida Institute of Technology (Florida Tech) and is founder of Security Innovation. In 1992, he earned his Ph.D. in computer science from the University of Tennessee. His research interests are software testing, software security, software vulnerability testing, and anticyber warfare technology. James is the author of How to Break Software (Addison-Wesley, 2002) and coauthor (with Hugh Thompson) of How to Break Software Security (Addison-Wesley, 2003), and over fifty peer-reviewed papers on software development and computer security. He holds patents on various inventions in software testing and defensive security applications and has attracted millions in funding, sponsorship, and license agreements while a professor at Florida Tech. He has also served as a testing and security consultant for Microsoft, IBM, Rational, and many other United States companies.


In 2001, James was appointed to Microsoft’s Trustworthy Computing Academic Advisory Board and was named a “Top Scholar” by the editors of the Journal of Systems and Software, based on his research publications in software engineering. His research team at Florida Tech is known for its testing technologies and tools, which include the highly acclaimed runtime fault injection tool Holodeck. His research group is also well known for their development of exploits against software security, including cracking encryption, passwords and infiltrating protected networks via novel attacks against software defenses.


See all Product Description

Customer Reviews

There are no customer reviews yet on
5 star
4 star
3 star
2 star
1 star

Most Helpful Customer Reviews on (beta) HASH(0x9e84de34) out of 5 stars 18 reviews
12 of 12 people found the following review helpful
HASH(0x9e84d1d4) out of 5 stars One of the best on the topic! April 27 2006
By Charles Hornat - - Published on
Format: Paperback
This is a hard topic to find good reading. Most books are usually targeted towards operating systems or malware specifically. However, from the first page, I knew this was something worthwhile. A key part to this book being so good is the format Mike and James use to present each topic thus providing something for attackers and security folks. It also could provide pen testers and auditors some good ammo to use as well.

The layout of the chapters starts with gathering information on targets. Then takes a step towards client side attacks, server side attacks, Language based attacks, Authentication, Privacy, and Web Services. They even throw in a chapter outlining the last 50 years or so of web software defects. Surprisingly, or not so surprisingly, we have not always learned from our mistakes.

The best part of the book however, is not the topic as much as it is the layout they use to demonstrate every vulnerability. They start with a topic, Buffer Overflows as an example. The authors describe what it is in a few paragraphs, then discuss when to apply this type of attack, then proceed in How to conduct this attack, and end with How to protect oneself from this attack. Each section is no more than a few paragraphs, ensuring that you do not loose focus on what's being discussed.

The authors also do a great job discussing the tools that one can use to test or perform each attack. Tools such as Nikto, Wikto, Paros and SSL Digger are discussed. When additional information is needed, they provide screenshots and output for one to learn from.

This book is a must for anyone in the role of Web Security, Auditing, or pen testing.


Good Tools, Excellent format, Easy to read


Perhaps more references for more information since the authors do not go into great detail; Advanced web security people may find it a bit elementary
15 of 16 people found the following review helpful
HASH(0x9e84d348) out of 5 stars Very informative. If you develop web software it's a must-read Aug. 3 2006
By Jim Anderton - Published on
Format: Paperback
I recently finished reading How to Break Web Software: Functional and Security Testing of Web Applications and Web Services by Mike Andrews and James A. Whittaker. I, like many of you, develop web software for a living. I've always taken security seriously and occasionally sneered when I ran across examples of common mistakes. Having said that, this book was an eye opener for me.

The book covers common exploits such as bypassing input validation, SQL injection, and denial of service. There were also several types of attacks I hadn't really considered before. I won't list them here because someone would undoubtedly say, "I can't believe he didn't know about that one!" The authors cover 24 different types of attacks in all. The book also includes coverage of web privacy issues and security related to web services.

Finally, as icing on the cake, a CD is included that contains many tools that will find permanent spots in your arsenal. There are tools to do things like scan web servers for common exploits, mirror sites for local analysis, and check SSL cipher strengths. My favorites are the local proxies that will allow you to view and modify posts as they travel from the client and the server. I always knew I could do this, but didn't know how easy it is. The CD also contains the source code of an example site that includes many flaws for you to practice.

This book is written for software professionals to help them put the hackers out of business. So, it necessarily includes hacker techniques. If you develop or test web software, you should read this book before the hackers do. :-)
20 of 25 people found the following review helpful
HASH(0x9cb26510) out of 5 stars Short on content with too much padding May 17 2007
By Groovymarlin - Published on
Format: Paperback
I was disappointed in this book. The actual content was pretty thin, and not very well written. Chapter 1 is a complete waste of time, and actually spends pages explaining what client/server means, what the Web is, and other things that are patently obvious to the supposed audience for this material. I found myself turning to the front to see if this book was written in 1997! You then get nine fairly short chapters with instructions on how to hack a website, more or less; followed by 50 pages of useless padding in the appendices including: an unrelated article co-authored by Whittaker for the IEEE, a detailed list of all the bugs present in their "sample application," and then descriptions of their recommended tools, all of which can easily be found on the Web without paying $22 for this book.

As another reviewer mentioned, there are many typos and other problems like incorrect illustrations, making the reader wonder if Addison-Wesley even employs a copy editor. Furthermore, I felt this book was inaccurately named and described. It's really more about rudimentary hacking and protecting your web application against hackers than web quality or web testing. A beginning web developer might do well to read this as a primer on how to create sites and applications with basic security, but as an experienced tester it was of limited use to me.
5 of 5 people found the following review helpful
HASH(0x9c8fea44) out of 5 stars A rich and well-focussed yet accessible introduction to a wide-ranging subject April 11 2006
By Christos Partsenidis - Published on
Format: Paperback
This is a focussed book with a single aim; to help you find and correct common vulnerabilities in web-based applications and website software.

Above all, this is a book to be used. The authors take a practical approach to each area of consideration, and the chapters are well structured to make it easy for you to get right to work.

For each area they provide an informative overview followed by discussion of the vulnerabilities including numerous code snippets, examples and screen shots. Though rich in detail the writing style keeps you engaged and the sensible structure (when to apply the attack, how to perform it and how to protect against it) makes it easy to grasp the key points.

There is no bias towards either Windows or Unix products on either the client or the server, and you won't need to be a scripting expert to put the authors' ideas into practice.

Chapter 1 explains the difference between web-based and traditional client-server systems and why a different approach is needed when testing. Subsequent chapters cover the vulnerabilities:

Gathering Information on the Target

Bypassing Client-Side Validation

State-Based Attacks

Including Hidden Fields, Cookie poisoning and Session Hijacking

Data Attacks

Including Cross-Site Scripting, SQL Injection and Directory Traversal

Language-Based Attacks

Including Buffer Overflows

Server Attacks

Including Stored Procedures, SQL Injection, Server Fingerprinting and Denial of Service


Including Weak Cryptography and Cross-Site Tracing


Including Caching, Cookies, Web Bugs, ActiveX Controls and Browser Help Objects

Web Services

Including WSDL and XML attacks

The book comes with an excellent companion CD containing a number of testing tools and a flawed website on which you can use the techniques you have learned to cement your knowledge. Both the tools and the vulnerabilities in the sample site are fully documented in two useful appendices.

All in all, a rich and well-focussed yet accessible introduction to a wide-ranging subject. If the security of web-based applications is your area, make room for this on your bookshelf.
10 of 12 people found the following review helpful
HASH(0x9cb28558) out of 5 stars Technique after technique that really works May 19 2006
By Stephen Northcutt - Published on
Format: Paperback Verified Purchase
You can't really read a book like this. You read a few pages and prop the book up with a cookbook holder and start typing in the examples. There were a couple I could not duplicate, but almost everything worked as the authors said it would. Great book, or maybe it would be better to say, great tool!

The fun starts with chapter 2 and these folks do not spend a lot of time on reconnaisance. They know how to break web software and we start on that by chapter 3. I was a little sad in chapter 5, they did not really do SQL injection justice, but then they hit it again with stored procedures in chapter 7.

If there is a weakness to the book it might be chapter 9 and 10, the ending, but I still found both chapters informative.

Every large organization I know is building web applications and most of them are doing it badly. If you are a coder, a webmaster, or a manager of any of the above, buy a copy of this book for everyone on your team. I am going to do the same for my team right now.