Speaking at Microsoft's Security Development Conference in San Francisco this week, Scott Charney, corporate vice president for Trustworthy Computing at Microsoft, said that Microsoft created Security Development Lifecycle processes, which made security intrinsic to development. This changed things from the early days when it was all about whack-a-mole. When a problem occurred patches would be issued and it was all done.
That changed in 2004, when Microsoft launched SDL and applied it to products connecting to the Internet, used in the enterprise, or used to store or process personal information. SDL was deployed with the goal of reducing vulnerabilities in products and integrated into the development lifecycle. The SDL process miffed product teams who were ready to move forward ahead with their products but got stalled by Microsoft's new security requirements.
It worked to a point. It reduced customer pain and dramatically reduced vulnerabilities, but it was still not possible to get vulnerabilities down to zero. Software's written by human beings and they make mistakes, he said. At the end of the day there will be a lot of “bad actors” out there who will do their best to turn over software.