Skip to content

Commit 7e4e1da

Browse files
authored
Merge pull request #67 from ioggstream/ioggstream-mdlint
Improve md.
2 parents c906c16 + 0edbf45 commit 7e4e1da

2 files changed

Lines changed: 23 additions & 6 deletions

File tree

README.md

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# Introduction
2+
23
From a startup to a multinational corporation the software development industry is currently dominated by agile frameworks and product teams and as part of it DevOps strategies. It has been observed that during the implementation, security aspects are usually neglected or are at least not sufficient taken account of. It is often the case that standard safety requirements of the production environment are not utilized or applied to the build pipeline in the continuous integration environment with containerization or concrete docker. Therefore, the docker registry is often not secured which might result in the theft of the entire company’s source code.
34

45
The OWASP DevSecOps Maturity Model provides opportunities to harden DevOps strategies and shows how these can be prioritized.
@@ -8,7 +9,9 @@ With the help of DevOps strategies security can also be enhanced. For example, e
89
Attackers are intelligent and creative, equipped with new technologies and purpose. Under the guidance of the forward-looking DevSecOps Maturity Model, appropriate principles and measures are at hand implemented which counteract the attacks.
910

1011
# Usage
12+
1113
Go to https://dsomm.timo-pagel.de or clone [this repository](https://github.com/wurstbrot/DevSecOps-MaturityModel/) and run `startDocker.bash`.
14+
1215
* _matrix_ shows the dimensions, subdimensions and activities are described.
1316
* _Implementation Levels_ can be used to measure the current implementation level by clicking on the specific activities which have been performed.
1417
* _Ease and Value of Implementation_ is used for the maturity model development to see the ease and value of each activity to be able to compare it with activities within the subdimension and activities from other subdimensions.
@@ -22,10 +25,12 @@ In case you have evidence or review questions to gather evidence, you can add th
2225
You can switch on to show open TODO's for evidence by changing IS_SHOW_EVIDENCE_TODO to true 'bib.php' `define(IS_SHOW_EVIDENCE_TODO, true);`
2326

