Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
660da5c
feat: extend website
Naramsim Sep 9, 2021
15191ea
chore: add deploy action
Naramsim Sep 9, 2021
fc40a6b
chore: use python 3
Naramsim Sep 9, 2021
adb5dc2
fix: visibility of Axx
Naramsim Sep 9, 2021
bf4ab13
Merge remote-tracking branch 'upstream/master'
Naramsim Sep 9, 2021
56727cb
chore: check links
Naramsim Sep 13, 2021
eda25cc
fix: dead links
Naramsim Sep 13, 2021
d7cebda
chore: remove gitignored file
Naramsim Sep 13, 2021
126fa2c
chore: change name
Naramsim Sep 16, 2021
d128f46
Merge branch 'master' into master
Naramsim Sep 23, 2021
314ab1c
Merge remote-tracking branch 'upstream/master'. Fix conflicts
Naramsim Sep 29, 2021
d989eed
fix: include abbrevieation at the end of file
Naramsim Sep 29, 2021
013782e
fix: remove duplicate key
Naramsim Sep 29, 2021
5796512
Merge branch 'master' into master
Naramsim Oct 5, 2021
b2f2d3d
Update test.yml
Naramsim Oct 5, 2021
76ed1d6
Merge branch 'master' into master
Naramsim Oct 11, 2021
f776d3b
Merge remote-tracking branch 'upstream/master'
Naramsim Nov 9, 2021
3c8d20b
Merge branch 'master' into master
Naramsim Nov 19, 2021
21152bb
Merge branch 'master' into master
Naramsim Apr 12, 2022
e772583
feat: remove notice
Naramsim Apr 19, 2022
9fcc365
chore: allow venvs
Naramsim Apr 19, 2022
a950e2a
chore: fix deps
Naramsim Apr 19, 2022
a9cc677
docs: update installation/test docs
Naramsim Apr 19, 2022
50e659c
Merge branch 'master' into master
Naramsim Jun 20, 2023
14f68ed
Merge remote-tracking branch 'upstream/master'
Naramsim Jul 13, 2025
424a966
fix deps
Naramsim Jul 13, 2025
cfc6e48
update to new i18n/mkdocs
Naramsim Jul 13, 2025
ce90c21
refactor: move makefile
Naramsim Jul 14, 2025
1cec092
refactor: update actions/use official deploy action
Naramsim Jul 14, 2025
fd901e5
fix: use right folder
Naramsim Jul 14, 2025
a59af41
fix: use 2021 folder
Naramsim Jul 14, 2025
8307a68
fix: add dep
Naramsim Jul 14, 2025
0ea500a
fix: add permissions
Naramsim Jul 14, 2025
c842767
fix: add upload artifact step
Naramsim Jul 14, 2025
6acb988
fix: path
Naramsim Jul 14, 2025
ad513a9
trigger build
Naramsim Jul 14, 2025
767be19
refactor: remove unused requirements.txt
Naramsim Jul 14, 2025
e7a8518
docs: update readme/add removed paragraph
Naramsim Jul 14, 2025
98db440
feat: add automatic theme
Naramsim Jul 14, 2025
98a2bb0
refactor: remove unreconized options
Naramsim Jul 14, 2025
85b3fba
feat: show only search results for current language
Naramsim Jul 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Build and Deploy 2021
on:
push:
branches:
- 'master'
- 'main'
jobs:
build-and-deploy:
permissions:
pages: write
id-token: write
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- uses: actions/setup-python@v5
with:
python-version: '3.13'
- name: Checkout
uses: actions/checkout@v4
- name: Install and Build
run: |
cd 2021
make install-python-requirements
make generate-site
- name: Upload static files as artifact
uses: actions/upload-pages-artifact@v3
with:
path: 2021/site/
- name: Deploy
uses: actions/deploy-pages@v4
35 changes: 35 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Test 2021
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-python@v5
with:
python-version: '3.13'
- name: Checkout
uses: actions/checkout@v4
- name: Install and Build
run: |
cd 2021
make install-python-requirements
make install-python-requirements-test
make generate-site
# check-links:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/setup-python@v5
# with:
# python-version: '3.13'
# - name: Checkout
# uses: actions/checkout@v4
# - name: Install and Build
# run: |
# cd 2021
# make install-python-requirements
# make install-python-requirements-test
# make generate-site
# - name: Links validation
# run: |
# cd 2021
# make check-links
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -90,4 +90,6 @@ lib/

