This site is the archived OWASP Foundation Wiki and is no longer accepting Account Requests.
To view the new OWASP Foundation website, please visit https://owasp.org
Difference between revisions of "Top 10-2017 Release Notes"
m (T.Gigler moved page Top 10 2017-Release Notes to Top 10-2017 Release Notes: Prepare OWASP Top 10-2017 Release) |
(Prepare OWASP Top 10-2017 Release (Content)) |
||
Line 1: | Line 1: | ||
{{Top_10_2013:TopTemplate | {{Top_10_2013:TopTemplate | ||
− | + | |useprev=2017PrevLink | |
− | |||
− | |useprev= | ||
|prev={{Top_10:LanguageFile|text=introduction|year=2017|language=en}} | |prev={{Top_10:LanguageFile|text=introduction|year=2017|language=en}} | ||
+ | |usenext=2017NextLink | ||
+ | |next={{Top_10:LanguageFile|text=applicationSecurityRisks|year=2017|language=en}} | ||
|year=2017 | |year=2017 | ||
|language=en | |language=en | ||
}} | }} | ||
+ | <!--- RN Release Notes ---> | ||
+ | {{Top_10:SubsectionTableBeginTemplate|type=main}}{{Top_10_2010:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|subsection=freetext|position=firstWhole|title=What changed from 2013 to 2017?|year=2017|language=en}} | ||
+ | Change has accelerated over the last four years, and the OWASP Top 10 needed to change. We've completely refactored the OWASP Top 10, revamped the methodology, utilized a new data call process, worked with the community, re-ordered our risks, re-written each risk from the ground up, and added references to frameworks and languages that are now commonly used. | ||
+ | Over the last few years, the fundamental technology and architecture of applications has changed significantly: | ||
+ | * Microservices written in node.js and Spring Boot are replacing traditional monolithic applications. Microservices come with their own security challenges including establishing trust between microservices, containers, secret management, etc. Old code never expected to be accessible from the Internet is now sitting behind an API or RESTful web service to be consumed by Single Page Applications (SPAs) and mobile applications. Architectural assumptions by the code, such as trusted callers, are no longer valid. | ||
+ | * Single page applications, written in JavaScript frameworks such as Angular and React, allow the creation of highly modular feature-rich front ends. Client-side functionality that has traditionally been delivered server-side brings its own security challenges. | ||
+ | * JavaScript is now the primary language of the web with node.js running server side and modern web frameworks such as Bootstrap, Electron, Angular, and React running on the client. | ||
− | + | ===New issues, supported by data=== | |
− | + | * <b><u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A4-{{Top_10_2010:ByTheNumbers|4|language=en|year=2017}}|A4:2017-{{Top_10_2010:ByTheNumbers|4|language=en|year=2017}}]]</u></b> is a new category primarily supported by source code analysis security testing tools (<u>[[Source_Code_Analysis_Tools|SAST]]</u>) data sets. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | </ | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | ===New issues, supported by the community=== | ||
+ | We asked the community to provide insight into two forward looking weakness categories. After over 500 peer submissions, and removing issues that were already supported by data (such as Sensitive Data Exposure and XXE), the two new issues are: | ||
+ | * <b><u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A8-{{Top_10_2010:ByTheNumbers|8|language=en|year=2017}}|A8:2017-{{Top_10_2010:ByTheNumbers|8|language=en|year=2017}}]]</u></b>, which permits remote code execution or sensitive object manipulation on affected platforms. | ||
+ | * <b><u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A10-{{Top_10_2010:ByTheNumbers|10|language=en|year=2017}}|A10:2107-{{Top_10_2010:ByTheNumbers|10|language=en|year=2017}}]]</u></b>, the lack of which can prevent or significantly delay malicious activity and breach detection, incident response, and digital forensics. | ||
+ | |||
+ | ===Merged or retired, but not forgotten=== | ||
+ | * <b><u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A4-{{Top_10_2010:ByTheNumbers|4|language=en|year=2013}}|A4: {{Top_10_2010:ByTheNumbers|4|language=en|year=2013}}]]</u></b> and <b><u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A7-{{Top_10_2010:ByTheNumbers|7|language=en|year=2013}}|A7: {{Top_10_2010:ByTheNumbers|7|language=en|year=2013}}]]</u></b> merged into <b><u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A5-{{Top_10_2010:ByTheNumbers|5|language=en|year=2017}}|A5:2017-{{Top_10_2010:ByTheNumbers|5|language=en|year=2017}}]]</u></b>. | ||
+ | * <b><u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A8-{{Top_10_2010:ByTheNumbers|8|language=en|year=2013}}|A8: {{Top_10_2010:ByTheNumbers|8|language=en|year=2013}}]]</u></b>, as many frameworks include <u>[[Cross-Site_Request_Forgery_(CSRF)|CSRF defenses]]</u>, it was found in only 5% of applications. | ||
+ | * <b><u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A10-{{Top_10_2010:ByTheNumbers|10|language=en|year=2013}}|A10: {{Top_10_2010:ByTheNumbers|10|language=en|year=2013}}]]</u></b>, while found in approximately in 8% of applications, it was edged out overall by XXE. | ||
{{Top_10:SubsectionTableEndTemplate}} | {{Top_10:SubsectionTableEndTemplate}} | ||
Line 51: | Line 35: | ||
|- style="background-color: #FFFFFF;" | |- style="background-color: #FFFFFF;" | ||
| <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A1-{{Top_10_2010:ByTheNumbers|1|language=en|year=2013}}|A1-{{Top_10_2010:ByTheNumbers|1|language=en|year=2013}}]]</u> | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A1-{{Top_10_2010:ByTheNumbers|1|language=en|year=2013}}|A1-{{Top_10_2010:ByTheNumbers|1|language=en|year=2013}}]]</u> | ||
− | | <u>[[{{Top_10:LanguageFile|text= | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A1-{{Top_10_2010:ByTheNumbers|1|language=en|year=2017}}|A1:2017-{{Top_10_2010:ByTheNumbers|1|language=en|year=2017}}]]</u> |
|- style="background-color: #FFFFFF;" | |- style="background-color: #FFFFFF;" | ||
| <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A2-{{Top_10_2010:ByTheNumbers|2|language=en|year=2013}}|A2-{{Top_10_2010:ByTheNumbers|2|language=en|year=2013}}]]</u> | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A2-{{Top_10_2010:ByTheNumbers|2|language=en|year=2013}}|A2-{{Top_10_2010:ByTheNumbers|2|language=en|year=2013}}]]</u> | ||
− | | <u>[[{{Top_10:LanguageFile|text= | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A2-{{Top_10_2010:ByTheNumbers|2|language=en|year=2017}}|A2:2017-{{Top_10_2010:ByTheNumbers|2|language=en|year=2017}}]]</u> |
|- style="background-color: #FFFFFF;" | |- style="background-color: #FFFFFF;" | ||
| <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A3-{{Top_10_2010:ByTheNumbers|3|language=en|year=2013}}|A3-{{Top_10_2010:ByTheNumbers|3|language=en|year=2013}}]]</u> | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A3-{{Top_10_2010:ByTheNumbers|3|language=en|year=2013}}|A3-{{Top_10_2010:ByTheNumbers|3|language=en|year=2013}}]]</u> | ||
− | | <u>[[{{Top_10:LanguageFile|text= | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A3-{{Top_10_2010:ByTheNumbers|3|language=en|year=2017}}|A3:2017-{{Top_10_2010:ByTheNumbers|3|language=en|year=2017}}]]</u> |
|- style="background-color: #F2F1FF;" | |- style="background-color: #F2F1FF;" | ||
| <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A4-{{Top_10_2010:ByTheNumbers|4|language=en|year=2013}}|A4-{{Top_10_2010:ByTheNumbers|4|language=en|year=2013}}]]</u> - Merged with A7 | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A4-{{Top_10_2010:ByTheNumbers|4|language=en|year=2013}}|A4-{{Top_10_2010:ByTheNumbers|4|language=en|year=2013}}]]</u> - Merged with A7 | ||
− | | <u>[[{{Top_10:LanguageFile|text= | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A4-{{Top_10_2010:ByTheNumbers|4|language=en|year=2017}}|A4:2017-{{Top_10_2010:ByTheNumbers|4|language=en|year=2017}}]]</u> [NEW] |
|- style="background-color: #FFFFFF;" | |- style="background-color: #FFFFFF;" | ||
| <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A5-{{Top_10_2010:ByTheNumbers|5|language=en|year=2013}}|A5-{{Top_10_2010:ByTheNumbers|5|language=en|year=2013}}]]</u> | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A5-{{Top_10_2010:ByTheNumbers|5|language=en|year=2013}}|A5-{{Top_10_2010:ByTheNumbers|5|language=en|year=2013}}]]</u> | ||
− | | <u>[[{{Top_10:LanguageFile|text= | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A5-{{Top_10_2010:ByTheNumbers|5|language=en|year=2017}}|A5:2017-{{Top_10_2010:ByTheNumbers|5|language=en|year=2017}}]]</u> [Merged] |
|- style="background-color: #FFFFFF;" | |- style="background-color: #FFFFFF;" | ||
| <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A6-{{Top_10_2010:ByTheNumbers|6|language=en|year=2013}}|A6-{{Top_10_2010:ByTheNumbers|6|language=en|year=2013}}]]</u> | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A6-{{Top_10_2010:ByTheNumbers|6|language=en|year=2013}}|A6-{{Top_10_2010:ByTheNumbers|6|language=en|year=2013}}]]</u> | ||
− | | <u>[[{{Top_10:LanguageFile|text= | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A6-{{Top_10_2010:ByTheNumbers|6|language=en|year=2017}}|A6:2017-{{Top_10_2010:ByTheNumbers|6|language=en|year=2017}}]]</u> |
+ | |- style="background-color: #FFFFFF;" | ||
+ | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A7-{{Top_10_2010:ByTheNumbers|7|language=en|year=2013}}|A7-{{Top_10_2010:ByTheNumbers|7|language=en|year=2013}}]]</u> - Merged with A4 | ||
+ | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A7-{{Top_10_2010:ByTheNumbers|7|language=en|year=2017}}|A7:2017-{{Top_10_2010:ByTheNumbers|7|language=en|year=2017}}]]</u> | ||
|- style="background-color: #F2F1FF;" | |- style="background-color: #F2F1FF;" | ||
− | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A8-{{Top_10_2010:ByTheNumbers|8|language=en|year=2013}}|A8-{{Top_10_2010:ByTheNumbers|8|language=en|year=2013}}]]</u> [Dropped] | |
− | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A8-{{Top_10_2010:ByTheNumbers|8|language=en|year=2017}}|A8:2017-{{Top_10_2010:ByTheNumbers|8|language=en|year=2017}}]]</u> [NEW, Community] | |
− | |||
− | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A8-{{Top_10_2010:ByTheNumbers|8|language=en|year=2013}}|A8-{{Top_10_2010:ByTheNumbers|8|language=en|year=2013}}]]</u> | ||
− | | <u>[[{{Top_10:LanguageFile|text= | ||
|- style="background-color: #FFFFFF;" | |- style="background-color: #FFFFFF;" | ||
| <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A9-{{Top_10_2010:ByTheNumbers|9|language=en|year=2013}}|A9-{{Top_10_2010:ByTheNumbers|9|language=en|year=2013}}]]</u> | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A9-{{Top_10_2010:ByTheNumbers|9|language=en|year=2013}}|A9-{{Top_10_2010:ByTheNumbers|9|language=en|year=2013}}]]</u> | ||
− | | <u>[[{{Top_10:LanguageFile|text= | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A9-{{Top_10_2010:ByTheNumbers|9|language=en|year=2017}}|A9:2017-{{Top_10_2010:ByTheNumbers|9|language=en|year=2017}}]]</u> |
|- style="background-color: #F2F1FF;" | |- style="background-color: #F2F1FF;" | ||
− | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A10-{{Top_10_2010:ByTheNumbers|10|language=en|year=2013}}|A10-{{Top_10_2010:ByTheNumbers|10|language=en|year=2013}}]]</u> | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10|year=2013|language=en}}-A10-{{Top_10_2010:ByTheNumbers|10|language=en|year=2013}}|A10-{{Top_10_2010:ByTheNumbers|10|language=en|year=2013}}]]</u> [Dropped] |
− | | <u>[[{{Top_10:LanguageFile|text= | + | | <u>[[{{Top_10:LanguageFile|text=documentRootTop10New|year=2017|language=en}}_A10-{{Top_10_2010:ByTheNumbers|10|language=en|year=2017}}|A10:2017-{{Top_10_2010:ByTheNumbers|10|language=en|year=2017}}]]</u> [NEW, Community] |
|} | |} | ||
</center> | </center> | ||
− | {{Top_10_2013: | + | |
− | + | {{Top_10_2013:BottomAdvancedTemplate | |
− | + | |type= | |
− | + | |useprev=2017PrevLink | |
− | + | |prev={{Top_10:LanguageFile|text=introduction|year=2017|language=en}} | |
− | + | |usenext=2017NextLink | |
− | + | |next={{Top_10:LanguageFile|text=applicationSecurityRisks|year=2017|language=en}} | |
+ | |year=2017 | ||
+ | |language=en | ||
}} | }} | ||
+ | |||
+ | <!-- [[Category:OWASP Top Ten Project]] --> |
Revision as of 22:40, 16 December 2017
What changed from 2013 to 2017?
Change has accelerated over the last four years, and the OWASP Top 10 needed to change. We've completely refactored the OWASP Top 10, revamped the methodology, utilized a new data call process, worked with the community, re-ordered our risks, re-written each risk from the ground up, and added references to frameworks and languages that are now commonly used. Over the last few years, the fundamental technology and architecture of applications has changed significantly:
New issues, supported by data
New issues, supported by the communityWe asked the community to provide insight into two forward looking weakness categories. After over 500 peer submissions, and removing issues that were already supported by data (such as Sensitive Data Exposure and XXE), the two new issues are:
Merged or retired, but not forgotten
|
OWASP Top 10 - 2013 (Previous Version) | OWASP Top 10 - 2017 (Current Version) |
---|---|
A1-Injection | A1:2017-Injection |
A2-Broken Authentication and Session Management | A2:2017-Broken Authentication |
A3-Cross-Site Scripting (XSS) | A3:2017-Sensitive Data Exposure |
A4-Insecure Direct Object References - Merged with A7 | A4:2017-XML External Entities (XXE) [NEW] |
A5-Security Misconfiguration | A5:2017-Broken Access Control [Merged] |
A6-Sensitive Data Exposure | A6:2017-Security Misconfiguration |
A7-Missing Function Level Access Control - Merged with A4 | A7:2017-Cross-Site Scripting (XSS) |
A8-Cross-Site Request Forgery (CSRF) [Dropped] | A8:2017-Insecure Deserialization [NEW, Community] |
A9-Using Components with Known Vulnerabilities | A9:2017-Using Components with Known Vulnerabilities |
A10-Unvalidated Redirects and Forwards [Dropped] | A10:2017-Insufficient Logging&Monitoring [NEW, Community] |