A misuse case (a.k.a., abuse case) is a special kind of use case in which:
Whereas use cases are used to specify system support for users, misuse cases are used to specify system prohibitions against misuser threats.
The typical objectives of a misuse case are to:
The following are typical examples of security misuse cases:
The following are typical examples of paths through the access control misuse case:
| Misuse Case: Access Control | ||
| Misuse Case Path: Attempted Spoofing using Valid User Identity | ||
| Threat: Misuser is authenticated and authorized. | ||
| Preconditions: The misuser has a valid means of user identification but an invalid means of user authentication. |
||
| Misuser Interactions |
System Requirements
|
|
| System Interactions | System Actions | |
| The system shall request the user’s identity and authentication. | ||
| The misuser provides a valid user identity but an invalid user authentication. | ||
| 1) The system shall misidentify the misuser as a valid
user.
2) The system shall fail to authenticate and authorize the misuser. |
||
| The system shall reject the misuser by canceling the transaction. | ||
| Postconditions: 1) The system shall not have allowed the misuser to steal the user’s means of authentication. 2) The system shall not have authenticated the misuser. 3) The system shall not have authorized the misuser to perform any transaction. 4) The system shall record the access control failure. |
||
| Misuse Case: Access Control | |||
| Misuse Case Path: Attempted Identity and Authentication Theft | |||
| Threat: Misuser steals user’s means of identification and authentication. | |||
| Preconditions: The misuser has no means of user identification or user authentication. |
|||
| User Interactions | Misuser Interactions | System Requirements | |
| System Interactions | System Actions | ||
| The system shall request the user’s identity and authentication. | |||
| The user identifies and authenticates himself. | The misuser attempts to steal the user’s means to identify and authenticate. | ||
| 1) The system shall identify,
authenticate, and authorize the user.
2) The system shall protect the user’s identity and authentication during the interaction. |
|||
| The system shall request the user’s choice of interaction. | |||
| Postconditions: 1) The system shall not have enabled the misuser to steal the user’s means of identification and authentication. 2) The system shall have identified, authenticated, and authorized the user. |
|||
| Misuse Case: Access Control | ||
| Misuse Case Path: Attempted Spoofing using Social Engineering | ||
| Threat: Misuser gains access to unauthorized resource. | ||
| Preconditions: 1) The misuser has a valid means of user identification enabling the impersonation of a valid user that is authorized to used a protected resource. 2) The misuser does not have an associated valid means of user authentication. 3) The misuser has knowledge of the organization including the ability to contact the contact center. |
||
| Misuser Interactions |
Contact Center Requirements
|
|
| Contact Center Interactions | Contact Center Actions | |
| The misuser contacts the contact center. | ||
| A user support agent shall request the misusers’s identity and authentication. | ||
| 1) The misuser provides the valid user identity.
2) The misuser states that he or she has a temporary inability to authenticate himself/herself. 3) The misuser states that he or she has an urgent need to access a resource requiring authentication and authorization. |
||
| The user support agent shall request one or more alternate forms of authentication. | The user support agent shall check the appropriate procedures for the proper action. | |
| The misuser fails to provide a valid alternate form of authentication. | ||
| The user support agent shall refuse authentication and authorization to the requested resource. | ||
| Alternatives: The misuser can quit at any point. |
||
| Postconditions: 1) The system shall not have authenticated the misuser. 2) The system shall not have authorized the misuser to access the resource. 3) The system shall record the access control failure. |
||
The following are typical examples of paths through the immunity misuse case:
| Misuse Case: Immunity | ||
| Misuse Case Path: Virus Protection | ||
| Threat: Misuser infects the system with a virus, worm, or trojan horse. | ||
| Preconditions: 1) The misuser has a virus, worm, or trojan horse. 2) The system has requested some form of input from the misuser. |
||
| Misuser Interactions |
System Requirements
|
|
| System Interactions | System Actions | |
| The misuser provides input that includes a virus, worm, or trojan horse. | ||
| 1) The system shall identify the virus, worm, or trojan
horse.
2) The system shall delete the virus, worm, or trojan horse. |
||
| The system shall notify the misuser of the virus, worm, or trojan horse. | ||
| Postconditions: The system shall not be infected. |
||
The following are typical examples of paths through the integrity misuse case:
| Misuse Case: Integrity | |||
| Misuse Case Path: User Message Integrity | |||
| Threat: Misuser corrupts message between the user and the system. | |||
| Preconditions: The misuser has the means to intercept a message between the user and the system. |
|||
| User Interactions | Misuser Interactions | System Requirements | |
| System Interactions | System Actions | ||
| The user sends a message to the system. | |||
| The misuser intercepts, modifies, and forwards the user’s message. | |||
| The system shall recognize that the user’s message was corrupted. | |||
| The system shall notify the user that the user’s message was corrupted. | |||
| Postconditions: Vary depending on the message that was corrupted. |
|||
The following are typical examples of paths through the intrusion detection misuse case:
The following are typical examples of paths through the nonrepudiation misuse case:
The following are typical examples of paths through the privacy misuse case:
| Misuse Case: Privacy | ||
| Misuse Case Path: Data Privacy | ||
| Threat: Misuser accesses private data stored by the system. | ||
| Preconditions: The system stores private data. |
||
| Misuser Interactions |
System Requirements
|
|
| System Interactions | System Actions | |
| The system makes private stored data unreadable. | ||
| The misuser accesses private data stored by the system. | ||
| Postconditions: The misuser cannot read the private data. |
||
| Misuse Case: Privacy | |||
| Misuse Case Path: System Message Privacy | |||
| Threat: Misuser accesses private message from the system to the user. | |||
| Preconditions: The misuser has the means to intercept a message from the system to the user. |
|||
| User Interactions | Misuser Interactions | System Requirements | |
| System Interactions | System Actions | ||
| The system makes the private message unreadable while in transit. | |||
| The system sends a private message to the user. | |||
| The misuser intercepts the system’s private message. | |||
| Postconditions: The misuser cannot read the system’s private message. |
|||
| Misuse Case: Privacy | |||
| Misuse Case Path: User Message Privacy | |||
| Threat: Misuser accesses private message from the user to the system. | |||
| Preconditions: 1) The misuser has the means to intercept a message from the user to the system. 2) The system has requested private information from the user. |
|||
| User Interactions | Misuser Interactions | System Requirements | |
| System Interactions | System Actions | ||
| The user sends a private message to the system. | |||
| The system makes the private message unreadable while in transit. | |||
| The misuser intercepts the user’s private message. | |||
| Postconditions: The misuser cannot read the user’s private message. |
|||
The following guidelines have been found to be useful when producing access control requirements:
For more information about misuse cases, read: