Skip to content

Commit dbdebca

Browse files
authored
Merge pull request #271 from andreashappe/patch-1
Update to new OWASP Top 10 Proactive Controls
2 parents 264ef57 + 38e243f commit dbdebca

16 files changed

+71
-86
lines changed

.wordlist.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -506,4 +506,5 @@ WHATWG
506506
OpenCRE
507507
opencre
508508
br
509-
509+
Andreas
510+
Happe

draft/04-foundations/03-security-principles.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
title: Principles of Security
44
layout: col-document
55
tags: OWASP Developer Guide
6-
contributors: Jon Gadsden, Johan Sydseter
6+
contributors: Jon Gadsden, Johan Sydseter, Andreas Happe
77
document: OWASP Developer Guide
88
order: 403
99
permalink: /draft/foundations/security_principles/
@@ -187,11 +187,12 @@ and are therefore likely to be even more secure.
187187
* [Authentication Cheat Sheet][csauthn]
188188
* [Authorization Cheat Sheet][csauthz]
189189
* [Secure Product Design Cheat Sheet][spdcs]
190+
* OWASP Top 10 Proactive Controls
191+
* [C5: Secure by Default Configurations](https://top10proactive.owasp.org/the-top-10/c5-secure-by-default/)
190192
* Other
191193
* [Compartmentalization (information security)](https://en.wikipedia.org/wiki/Compartmentalization_(information_security)),
192194
(Wikipedia)
193195
* [Least Functionality](https://csf.tools/reference/nist-sp-800-53/r5/cm/cm-7/), (NIST)
194-
* [Secure by Default](https://en.wikipedia.org/wiki/Secure_by_default), (Wikipedia)
195196
* [Security by Design](https://pubs.opengroup.org/security/o-esa/#_Toc291061712), (Open Group)
196197
* [Usability and Manageability](https://pubs.opengroup.org/security/o-esa/#_Toc291061714), (Open Group)
197198

draft/05-requirements/00-toc.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
title: Requirements
44
layout: col-document
55
tags: OWASP Developer Guide
6-
contributors: Jon Gadsden
6+
contributors: Jon Gadsden, Andreas Happe
77
document: OWASP Developer Guide
88
order:
99
permalink:
@@ -16,7 +16,7 @@ permalink:
1616

1717
## 3. Requirements
1818

19-
Referring to the OWASP [Top Ten Proactive Controls][control1], security requirements are statements of
19+
Security requirements are statements of
2020
security functionality that ensure the different security properties of a software application are being satisfied.
2121
Security requirements are derived from industry standards, applicable laws, and a history of past vulnerabilities.
2222
Security requirements define new features or additions to existing features to solve a specific security problem
@@ -50,7 +50,6 @@ Sections:
5050

5151
The OWASP Developer Guide is a community effort; if there is something that needs changing then [submit an issue][issue0500].
5252

53-
[control1]: https://owasp.org/www-project-proactive-controls/v3/en/c1-security-requirements
5453
[issue0500]: https://github.com/OWASP/www-project-developer-guide/issues/new?labels=enhancement&template=request.md&title=Update:%2005-requirements/00-toc
5554
[samm]: https://owaspsamm.org/about/
5655
[sammd]: https://owaspsamm.org/model/design/

draft/05-requirements/01-requirements.md

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
title: Requirements in Practice
44
layout: col-document
55
tags: OWASP Developer Guide
6-
contributors: Jon Gadsden
6+
contributors: Jon Gadsden, Andreas Happe
77
document: OWASP Developer Guide
88
order: 501
99
permalink: /draft/requirements/requirements_in_practice/
@@ -37,11 +37,6 @@ but there is no wrong time to consider these security requirements and add new o
3737

3838
#### Software requirements
3939

40-
The OWASP [Top Ten Proactive Controls][proactive10] describes the most important categories of controls
41-
that architects and developers should include in every project.
42-
At the head of the list of controls is [C1: Define Security Requirements][control1]
43-
and this reflects the importance of software security requirements: without them the development will not be secure.
44-
4540
Defining security requirements can be daunting at times,
4641
for example they may reference cryptographic techniques that can be misapplied,
4742
but it is perfectly acceptable to state these requirements in everyday language.
@@ -120,7 +115,6 @@ then [submit an issue][issue0501] or [edit on GitHub][edit0501].
120115

121116
[asvs]: https://owasp.org/www-project-application-security-verification-standard/
122117
[csabuse]: https://cheatsheetseries.owasp.org/cheatsheets/Abuse_Case_Cheat_Sheet
123-
[control1]: https://owasp.org/www-project-proactive-controls/v3/en/c1-security-requirements
124118
[issue0501]: https://github.com/OWASP/www-project-developer-guide/issues/new?labels=enhancement&template=request.md&title=Update:%2005-requirements/01-requirements
125119
[mas]: https://mas.owasp.org/
126120
[edit0501]: https://github.com/OWASP/www-project-developer-guide/blob/main/draft/05-requirements/01-requirements.md

draft/05-requirements/toc.md

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
title: Requirements
44
layout: col-document
55
tags: OWASP Developer Guide
6-
contributors: Jon Gadsden
6+
contributors: Jon Gadsden, Andreas Happe
77
document: OWASP Developer Guide
88
order: 500
99
permalink: /draft/requirements/
@@ -26,12 +26,6 @@ permalink: /draft/requirements/
2626

2727
## 3. Requirements
2828

29-
Referring to the OWASP [Top Ten Proactive Controls][control1], security requirements are statements of
30-
security functionality that ensure the different security properties of a software application are being satisfied.
31-
Security requirements are derived from industry standards, applicable laws, and a history of past vulnerabilities.
32-
Security requirements define new features or additions to existing features to solve a specific security problem
33-
or eliminate potential vulnerabilities.
34-
3529
Security requirements also provide a foundation of vetted security functionality for an application.
3630
Instead of creating a custom approach to security for every application,
3731
standard security requirements allow developers to reuse the definition of security controls and best practices;
@@ -61,7 +55,6 @@ Sections:
6155
The OWASP Developer Guide is a community effort; if there is something that needs changing
6256
then [submit an issue][issue0500] or [edit on GitHub][edit0500].
6357

64-
[control1]: https://owasp.org/www-project-proactive-controls/v3/en/c1-security-requirements
6558
[edit0500]: https://github.com/OWASP/www-project-developer-guide/blob/main/draft/05-requirements/toc.md
6659
[issue0500]: https://github.com/OWASP/www-project-developer-guide/issues/new?labels=enhancement&template=request.md&title=Update:%2005-requirements/00-toc
6760
[samm]: https://owaspsamm.org/about/

draft/06-design/02-web-app-checklist/01-define-security-requirements.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
title: Define Security Requirements Checklist
44
layout: col-document
55
tags: OWASP Developer Guide
6-
contributors: Jon Gadsden
6+
contributors: Jon Gadsden, Andreas Happe
77
document: OWASP Developer Guide
88
order: 621
99
permalink: /draft/design/web_app_checklist/define_security_requirements/
@@ -17,7 +17,7 @@ permalink: /draft/design/web_app_checklist/define_security_requirements/
1717
A security requirement is a statement of security functionality that ensures software security is being satisfied.
1818
Security requirements are derived from industry standards, applicable laws, and a history of past vulnerabilities.
1919

20-
Refer to proactive control [C1: Define Security Requirements][control1] and its [cheatsheets][csproactive-c1]
20+
Refer to proactive control [C4: Address Security form the Start][control4] and its [cheatsheets][csproactive-c1]
2121
for more context from the OWASP Top 10 Proactive Controls project,
2222
and use the lists below as suggestions for a checklist that has been tailored for the individual project.
2323

@@ -75,10 +75,10 @@ then [submit an issue][issue060201] or [edit on GitHub][edit060201].
7575

7676
[asvs]: https://owasp.org/www-project-application-security-verification-standard/
7777
[csproactive-c1]: https://cheatsheetseries.owasp.org/IndexProactiveControls.html#c1-define-security-requirements
78-
[control1]: https://owasp.org/www-project-proactive-controls/v3/en/c1-security-requirements
78+
[control4]: https://top10proactive.owasp.org/the-top-10/c4-secure-architecture/
7979
[edit060201]: https://github.com/OWASP/www-project-developer-guide/blob/main/draft/06-design/02-web-app-checklist/01-define-security-requirements.md
8080
[issue060201]: https://github.com/OWASP/www-project-developer-guide/issues/new?labels=enhancement&template=request.md&title=Update:%2006-design/02-web-app-checklist/01-define-security-requirements
8181
[mas]: https://mas.owasp.org/
82-
[proactive10]: https://owasp.org/www-project-proactive-controls/
82+
[proactive10]: https://top10proactive.owasp.org/
8383

8484
\newpage

draft/06-design/02-web-app-checklist/02-frameworks-libraries.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
title: Leverage Security Frameworks and Libraries Checklist
44
layout: col-document
55
tags: OWASP Developer Guide
6-
contributors: Jon Gadsden
6+
contributors: Jon Gadsden, Andreas Happe
77
document: OWASP Developer Guide
88
order: 622
99
permalink: /draft/design/web_app_checklist/frameworks_libraries/
@@ -17,7 +17,7 @@ permalink: /draft/design/web_app_checklist/frameworks_libraries/
1717
Secure coding libraries and software frameworks with embedded security help software developers guard against
1818
security-related design and implementation flaws.
1919

20-
Refer to proactive control [C2: Leverage Security Frameworks and Libraries][control2]
20+
Refer to proactive control [C4: Address Security from the Start][control4]
2121
and its [cheatsheets][csproactive-c2] for more context from the OWASP Top 10 Proactive Controls project.
2222

2323
For technology specific checklists refer to the appropriate OWASP Cheat Sheets:
@@ -99,10 +99,10 @@ then [submit an issue][issue060202] or [edit on GitHub][edit060202].
9999
[cswebservice]: https://cheatsheetseries.owasp.org/cheatsheets/Web_Service_Security_Cheat_Sheet
100100
[csxml]: https://cheatsheetseries.owasp.org/cheatsheets/XML_Security_Cheat_Sheet
101101
[csproactive-c2]: https://cheatsheetseries.owasp.org/IndexProactiveControls.html#c2-leverage-security-frameworks-and-libraries
102-
[control2]: https://owasp.org/www-project-proactive-controls/v3/en/c2-leverage-security-frameworks-libraries
102+
[control4]: https://top10proactive.owasp.org/the-top-10/c4-secure-architecture/
103103
[dependency]: https://owasp.org/www-project-dependency-check/
104104
[edit060202]: https://github.com/OWASP/www-project-developer-guide/blob/main/draft/06-design/02-web-app-checklist/02-frameworks-libraries.md
105105
[issue060202]: https://github.com/OWASP/www-project-developer-guide/issues/new?labels=enhancement&template=request.md&title=Update:%2006-design/02-web-app-checklist/02-frameworks-libraries
106-
[proactive10]: https://owasp.org/www-project-proactive-controls/
106+
[proactive10]: https://top10proactive.owasp.org/
107107

108108
\newpage

draft/06-design/02-web-app-checklist/03-secure-database-access.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
title: Secure Database Access Checklist
44
layout: col-document
55
tags: OWASP Developer Guide
6-
contributors: Jon Gadsden
6+
contributors: Jon Gadsden, Andreas Happe
77
document: OWASP Developer Guide
88
order: 623
99
permalink: /draft/design/web_app_checklist/secure_database_access/
@@ -16,7 +16,7 @@ permalink: /draft/design/web_app_checklist/secure_database_access/
1616

1717
Ensure that access to all data stores is secure, including both relational databases and NoSQL databases.
1818

19-
Refer to proactive control [C3: Secure Database Access][control3] and its [cheatsheets][csproactive-c3]
19+
Refer to proactive control [C3: Validate all Input & Handle Exceptions][control3] and its [cheatsheets][csproactive-c3]
2020
for more context from the OWASP Top 10 Proactive Controls project,
2121
and use the list below as suggestions for a checklist that has been tailored for the individual project.
2222

@@ -58,11 +58,11 @@ The OWASP Developer Guide is a community effort; if there is something that need
5858
then [submit an issue][issue060203] or [edit on GitHub][edit060203].
5959

6060
[csproactive-c3]: https://cheatsheetseries.owasp.org/IndexProactiveControls.html#c3-secure-database-access
61-
[control3]: https://owasp.org/www-project-proactive-controls/v3/en/c3-secure-database
61+
[control3]: https://top10proactive.owasp.org/the-top-10/c3-validate-input-and-handle-exceptions/
6262
[csdb]: https://cheatsheetseries.owasp.org/cheatsheets/Database_Security_Cheat_Sheet
6363
[csquery]: https://cheatsheetseries.owasp.org/cheatsheets/Query_Parameterization_Cheat_Sheet
6464
[edit060203]: https://github.com/OWASP/www-project-developer-guide/blob/main/draft/06-design/02-web-app-checklist/03-secure-database-access.md
6565
[issue060203]: https://github.com/OWASP/www-project-developer-guide/issues/new?labels=enhancement&template=request.md&title=Update:%2006-design/02-web-app-checklist/03-secure-database-access
66-
[proactive10]: https://owasp.org/www-project-proactive-controls/
66+
[proactive10]: https://top10proactive.owasp.org/
6767

6868
\newpage

draft/06-design/02-web-app-checklist/04-encode-escape-data.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
title: Encode and Escape Data Checklist
44
layout: col-document
55
tags: OWASP Developer Guide
6-
contributors: Jon Gadsden
6+
contributors: Jon Gadsden, Andreas Happe
77
document: OWASP Developer Guide
88
order: 624
99
permalink: /draft/design/web_app_checklist/encode_escape_data/
@@ -21,7 +21,7 @@ The target system may be another software component or it may be reflected back
2121
such as operating system commands,
2222
so encoding and escaping output data helps to provide defense in depth for the system as a whole.
2323

24-
Refer to proactive control [C4: Encode and Escape Data][control4] and its [cheatsheets][csproactive-c4]
24+
Refer to proactive control [C3: Validate all Input & Handle Exceptions][control3] and its [cheatsheets][csproactive-c4]
2525
for more context from the OWASP Top 10 Proactive Controls project,
2626
and use the list below as suggestions for a checklist that has been tailored for the individual project.
2727

@@ -55,11 +55,11 @@ The OWASP Developer Guide is a community effort; if there is something that need
5555
then [submit an issue][issue060204] or [edit on GitHub][edit060204].
5656

5757
[csproactive-c4]: https://cheatsheetseries.owasp.org/IndexProactiveControls.html#c4-encode-and-escape-data
58-
[control4]: https://owasp.org/www-project-proactive-controls/v3/en/c4-encode-escape-data
58+
[control3]: https://top10proactive.owasp.org/the-top-10/c3-validate-input-and-handle-exceptions/
5959
[edit060204]: https://github.com/OWASP/www-project-developer-guide/blob/main/draft/06-design/02-web-app-checklist/04-encode-escape-data.md
6060
[encoder]: https://www.owasp.org/index.php/OWASP_Java_Encoder_Project
6161
[ipcs]: https://cheatsheetseries.owasp.org/cheatsheets/Injection_Prevention_Cheat_Sheet
6262
[issue060204]: https://github.com/OWASP/www-project-developer-guide/issues/new?labels=enhancement&template=request.md&title=Update:%2006-design/02-web-app-checklist/04-encode-escape-data
63-
[proactive10]: https://owasp.org/www-project-proactive-controls/
63+
[proactive10]: https://top10proactive.owasp.org/
6464

6565
\newpage

draft/06-design/02-web-app-checklist/05-validate-inputs.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
title: Validate All Inputs Checklist
44
layout: col-document
55
tags: OWASP Developer Guide
6-
contributors: Jon Gadsden
6+
contributors: Jon Gadsden, Andreas Happe
77
document: OWASP Developer Guide
88
order: 625
99
permalink: /draft/design/web_app_checklist/validate_inputs/
@@ -20,7 +20,7 @@ may enter a software application or system component.
2020
It is vital that input validation is performed to provide the starting point for a secure application or system.
2121
Without input validation the software application/system will continue to be vulnerable to new and varied attacks.
2222

23-
Refer to proactive control [C5: Validate All Inputs][control5] and its [cheatsheets][csproactive-c5]
23+
Refer to proactive control [C3: Validate All Input & Handle Exceptions][control3] and its [cheatsheets][csproactive-c5]
2424
for more context from the OWASP Top 10 Proactive Controls project,
2525
and use the list below as suggestions for a checklist that has been tailored for the individual project.
2626

@@ -70,11 +70,11 @@ then [submit an issue][issue060205] or [edit on GitHub][edit060205].
7070
[^SCP1]: Secure Coding Practices checklist
7171

7272
[csproactive-c5]: https://cheatsheetseries.owasp.org/IndexProactiveControls.html#c5-validate-all-inputs
73-
[control5]: https://owasp.org/www-project-proactive-controls/v3/en/c5-validate-inputs
73+
[control3]: https://top10proactive.owasp.org/the-top-10/c3-validate-input-and-handle-exceptions/
7474
[ivcs]: https://cheatsheetseries.owasp.org/cheatsheets/Input_Validation_Cheat_Sheet
7575
[edit060205]: https://github.com/OWASP/www-project-developer-guide/blob/main/draft/06-design/02-web-app-checklist/05-validate-inputs.md
7676
[issue060205]: https://github.com/OWASP/www-project-developer-guide/issues/new?labels=enhancement&template=request.md&title=Update:%2006-design/02-web-app-checklist/05-validate-inputs
77-
[proactive10]: https://owasp.org/www-project-proactive-controls/
77+
[proactive10]: https://top10proactive.owasp.org
7878
[sanitizer]: https://www.owasp.org/index.php/OWASP_Java_HTML_Sanitizer
7979

8080
\newpage

0 commit comments

Comments
 (0)