Changes

Jump to: navigation, search
no edit summary
===Changed May-3-2011 ===
{{TOC right}}
Security bugs are rated by specifying [sg:<rating>] in the "Whiteboard" field in bugzilla. For example, a bug with a Critical severity rating would be marked as [sg:critical]. You might also notice a [ws:<rating>] in the "Whiteboard" field which is used for our Web Applications. The severity rating system can be found on the [https://wiki.mozilla.org/WebAppSec/Web_App_Severity_Ratings Web Application Security Severity Rating] page.
 
==Severity Ratings ==
;'''sg:critical''': Run attacker code with local user privilege or install malicious software, requiring no user interaction beyond normal browsing.
 
''Examples:''
* Overflows resulting in native code execution
* JavaScript injection into browser chrome
* Launching of arbitrary local application with provided arguments
* Filetype spoofing where executables can masquerade as benign content types
* Installation & execution of plugins/modules with chrome/native privileges, without user consent or via user dialog fatigue
* Any crash where random memory or NULL is executed (the top of the stack is not a function)
* Any crash where random memory is accessed
* Any bug where random memory is written to is critical
* Any bug where random memory is read from and then used in a subsequent memory or jump operation (offset, array, etc) is critical
 
;'''sg:high''': Obtain confidential data from other sites the user is visiting or the local machine, or inject data or code into those sites, requiring no more than normal browsing actions. Indefinite DoS of the user's system, requiring OS reinstallation or extensive cleanup
 
''Examples:''
* Cross-site Scripting (XSS)
* Theft of arbitrary files from local system
* Spoofing of full URL bar or bypass of SSL integrity checks
* Memory read that results in data being written into an inert container (ie string or image) that is subsequently accessible to content
 
;'''sg:moderate''': Disclosure of sensitive information that represents a violation of privacy but by itself does not expose the user or organization to immediate risk. The vulnerability combined with another moderate vulnerability could result in an attack of high or critical severity (aka stepping stone). Indefinite application Denial of Service (DoS) via corruption of state, requiring application re-installation or temporary DoS of the user's system, requiring reboot
 
''Examples:''
* Disclosure of OS username
* Disclosure of browser cache salt
* Disclosure of entire browsing history
* Detection of arbitrary local files
* Launching of arbitrary local application without arguments
* Local storage of passwords in unencrypted form
* Persistent DoS attacks that prevent the user from starting Firefox or another application in the future
 
;'''sg:low''': Minor security vulnerabilities such as leaks or spoofs of non-sensitive information.
 
''Examples:''
* Detection of previous visit to a specific site
* Identification of users by profiling browsing behavior.
* Corruption of chrome dialogs or user input without the ability to spoof arbitrary messages
 
;'''sg:dos''' (Denial of Service): Temporary Denial of Service attacks that users can avoid by not visiting the site again.
<u>Note:</u> It is not necessary to mark each bug with [sg:dos]; adding the hang or crash keyword is sufficient.
 
''Examples:''
* Script that hangs the application for more than 5-10 seconds (without triggering the "slow script" dialog)
* Application crash.
* Infinite loop of dialogs that a user cannot escape.
 
;'''Mitigating Circumstances''':
If there are mitigating circumstances that severely reduce the effectiveness of the exploit, then the exploit could be reduced by one level of severity. Examples of mitigating circumstances include difficulty in reproducing due to very specific timing or load order requirements, complex or unusual set of actions the user would have to take beyond normal browsing behaviors, or unusual software configuration.
 
As a rough guide, to be considered for reduction in severity an exploit should execute successfully less than 10% of the time. If measures can be taken to improve the reliability of the exploit to over 10% (by combining it with other existing bugs or techniques), then it should not be considered to be mitigated.
 
==Additional Security Status Codes==
If a potential security issue has not yet been assigned a severity rating, or a rating is not appropriate, the whiteboard may instead contain one of the following security status codes.
{| style="width: 800px;" class="fullwidth-table"
|-
! style="width:5%" | Code
! style="width:10%"| Description
! style="width:5%" | Examples
|-
| <b>sg:needinfo</b>
|Information contained within the bug is incomplete, and additional information from the original submitter is required to confirm the bug.
|Ambiguous or incomplete bug description.
Inconsistency in reproducing the issue
|-
|<b>sg:want</b>
|New features or improvement ideas related to security
|User interface refinements
Support for new types of authentication
 
Code refactoring / cleanup
|-
|<b>sg:audit</b>
|Bug requires a code audit to investigate potential security problems.
|Look for pattern x in library y
Audit file z for string buffer abuse.
|-
| <b>sg:nse</b>
|Bugs that may not be exploitable security issues but are kept confidential to protect sensitive information.
|Bugs that contain sensitive information about the bug submitter or another user
Bugs that are related to security issues currently unfixed in Mozilla products or other products
|-
|<b>sg:dupe <BugID></b>
|Designates a duplicate of another security bug.
|Copy of an existing bug targeting a different release
Same underlying bug filed independently
|-
|<b>sg:vector-X</b>
|Flaws in software not controlled by (shipped with) Firefox, but that can cause security problems for people browsing with Firefox.
|Bugs in plugins
Bugs in system libraries used by Firefox
|-
|colspan="3" style="text-align:center"|<b>Bugzilla Codes</b>
|-
|<b>sec-review-needed</b>
|A security review is needed for the bug, this could mean a variety of things. If there is no secr:<username> in the whiteboard the item has not been triaged and action is unknown. Once triaged a note will be placed in the bug as to the action to be taken
|
|-
|<b>sec-review-complete</b>
|The security review / actions desired have been completed. This will result in either a link to the notes from security actions or a note from the assigned resource in the bug.
|
|-
|<b>secr:<username></b>
|This designates the assigned security resource that is accountable for actions to be taken on the designated item
|[secr:curtisk] indicates that curtisk is the accountable party for action
|-
|colspan="3" style="text-align:center"|<b>Feature Page Codes</b>
|-
|-
|<b>sec-review-needed</b>
|A security review is needed for the feature, this could mean a variety of things. If there is no <username> in the notes then a full review needs to be scheduled, if a <username> is present than that person will follow-up with the feature team on whatever task is needed.
|
|-
|<b>sec-review-complete</b>
|The security review / actions desired have been completed. This will result in a link to the notes from security actions or a note from the assigned resource.
|
|-
|<b>sec-review-active</b>
| There are active tasks associated with the review that are yet to be completed in order for the review to be seen as completed. These will be captured in the "Action Items" section of the review notes.
|
|-
|<b>sec-review-sched</b>
| Security review tasks have been scheduled, if this is a full security review the date of the scheduled review will be present in the security notes.
|
|-
|<b>sec-review-unnecessary</b>
| After triage it was felt the feature needed no review or security actions.
|
|-
| <b>Security health: <blank></b>
| There are no notes or status is unknown.
| Color: <None>
|-
| <b>Security health: OK</b>
| The tasks are on schedule or completed and are considered non-blocking.
| {{StatusHealthy|status=Color: Green}}
|-
| <b>Security health: Blocked</b>
| Some aspect of the security review has given cause to block the feature from further work or landing. The reasons will be listed in the security notes or linked to a larger review outcome for follow-up.
| {{StatusBlocked|status=Color: Yellow}}
|-
| <b>Security health: At Risk</b>
| Some aspect of the security review may cause the feature to be blocked or put the feature at risk of being off schedule.The reasons will be listed in the security notes or linked to a larger review outcome for follow-up.
| {{StatusAtRisk|status=Color: Red}}
|-
| <b>Security health: Assigned</b>
| Security tasks have been assigned to a member of the team to followup. The name of this resource will be in the security notes.
| {{StatusAssigned|status=Color: Teal}}
|-
|}
===Changed Oct-31-2011 ===
Security bugs are rated by specifying [sg:<rating>] in the "Whiteboard" field in bugzilla. For example, a bug with a Critical severity rating would be marked as [sg:critical]. You might also notice a [ws:<rating>] in the "Whiteboard" field which is used for our Web Applications. The severity rating system can be found on the [https://wiki.mozilla.org/WebAppSec/Web_App_Severity_Ratings Web Application Security Severity Rating] page.
Canmove, confirm, emeritus
2,776
edits

Navigation menu