Sunday, March 25, 2007

How much security is enough security?

For most businesses, it is important for security to be "good enough" and to make sure that you are investing enough to mitigate risk.

Of course, for some companies, such as those in the payment and financial spaces, just one exploited security vulnerability could severely impact customer confidence and result in loss of business. In 2005, for instance, CardSystems, a credit card payment processor, got hit with a SQL injection attack that allowed the bad guys to steal 263,000 credit card numbers over a period of six months, and a total of 43 million unencrypted credit card numbers were exposed to the attack. Visa and Mastercard canceled their contracts with the company, the incident was investigated by the FTC and Congress, and CardSystems' assets were sold off.

There is debate as to whether or not CardSystems was compliant with all of the existing VISA and Mastercard data security requirements prior to the attack. After the attack, the requirements for such compliance were beefed up, but it also demonstrates that compliance, certifications, and audits may have limited value. There is a significant difference between being able to pass an audit and having "real" security. In layman's terms, it is sometimes easier to "talk the talk" than it is to "walk the walk." ;-)

Help Secure The Internet!

Hi Everyone,

Welcome to my blog! From time to time, I'll post interesting tidbits of info and/or opinions. For now, check out the new book that I have co-authored with Christoph Kern and Anita Kesavan entitled "Foundations of Security: What Every Programmer Needs To Know" (now available at Amazon at:

or at your local bookstore).

*** If you know or work with programmers, please let them know about it. ***

Summary of the Book

The book teaches new and current software professionals state-of-the-art software security design principles, methodology, and concrete programming techniques they need to build secure software systems – making them highly marketable to companies and employers.

Why Security Is So Critical

Chances are that unless we all learn something about security, the Internet will continue to be a very vulnerable place in which cybercriminals thrive.

* The number of security vulnerabilities reported to the federally-funded Computer Emergency Response Team (CERT) at Carnegie-Mellon University climbed from 5,990 in 2005 to 8,064 in 2006.

* According to IBM's Internet Security Systems division, 88.4 percent of all 2006 vulnerabilities could be exploited remotely, and over half the vulnerabilities would allow an attacker to gain access to the host (e.g., your computer) after successful exploitation.

Many of these vulnerabilities are used by cyberthieves to commit identity theft, steal credit card numbers, and launch online attacks using malware and botnets. That's really bad. So bad that popular technology websites like C|net dedicate an entire section of their sites to high-profile threat announcements, and they are filled with new articles every single day.

What's the Root Cause of Security Failures?

Software. Software with security design flaws and software with implementation bugs. As a technologist, given my love for software and my embarrassment at the current state of the world, I worked with the Stanford Center for Professional Development (SCPD) near the tail end of my PhD to help create a Computer Security Certification program ( that has to-date helped many companies and software professionals mitigate security flaws in software.

The courses that make up the certification program became the basis for the material in this book. Given the importance of the material in this book to the security of the future of the Internet, I was extremely honored to have Dr. Vint Cerf, often called one of the "Fathers of the Internet" (due to his work on the original design of the TCP/IP protocols) and a recipient of the Presidential Medal of Freedom, write the foreword to this book.

Detailed Information About the Book

This book takes a principled approach to helping you design and implement your applications to be secure from the ground up, and illustrates these principles using running examples of web applications throughout the book. Just as you might use object-oriented design principles to achieve extensibility and code-reuse, you need to learn about security design principles, such as the principle of least privilege, fail-safe stance, and securing the weakest link to achieve security, all of which is covered in this book. This book does not just focus on merely teaching you "tips" and "tricks" that allow you to "band-aid" the security of your systems. Instead, it illustrates how security principles can be employed to prevent some of the most significant, current day attack types such as SQL injection and cross-site scripting (XSS) as well as more traditional attack types such as buffer overflows. We also cover session and password management, and show you how you can use cryptography to help achieve various security goals.

How to Get Your Copy

To help aggressively disseminate knowledge about the techniques and practices that programmers need to know to achieve security, I have worked with the publisher to provide this book to the market at a low price of $40 retail, or only $26 on Amazon. If you are a teacher or an IT decision maker potentially interested in buying copies for your students or your organization, respectively, I would be more than happy to have the publisher provide you with a free evaluation copy of the book. The book's web site ( provides slides and source code that you are free to use for your own courses and needs. Also, those who enroll in the SCPD Advanced Security Certification ( will receive the book for free.

I look forward to your help in making the Internet more secure such that it can continue to transform global commerce, communication, and entertainment. Please feel free to let me know if you have any questions or feedback by dropping me an email at, and I look forward to working together with you to continue to secure the Internet!


Neil Daswani, PhD