2427
# Community
28+
2529
Join #dsomm in [OWASP Slack](https://owasp.slack.com/join/shared_invite/zt-g398htpy-AZ40HOM1WUOZguJKbblqkw#/).
2630
Create issues or even better Pull Requests in [github](https://github.com/wurstbrot/DevSecOps-MaturityModel/).
2731

2832
# Slides and talks
33+
2934
* [Talk: Strategic Usage of the OWASP Software Assurance Maturity Model and the OWASP DevSecOps Maturity Model, OWASP Jakarta](https://m.youtube.com/watch?v=lLMLGIzl56M)
3035
* [Slides: DSOMM Overview](https://docs.google.com/presentation/d/1eQcE_AsR1g6uOVf3B2Ehh1g0cHvPknkdLY4BzMYatSw/edit?usp=sharing)
3136
* [Video: GitHub practical DSOMM snippet on twitch](https://www.twitch.tv/githubenterprise/clip/EsteemedTriumphantMinkFailFish)
@@ -39,20 +44,24 @@ Create issues or even better Pull Requests in [github](https://github.com/wurstb
3944
* [DevSecOps Maturity Model](https://docs.google.com/presentation/d/1rrbyXqxy3LXAJNPFrVH99mj_BNaJKymMsXZItYArWEM/edit?usp=sharing), 2017
4045

4146
# Assessment
47+
4248
In case you would like to perform a DevSecOps assessment, the following tools are available:
49+
4350
* Usage of the applicaton in a `container`.
4451
* Development of an export to [OWASP Maturity Models](https://github.com/OWASP/Maturity-Models) (recommended for assessments with a lot of teams)
4552
* Creation of your excel sheet (not recommended, you want to use DevOps, don't even try!)
4653

4754
## Container
55+
4856
1. Install [Docker](https://www.docker.com)
49-
2. Run `docker run --rm -p 8080:80 wurstbrot/dsomm:latest
57+
2. Run `docker run --rm -p 8080:80 wurstbrot/dsomm:latest
5058
3. Browse to <http://localhost:8080> (on macOS and Windows browse to <http://192.168.99.100:8080> if you are using docker-machine instead
5159
of the native docker installation)
5260

5361
In case you would like to have perform an assessment for multiple teams, iterate from port 8080 to 8XXX, depending of the size of your team.
5462
In case the application should be visible, but the "Implementation Level" shouldn't be changeable, consider the following code:
55-
```
63+
64+
```bash
5665
#!/bin/bash
5766
set -xe
5867

@@ -67,6 +76,7 @@ cd DevSecOps-MaturityModel
6776
docker build -t $IMAGE_NAME .
6877
docker push $IMAGE_NAME
6978
```
79+
7080
This approach also allows teams to perform self assessment with changes tracked in a repository.
7181

7282
## Amazon EC2 Instance
@@ -81,7 +91,7 @@ This approach also allows teams to perform self assessment with changes tracked
8191
5. Launch your instance
8292
6. Browse to your instance's public DNS
8393

84-
```
94+
```bash
8595
#!/bin/bash
8696
yum update -y
8797
yum install -y docker
@@ -90,6 +100,7 @@ docker run -d -p 80:80 wurstbrot/dsomm:latest
90100
```
91101

92102
# Credits
103+
93104
* The dimension _Test and Verification_ is based on Christian Schneiders [Security DevOps Maturity Model (SDOMM)](https://www.christian-schneider.net/SecurityDevOpsMaturityModel.html). _Application tests_ and _Infrastructure tests_ are added by Timo Pagel. Also, the sub-dimension _Static depth_ has been evaluated by security experts at [OWASP Stammtisch Hamburg](https://www.owasp.org/index.php/OWASP_German_Chapter_Stammtisch_Initiative/Hamburg).
94105
* The sub-dimension <i>Process</i> has been added after a discussion with [Francois Raynaud](https://www.linkedin.com/in/francoisraynaud/) that reactive activities are missing.
95106
* Enhancement of my basic translation is performed by [Claud Camerino](https://github.com/clazba).
@@ -99,11 +110,13 @@ docker run -d -p 80:80 wurstbrot/dsomm:latest
99110
* The requirements from [level 0](https://github.com/AppSecure-nrw/security-belts/blob/master/white/) are based on/copied from [AppSecure NRW](https://appsecure.nrw/)
100111

101112
# Back link
113+
102114
- [OWASP DevSecOps maturity model page](https://dsomm.timo-pagel.de/)
103115
- [OWASP DevSecOps project page](https://owasp.org/www-project-devsecops-maturity-model/)
104116
- [OWASP](https://owasp.org)
105117

106118
# Your help is needed to perform
119+
107120
* Adding a manual on how to use DSOMM
108121
* Integration of Incident Response
109122
* DevSecOps Toolchain Categorization
@@ -112,12 +125,15 @@ docker run -d -p 80:80 wurstbrot/dsomm:latest
112125
* Addinng of evidence
113126

114127
# Sponsors
128+
115129
[![Timo Pagel IT-Consulting](https://raw.githubusercontent.com/DefectDojo/Documentation/master/doc/img/timo-pagel-logo.png)](https://pagel.pro) (Time, Logo, Icons)
116130

117131
# Donations
132+
118133
You are using the model or you are inspired by it, want to help but don't want to create pull requests? You can donate at the [OWASP Project Wiki Page](https://owasp.org/donate/?reponame=www-project-devsecops-maturity-model&title=OWASP+Devsecops+Maturity+Model). Donations might be used for the design of logos/images/design or travels.
119134

120135
# License
136+
121137
This program is free software: you can redistribute it and/or modify it under the terms of the [GPL 3](https://www.gnu.org/licenses/) license.
122138

123139
The intellectual property (content in the _data_ folder) is licensed under Attribution-ShareAlike.

USAGE.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,14 @@ circumstance or event, and typically is a function of:
2222
> 2. the likelihood of occurrence.
2323

2424
In information security, risks arise from the loss of:
25+
2526
- confidentiality,
2627
- integrity,
2728
- or availability
2829

2930
of information or information systems and reflect the
3031
potential adverse impacts to:
32+
3133
- organizational operations
3234
(including: - mission, - functions, - image, - or reputation),
3335
- organizational assets,
@@ -41,7 +43,6 @@ If you are interested in Risk Management frameworks and
4143
strategies, you can start from
4244
[FISMA](https://csrc.nist.gov/Projects/risk-management/).
4345

44-
4546
## Onboard Product Owner and other Managers
4647

4748
To adopt a DSOMM in a product or a project, it is important to identify
@@ -181,7 +182,6 @@ The response was to bring the system down, very little information about
181182
the attack was found apart from the fact that someone
182183
was mining cryptocurrencies on the server.
183184

184-
185185
**Example Low Maturity Scenario:**
186186

187187
The team attempted to build the requested features using vanilla NodeJS,
@@ -313,12 +313,14 @@ on Heroku with one click, it offers both CTF functionality and a self-service
313313
![Juice Shop](https://github.com/OWASP/www-project-integration-standards/raw/master/writeups/owasp_in_sdlc/images/juiceshop.png "Juice Shop")
314314

315315
### Process
316+
316317
**Example High Maturity Scenario:**
317318

318319
Business continuity and Security teams run incident management drills
319320
periodically to refresh incident playbook knowledge.
320321

321322
# Test and Verification
323+
322324
At any maturity level, linters can be introduced to ensure that consistent
323325
code is being added.
324326
For most linters, there are IDE integrations providing software engineers
@@ -414,4 +416,3 @@ Logging from all components gets aggregated in dashboards and alerts
414416
are raised based on several Thresholds and events.
415417
There are canary values and events fired against monitoring
416418
from time to time to validate it works.
417-

0 commit comments

Comments
 (0)