SDL Security Bug Bar (Sample)
Note: This sample document is for illustration purposes only. The content presented below outlines basic criteria to consider when creating security processes. It is not an exhaustive list of activities or criteria and should not be treated as such.
Please refer to the definitions of terms in this section.
Server
Please refer to the Denial of Service Matrix for a complete matrix of server DoS scenarios.
The server bar is usually not appropriate when user interaction is part of the exploitation process. If a Critical vulnerability exists only on server products, and is exploited in a way that requires user interaction and results in the compromise of the server, the severity may be reduced from Critical to Important in accordance with the NEAT/data definition of extensive user interaction presented at the start of the client severity pivot.
Server |
|
---|---|
Critical | Server summary: Network worms or unavoidable cases where the server is “owned.”
|
Important | Server summary: Non-default critical scenarios or cases where mitigations exist that can help prevent critical scenarios.
|
Moderate |
|
Low |
|
Client
Extensive user action is defined as:"User interaction" can only happen in client-driven scenario.
Normal, simple user actions, like previewing mail, viewing local folders, or file shares, are not extensive user interaction.
"Extensive" includes users manually navigating to a particular website (for example, typing in a URL) or by clicking through a yes/no decision.
"Not extensive" includes users clicking through e-mail links.
NEAT qualifier (applies to warnings only). Demonstrably, the UX is:
Necessary (Does the user really need to be presented with the decision?)
Explained (Does the UX present all the information the user needs to make this decision?)
Actionable (Is there a set of steps users can take to make good decisions in both benign and malicious scenarios?)
Tested (Has the warning been reviewed by multiple people, to make sure people understand how to respond to the warning?)
Clarification: Note that the effect of extensive user interaction is not one level reduction in severity, but is and has been a reduction in severity in certain circumstances where the phrase extensive user interaction appears in the bug bar. The intent is to help customers differentiate fast-spreading and wormable attacks from those, where because the user interacts, the attack is slowed down. This bug bar does not allow you to reduce the Elevation of Privilege below Important because of user interaction.
Client |
|
---|---|
Critical | Client summary:
|
Important | Client summary:
|
Moderate |
|
Low |
|
Definition of Terms
authenticated
Any attack which has to include authenticating by the network. This
implies that logging of some type must be able to occur so that the
attacker can be identified.
anonymous
Any attack which does not need to authenticate to complete.
client
Either software that runs locally on a single computer or software that
accesses shared resources provided by a server over a network.
default/common
Any features that are active out of the box or that reach more than 10
percent of users.
scenario
Any features that require special customization or use cases to enable,
reaching less than 10 percent of users.
server
Computer that is configured to run software that awaits and fulfills
requests from client processes that run on other computers.
Critical
A security vulnerability that would be rated as
having the highest potential for damage.
Important
A security vulnerability that would be rated as
having significant potential for damage, but less than Critical.
Moderate
A security vulnerability that would be rated as
having moderate potential for damage, but less than Important.
Low
A security vulnerability that would be rated as having
low potential for damage.
targeted information disclosure
Ability to intentionally select (target) desired information.
temporary DoS
A temporary DoS is a situation where the following criteria are met:
The target cannot perform normal operations due to an attack.
The response to an attack is roughly the same magnitude as the size of the attack.
The target returns to the normal level of functionality shortly after the attack is finished. The exact definition of "shortly" should be evaluated for each product.
For example, a server is unresponsive while an attacker is constantly sending a stream of packets across a network, and the server returns to normal a few seconds after the packet stream stops.
temporary DoS with amplification
A temporary DoS with amplification is a situation where the following criteria are met:
The target cannot perform normal operations due to an attack.
The response to an attack is magnitudes beyond the size of the attack.
The target returns to the normal level of functionality after the attack is finished, but it takes some time (perhaps a few minutes).
For example, if you can send a malicious 10-byte packet and cause a 2048k response on the network, you are DoSing the bandwidth by amplifying our attack effort.
permanent DoS
A permanent DoS is one that requires an administrator to start, restart, or reinstall all or parts of the system. Any vulnerability that automatically restarts the system is also a permanent DoS.
Denial of Service (Server) Matrix
Authenticated vs. Anonymous attack | Default/Common vs. Scenario | Temporary DoS vs. Permanent | Rating |
---|---|---|---|
Authenticated | Default/Common | Permanent | Moderate |
Authenticated | Default/Common | Temporary DoS with amplification | Moderate |
Authenticated | Default/Common | Temporary DoS | Low |
Authenticated | Scenario | Permanent | Moderate |
Authenticated | Scenario | Temporary DoS with amplification | Low |
Authenticated | Scenario | Temporary DoS | Low |
Anonymous | Default/Common | Permanent | Important |
Anonymous | Default/Common | Temporary DoS with amplification | Important |
Anonymous | Default/Common | Temporary DoS | Moderate |
Anonymous | Scenario | Permanent | Important |
Anonymous | Scenario | Temporary DoS with amplification | Important |
Anonymous | Scenario | Temporary DoS | Low |
Content Disclaimer
This documentation is not an exhaustive reference on the SDL practices at Microsoft. Additional assurance work may be performed by product teams (but not necessarily documented) at their discretion. As a result, this example should not be considered as the exact process that Microsoft follows to secure all products. This documentation is provided “as-is.” Information and views expressed in this document, including URL and other Internet website references, may change without notice. You bear the risk of using it. This documentation does not provide you with any legal rights to any intellectual property in any Microsoft product. You may copy and use this document for your internal, reference purposes. © 2018 Microsoft Corporation. All rights reserved. Licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported |