Abstract :
In today´s hostile online environment, software must be designed to withstand malicious attacks of all kinds. Unfortunately, even security-conscious products can fall prey when designers fail to understand the threats their software faces or the ways in which adversaries might try to attack it. To better understand a product´s threat environment and defend against potential attacks, Microsoft uses threat modeling, which should be treated like any other part of the design and specification process. In fact, singling it out as a special activity performed outside the normal design process actually detracts from its importance to the overall development life cycle. We must consider security needs throughout the design process, just as we do with performance, usability, localizability, serviceability, or any other facet.
Keywords :
formal specification; object-oriented programming; security of data; software maintenance; software reusability; Microsoft; development life cycle; hostile online environment; software design; threat environment; threat modeling process; Authentication; Data security; Design automation; HTML; Information security; Libraries; Web and internet services; Web server; Web services; XML; product development; security; software development; threat environment; threat modeling;