# Pipenv
Pipfile
2021/site/0x00-notice/index.html

env
venv
20 changes: 20 additions & 0 deletions 2021/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
.PHONY: help
.SILENT:

help:
@grep -E '^[a-zA-Z_-]+:.*?# .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?# "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'

install-python-requirements: # Install Python 3 required libraries
python -m pip install -r requirements.txt

install-python-requirements-test: # Install Python 3 required libraries
python -m pip install -r requirements-test.txt

generate-site: # Builds ./2021
mkdocs build

serve: # Build and hot-reloads ./2021
mkdocs serve

check-links: # Checks for dead links
python -m linkcheckmd
41 changes: 17 additions & 24 deletions 2021/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,45 +4,38 @@ Final Release

## Building a local copy

- Install Python 3 for your platform
- From the main folder, ...
Make sure Python 3 is installed.

```bash
make install-python-requirements
```
### Prepare a local virtual environment to manage the versions of the required Python libraries for mkdocs
# Build and activate virtual environment
python3 -m venv ./venv
source .venv/bin/activate

```bash$
# build and activate venv
cd 2021
python3 -m venv .
source ./bin/activate
# install all required library versions
# Install dependencies
pip install -r requirements.txt
# optionally verify if OWASP OSIB is in your pip list
pip list | grep osib
```

You might need to use ```--break-system-packages``` with pip if it gives you an error.

