Elaborating Security Requirements by Construction of Intentional Anti-Models - van Lamsweerde, Axel (International Conference on Software Engineering: Proceedings of the 26th International Conference on Software Engineering; 23-28 May 2004, 2004)
Caring for security at requirements engineering time is amessage that has finally received some attention recently.However, it is not yet very clear how to achieve thissystematically through the various stages of therequirements engineering process.The paper presents a constructive approach to themodeling, specification and analysis of application-specificsecurity requirements. The method is based on agoal-oriented framework for generating and resolvingobstacles to goal satisfaction. The extended frameworkaddresses malicious obstacles (called anti-goals) set up byattackers to threaten security goals. Threat trees are builtsystematically through anti-goal refinement until leafnodes are derived that are either software vulnerabilitiesobservable by the attacker or anti-requirementsimplementable by this attacker. New security requirementsare then obtained as countermeasures by application ofthreat resolution operators to the specification of the anti-requirementsand vulnerabilities revealed by the analysis.The paper also introduces formal epistemic specificationconstructs and patterns that may be used to support aformal derivation and analysis process. The method isillustrated on a web-based banking system for whichsubtle attacks have been reported recently.