OWASP / CheatSheetSeries
- понедельник, 8 апреля 2019 г. в 00:17:54
Python
The OWASP Cheat Sheet Series was created to provide a concise collection of high value information on specific application security topics.
This repository contains all the cheat sheets of the project and represent the V2 of the OWASP Cheat Sheet Series project.
The following indexes are provided:
You can also search into this repository using a keywords via this URL:
https://github.com/OWASP/CheatSheetSeries/search?q=[KEYWORDS]
Example:
https://github.com/OWASP/CheatSheetSeries/search?q=csrf
More information about the GitHub search feature can be found here.
Any GitHub member is free to add a comment on any Proposal (issue) or PR.
However, we have created an official core technical review team (core commiters) in order to:
Decision of the core technical review team have the same weight than the projet leaders, so, if a reviewer reject a PR (rejection must be technically documented and explained) then project leaders will apply the global decision.
Members:
For the following kind of modification, the PR system will be used by the core commiters in order to allow peer review using the GitHub PR review system:
This the procedure:
master branch:
git checkout master
feature_request_[ID] where [ID] is the number of the linked issue opened prior to the PR to follow the contribution process:
git checkout -b feature_request_[ID]
git checkout feature_request_[ID]
git push origin feature_request_[ID]
https://github.com/OWASP/CheatSheetSeries/pull/new/feature_request_[ID]
See project current branches.
Project's official logo files are hosted here.
cheatsheets_excluded:
cheatsheets:
.md file present into this folder is considered released.assets:
[CHEAT_CHEET_MARKDOWN_FILE_NAME]_[IDENTIFIER].[EXTENSION]PNG format for the images.scripts:
templates:
.github:
.circleci / .travis.yml (file):
Unfortunately, a PDF file generation is not possible because the content is cut in some cheat sheets like for example the abuse case one.
However, to propose the possibility the consult, in a full offline mode, the collection of all cheat sheets, a script to generate a offline site using GitBook has been created. The script is here.
This link provide the url where to download a night build of the offline website:
[ {
"path" : "OfflineWebsite-NightBuild.zip",
"pretty_path" : "OfflineWebsite-NightBuild.zip",
"node_index" : 0,
"url" : "https://14-162723104-gh.circle-artifacts.com/0/OfflineWebsite-NightBuild.zip"
} ]The attribute url must be used to download the ZIP archive.
Use the commands below to generate the site:
# Your python version must be >= 3.5
$ python --version
Python 3.5.3
# Dependencies:
# sudo apt install -y nodejs
# sudo npm install gitbook-cli -g
$ cd scripts
$ bash Generate_Site.sh
Generate a offline portable website with all the cheat sheets...
Step 1/5: Init work folder.
Step 2/5: Generate the summary markdown page.
Index updated.
Summary markdown page generated.
Step 3/5: Create the expected GitBook folder structure.
Step 4/5: Generate the site.
info: found 45 pages
info: found 86 asset files
info: >> generation finished with success in 14.2s !
Step 5/5: Cleanup.
Generation finished to the folder: ../generated/site
$ cd ../generated/site/
$ ls -l
drwxr-xr-x 1 Feb 3 11:05 assets
drwxr-xr-x 1 Feb 3 11:05 cheatsheets
drwxr-xr-x 1 Feb 3 11:05 gitbook
-rw-r--r-- 1 Feb 3 11:05 index.html
-rw-r--r-- 1 Feb 3 11:05 search_index.json for the insertion of an image. Use PNG format for the images (this software can be used to handle format conversion).[ALTERNATE_NAME](../assets/ASSET_NAME.EXT) for the insertion of other kinds of media (pdf, zip...).# syntax) for section head.**bold** syntax for bold text.*italic* syntax for italic text.TAB for nested lists and not spaces.{{ or }} pattern in code fencing then add a space between the both curly braces (ex: { {) otherwise it break GitBook generation process.[a-zA-Z_]+.Visual Studio Code is used for the work on the markdown files. It is also used for the work on the scripts.
The file Project.code-workspace is the workspace file in order to open the project in VSCode.
The following plugin is used to validate the markdown content.
The file .markdownlint.json define the central validation policy applied at VSCode (IDE) and TravisCI (CI) levels.
Details about rules is here.
The file .markdownlinkcheck.json define the configuration used to validate using this tool, at TravisCI level, all web and relatives links used in cheat sheets.
See here.
See here.
A special thanks you to the following peoples for the help provided during the migration:
See here.