This installs all requirements including the (OSIB Macro)[https://github.com/OWASP/OSIB]
# Build HTML
mkdocs build
# Browse /2021/site
```

### Test it locally

You should test your changes locally:
Alternatively you can spin up a hot-reloading server:

```bash
cd 2021
mkdocs serve
```sh
make serve
```

Once you are happy, check in your changes as a branch / PR and let someone on the main team know. We'll review your changes, and merge and redeploy.

### Redeploy to gh-pages
### Deploy to gh-pages

This only works if you have commit privileges on master and Git is correctly setup in your environment.
When the `master` branch is pushed, a Github Action will take care of everything and publish the website as a Github Page.

```bash
Alternatively `mkdocs` can be used to publish the website. This only works if you have commit privileges on master and Git is correctly setup in your environment.

```sh
cd 2021
mkdocs gh-deploy
```
Expand Down
Binary file added 2021/docs/assets/OWASP-logo-tm.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
60 changes: 60 additions & 0 deletions 2021/docs/assets/OWASP-logo.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions 2021/docs/en/0x01_2021-about-owasp.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,5 @@ Come join us!
![license](assets/license.png)

Copyright © 2003-2025 The OWASP® Foundation, Inc. This document is released under the Creative Commons Attribution Share-Alike 4.0 license. For any reuse or distribution, you must make it clear to others the license terms of this work.

--8<-- "includes/abbreviations.md"
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# How to start an AppSec Program with the OWASP Top 10
# How to start an AppSec Program with the OWASP Top 10

Previously, the OWASP Top 10 was never designed to be the basis for an
AppSec program. However, it's essential to start somewhere for many
Expand Down Expand Up @@ -113,3 +113,5 @@ going if we're ever going to get on top of appsec vulnerabilities.
limited impact, do something different. Just because we've done
testing like desk checks since the 1970s doesn't mean it's a good
idea. Measure, evaluate, and then build or improve.

--8<-- "includes/abbreviations.md"
Original file line number Diff line number Diff line change
Expand Up @@ -45,3 +45,5 @@ comprehensively detect, test, or protect against the OWASP Top 10 due to
the nature of several of the OWASP Top 10 risks, with reference to
A04:2021-Insecure Design. OWASP discourages any claims of full coverage
of the OWASP Top 10, because it’s simply untrue.

--8<-- "includes/abbreviations.md"
2 changes: 2 additions & 0 deletions 2021/docs/en/A00_2021_Introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,3 +116,5 @@ The OWASP Top 10 2021 team gratefully acknowledge the financial support of Secur
[![Secure Code Warrior](assets/securecodewarrior.png){ width="256" }](https://securecodewarrior.com)

[![Just Eats](assets/JustEat.png){ width="256" }](https://www.just-eat.co.uk/)

--8<-- "includes/abbreviations.md"
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ Insufficient Logging* to include *CWE-117 Improper Output Neutralization
for Logs*, *CWE-223 Omission of Security-relevant Information*, and
*CWE-532* *Insertion of Sensitive Information into Log File*.

## Description
## Description

Returning to the OWASP Top 10 2021, this category is to help detect,
escalate, and respond to active breaches. Without logging and
Expand Down Expand Up @@ -54,7 +54,7 @@ events visible to a user or an attacker (see [A01:2021-Broken Access Control](A0

## How to Prevent

Developers should implement some or all the following controls,
Developers should implement some or all the following controls,
depending on the risk of the application:

- Ensure all login, access control, and server-side input validation
Expand Down
2 changes: 2 additions & 0 deletions 2021/docs/en/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,3 +115,5 @@ The OWASP Top 10 2021 team gratefully acknowledge the financial support of Secur
[![Secure Code Warrior](assets/securecodewarrior.png){ width="256" }](https://securecodewarrior.com)

[![Just Eats](assets/JustEat.png){ width="256" }](https://www.just-eat.co.uk/)

--8<-- "includes/abbreviations.md"
40 changes: 40 additions & 0 deletions 2021/docs/scripts/extra.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
window.addEventListener("DOMContentLoaded", _ => {
const MutationObserver = window.MutationObserver || window.WebKitMutationObserver;
const observer = new MutationObserver((mutations, _) => {
const nodesForRemoval = [];
for (const record of mutations) {
for (const liNode of record.addedNodes) {
let removeNode = false;
for (const anchor of liNode.querySelectorAll("a")) {
const searchResultLocale = getSearchResultLocaleFromAnchor(anchor);
const isSearchResultFromCurrentPageLocale = searchResultLocale === document.querySelector('html[lang]').lang;
if (!isSearchResultFromCurrentPageLocale) {
removeNode = true;
continue;
}
}

if (removeNode) {
nodesForRemoval.push(liNode);
}
}
}

for (const node of nodesForRemoval) {
node.remove();
}

const amountDisplay = document.querySelector(".md-search-result__meta");
const result = document.querySelector('.md-search-result__list').childNodes.length
amountDisplay.textContent = amountDisplay.textContent.replace(/\d+/i, result.toString());
});

observer.observe(document.querySelector(".md-search-result__list"), { childList: true });
});

function getSearchResultLocaleFromAnchor(anchor) {
const localeSegment = anchor.href.split("/")[3];
// Note that we make an assumption here that the only length 2
// link segments will be the locale immediately after the site's base URL.
return (localeSegment.length === 2 || localeSegment.length === 5 || localeSegment.length === 7) ? localeSegment : 'en';
}
3 changes: 3 additions & 0 deletions 2021/docs/stylesheets/extra.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
:root {
--md-text-font-family: Segoe UI,Frutiger,Frutiger Linotype,Dejavu Sans,Helvetica Neue,-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif;
}
12 changes: 12 additions & 0 deletions 2021/includes/abbreviations.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
*[W3C]: World Wide Web Consortium
*[CVE]: Common Vulnerabilities and Exposures
*[CWE]: Common Weakness Enumeration
*[XXE]: XML External Entity
*[XSS]: Cross Site Scripting
*[CVSS]: Common Vulnerability Scoring System
*[CSRF]: Cross Site Request Forgery
*[NVD]: National Vulnerability Database
*[GDPR]: General Data Protection Regulation
*[ASVS]: Application Security Verification Standard
*[QA]: Quality Assurance
*[CSP]: Content Security Policy
Loading