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 "OWASP DefectDojo Project"

From OWASP
Jump to: navigation, search
(Project Resources)
(Updated Leaders)
 
(74 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 
=Main=
 
=Main=
  
<div style="width:100%;height:160px;border:0,margin:0;overflow: hidden;">[[File:OWASP_Project_Header.jpg|link=]]</div>
+
<div style="width:100%;height:90px;border:0,margin:0;overflow: hidden;">[[File: flagship_big.jpg|link=]]</div>
  
 
{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |-
 
{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |-
| valign="top" style="border-right: 1px dotted gray;padding-right:25px;" |
+
| valign="top" style="border-right: 1px dotted gray;padding-right:25px;" |
 
 
<span style="color:#ff0000">
 
Instructions are in RED text and should be removed from your document by deleting the text with the span tags. This document is intended to serve as an example of what is required of an OWASP project wiki page. The text in red serves as instructions, while the text in black serves as an example. Text in black is expected to be replaced entirely with information specific to your OWASP project.
 
</span>
 
  
 +
==OWASP DefectDojo Tool Project ==
 
An open source vulnerability management tool that streamlines the testing process by offering templating, report generation, metrics, and baseline self-service tools.
 
An open source vulnerability management tool that streamlines the testing process by offering templating, report generation, metrics, and baseline self-service tools.
==OWASP DefectDojo Tool Project ==
 
<span style="color:#ff0000">
 
This section should include an overview of what the project is, why the project was started, and what security issue is being addressed by the project deliverable. Some readers may be discouraged from looking further at the project if they do not understand the significance of the security concern that is being addressed, so provide enough context so the average reader will continue on with reading the description. You shouldn't assume the reader will understand the objective by providing security terminology, e.g. this project builds cryptographic algorithms, but should also endeavor to explain what they are used for.
 
</span>
 
  
The OWASP Tool Template Project is a template designed to help Project Leaders create suitable project pages for OWASP Projects. By following the instructional text in red (and then deleting it) it should be easier to understand what information OWASP and the project users are looking for. And it's easy to get started by simply creating a new project from the appropriate project template.
+
DefectDojo is an Application Security Program tool written in Python / Django. DefectDojo was created in 2013 and open-sourced on March 13th, 2015. The project was started to make optimizing vulnerability tracking less painful. The top goal of DefectDojo is to reduce the amount of time security professionals spend logging vulnerabilities. DefectDojo accomplishes this by offering a templating system for vulnerabilities, imports for common vulnerability scanners, report generation, and metrics.
  
 
==Description==
 
==Description==
An open source vulnerability management tool that streamlines the testing process by offering templating, report generation, metrics, and baseline self-service tools.
+
DefectDojo streamlines the testing process through several 'models' that an admin can manipulate with Python code. The core models include: 'engagements', 'tests' and 'findings'. DefectDojo has supplemental models that facilitate metrics, authentication, report generation, and tools. DefectDojo is written in Python and Django.
 
 
DefectDojo is an open source tool created by the Security Engineering team at Rackspace to track testing efforts. It has grown rapidly and is contributed to and used by many different companies. https://github.com/rackerlabs/django-DefectDojo
 
 
 
<span style="color:#ff0000">
 
This is where you need to add your more robust project description. A project description should outline the purpose of the project, how it is used, and the value it provides to application security. Ideally, project descriptions should be written in such a way that there is no question what value the project provides to the software security community. This section will be seen and used in various places within the Projects Portal. Poorly written project descriptions therefore detract from a project’s visibility, so project leaders should ensure that the description is meaningful. 
 
</span>
 
 
 
The Tool Project Template is simply a sample project that was developed for instructional purposes that can be used to create default project pages for a Tool project.  After copying this template to your new project, all you have to do is follow the instructions in red, replace the sample text with text suited for your project, and then delete the sections in red. Doing so should make it clearer to both consumers of this project, as well as OWASP reviewers who are trying to determine if the project can be promoted to the next category.  The information requested is also intended to help Project Leaders think about the roadmap and feature priorities, and give guidance to the reviews as a result of that effort.
 
 
 
Creating a new set of project pages from scratch can be a challenging task.  By providing a sample layout, with instructional text and examples, the OWASP Tool Project Template makes it easier for Project Leaders to create effective security projects and hence helps promote security.
 
  
Contextual custom dictionary builder with character substitution and word variations for pen-testers
+
Testing or installing DefectDojo is easy. If you decide to setup an instance of Dojo for your organization, we have developed a script that handles all dependencies, configures the database, and creates a super user. Complete installation instructions are found [https://github.com/DefectDojo/django-DefectDojo#installation here]. A complete walk-through can be found [http://defectdojo.readthedocs.org/en/latest/ here]. Documented example workflows can be found [https://github.com/rackerlabs/django-DefectDojo/blob/master/doc/workflows.md].
  
 
==Licensing==
 
==Licensing==
<span style="color:#ff0000">
+
DefectDojo is licensed under the [https://github.com/defectdojo/django-DefectDojo/blob/master/LICENSE.md BSD Simplified License].
A project must be licensed under a community friendly or open source license.  For more information on OWASP recommended licenses, please see [https://www.owasp.org/index.php/OWASP_Licenses OWASP Licenses]. While OWASP does not promote any particular license over another, the vast majority of projects have chosen a Creative Commons license variant for documentation projects, or a GNU General Public License variant for tools and code projects.  This example assumes that you want to use the AGPL 3.0 license.
 
</span>
 
 
 
This program is free software: you can redistribute it and/or modify it under the terms of the [http://www.gnu.org/licenses/agpl-3.0.html link GNU Affero General Public License 3.0] as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. OWASP XXX and any contributions are Copyright &copy; by {the Project Leader(s) or OWASP} {Year(s)}. 
 
 
 
| valign="top"  style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" |
 
  
 
== Project Resources ==
 
== Project Resources ==
<span style="color:#ff0000">
 
This is where you can link to the key locations for project files, including setup programs, the source code repository, online documentation, a Wiki Home Page, threaded discussions about the project, and Issue Tracking system, etc.
 
</span>
 
https://github.com/rackerlabs/django-DefectDojo
 
  
[https://github.com/SamanthaGroves Installation Package]
+
[https://www.defectdojo.org/ DefectDojo Product Page]
  
[https://github.com/SamanthaGroves Source Code]
+
[https://github.com/DefectDojo/django-DefectDojo/ Source Code]
  
[https://github.com/SamanthaGroves What's New (Revision History)]
+
[https://github.com/DefectDojo/django-DefectDojo/blob/master/docs/getting-started.rst Getting Started Guide]
  
[https://github.com/SamanthaGroves Documentation]
+
[https://github.com/DefectDojo/django-DefectDojo/releases What's New]
  
[https://github.com/SamanthaGroves Wiki Home Page]
+
[https://github.com/DefectDojo/django-DefectDojo/issues Issue Tracker]
  
[https://github.com/SamanthaGroves Issue Tracker]
+
== Project Leaders ==
 +
[https://www.owasp.org/index.php/User:Devgreg Greg Anderson] [mailto:[email protected] @]
  
[https://github.com/SamanthaGroves Slide Presentation]
+
[https://www.owasp.org/index.php/User:Aweaver Aaron Weaver][mailto:[email protected] @]
  
[https://github.com/SamanthaGroves Video]
+
[mailto:charles.[email protected] Charles Neill]
  
== Project Leader ==
+
[https://www.owasp.org/index.php/User:Grendel Jay Paz][mailto:jay.paz@owasp.org @]
<span style="color:#ff0000">
 
A project leader is the individual who decides to lead the project throughout its lifecycle. The project leader is responsible for communicating the project’s progress to the OWASP Foundation, and he/she is ultimately responsible for the project’s deliverables. The project leader must provide OWASP with his/her real name and contact e-mail address for his/her project application to be accepted, as OWASP prides itself on the openness of its products, operations, and members.
 
</span>
 
  
Project leader's name
+
== Related Projects ==
  
== Related Projects ==
+
* [https://www.owasp.org/index.php/OWASP_AppSec_Pipeline OWASP AppSec Pipeline]
<span style="color:#ff0000">
 
This is where you can link to other OWASP Projects that are similar to yours.  
 
</span>
 
* [[OWASP_Code_Project_Template]]
 
* [[OWASP_Documentation_Project_Template]]
 
  
 
==Classifications==
 
==Classifications==
Line 82: Line 48:
 
   {| width="200" cellpadding="2"
 
   {| width="200" cellpadding="2"
 
   |-
 
   |-
   | colspan="2" align="center" | [[File:Project_Type_Files_TOOL.jpg|link=https://www.owasp.org/index.php/Category:OWASP_Tool]]
+
   | colspan="2" align="center" | [[File:Project_Type_Files_TOOL.jpg|link=https://www.owasp.org/index.php/Category:OWASP_Tool]]
 
   |-
 
   |-
   | align="center" valign="top" width="50%" rowspan="2"| [[File:Owasp-incubator-trans-85.png|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects|Incubator Project]]
+
   | colspan="2" align="center" | [[File:Project_Type_Files_CODE.jpg|link=https://www.owasp.org/index.php/Category:OWASP_Code]]
  | align="center" valign="top" width="50%"| [[File:Owasp-builders-small.png|link=Builders]]
 
 
   |-
 
   |-
   | align="center" valign="top" width="50%"| [[File:Owasp-defenders-small.png|link=Defenders]]
+
  | rowspan="2" align="center" valign="top" width="50%" | [[File:Owasp-incubator-trans-85.png|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects|Incubator Project]]
 +
  | align="center" valign="top" width="50%" | [[File:Owasp-builders-small.png|link=Builders]] 
 +
  |-
 +
   | align="center" valign="top" width="50%" | [[File:Owasp-defenders-small.png|link=Defenders]]
 
   |-
 
   |-
  | colspan="2" align="center"  | [[File:Agplv3-155x51.png|link=http://www.gnu.org/licenses/agpl-3.0.html|Affero General Public License 3.0]]
 
 
   |}
 
   |}
 
| valign="top"  style="padding-left:25px;width:200px;" |
 
  
 
== News and Events ==
 
== News and Events ==
<span style="color:#ff0000">
+
* [23 July 2018] [https://github.com/OWASP/django-DefectDojo/releases/tag/1.5.1 Version 1.5.1 Released]
This is where you can provide project updates, links to any events like conference presentations, Project Leader interviews, case studies on successful project implementations, and articles written about your project.  
+
* [15 Dec 2017] [https://github.com/OWASP/django-DefectDojo/releases/tag/1.2.1 Version  1.2.1 Released]
</span>
+
* [20 Sep 2017] [https://github.com/OWASP/django-DefectDojo/releases/tag/1.2 Version  1.2.0 Released]
* [12 Feb 2013] Support for Spanish is now available with this release.
+
* [19 Dec 2016] [https://github.com/OWASP/django-DefectDojo/releases/tag/1.1.3 Version  1.1.3 Released]
* [11 Jan 2014] The 1.0 stable version has been released! Thanks everyone for your feedback and code fixes that made this happen!
+
* [12 Nov 2016] [https://github.com/OWASP/django-DefectDojo/releases/tag/1.1.2 Version  1.1.2 Released]
* [18 Dec 2013] 1.0 Release Candidate is available for download. This release provides final bug fixes and product stabilization. Any feedback (good or bad) in the next few weeks would be greatly appreciated.
+
* [13 Oct 2016] [https://github.com/OWASP/django-DefectDojo/releases/tag/1.1.1 Version  1.1.1 Released]
* [20 Nov 2013] 1.0 Beta 2 Release is available for download. This release offers several bug fixes, a few performance improvements, and addressed all outstanding issues from a security audit of the code.
+
* [1 Oct 2016] [https://github.com/OWASP/django-DefectDojo/releases/tag/1.1.0 Version 1.1.0 Released]
* [30 Sep 2013] 1.0 Beta 1 Release is available for download. This release offers the first version with all of the functionality for a minimum viable product.    
+
* [22 Dec 2015] [https://github.com/rackerlabs/django-DefectDojo/releases/tag/v1.0.5 Version 1.0.5 Released]
 +
* [08 Sep 2015] [https://github.com/rackerlabs/django-DefectDojo/releases/tag/v1.0.4 Version 1.0.4 Released]
 +
* [27 Jul 2015] [https://github.com/rackerlabs/django-DefectDojo/releases/tag/v1.0.3 Version 1.0.3 Released]
 +
* [16 Jun 2015] [https://github.com/rackerlabs/django-DefectDojo/releases/tag/v1.0.2 Version 1.0.2 Released]
 +
* [30 Sep 2015] [https://github.com/rackerlabs/django-DefectDojo/releases/tag/v1.0.1 Version 1.0.1 Released]
 +
* [02 Apr 2015] [https://github.com/rackerlabs/django-DefectDojo/releases/tag/v1.0 Version 1.0.0 Released]
 +
* [15 Mar 2015] [https://github.com/rackerlabs/django-DefectDojo DefectDojo is open-sourced]
  
 
|}
 
|}
  
 
=FAQs=
 
=FAQs=
 
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<span style="color:#ff0000">
 
Many projects have "Frequently Asked Questions" documents or pages. However, the point of such a document is not the questions. ''The point of a document like this are the '''answers'''''. The document contains the answers that people would otherwise find themselves giving over and over again. The idea is that rather than laboriously compose and post the same answers repeatedly, people can refer to this page with pre-prepared answers. Use this space to communicate your projects 'Frequent Answers.'
 
</span>
 
  
 
==How can I participate in your project?==
 
==How can I participate in your project?==
All you have to do is make the Project Leader's aware of your available time to contribute to the project. It is also important to let the Leader's know how you would like to contribute and pitch in to help the project meet it's goals and milestones. There are many different ways you can contribute to an OWASP Project, but communication with the leads is key.  
+
All you have to do is make the Project Leaders aware of your available time to contribute to the project. It is also important to let the Leaders know how you would like to contribute and pitch in to help the project meet its goals and milestones. There are many different ways you can contribute to an OWASP Project, but communication with the leads is key. If you are a programmer and wish to contribute code, we regularly review [https://github.com/rackerlabs/django-DefectDojo/pulls pull requests].
  
 
==If I am not a programmer can I participate in your project?==
 
==If I am not a programmer can I participate in your project?==
Yes, you can certainly participate in the project if you are not a programmer or technical. The project needs different skills and expertise and different times during its development. Currently, we are looking for researchers, writers, graphic designers, and a project administrator.   See the Road Map and Getting Involved tab for more details.
+
Yes, you can certainly participate in the project if you are not a programmer or technical. The project needs different skills and expertise and different times during its development. Currently, we are looking for people to help translate our documentation. See the Road Map and Getting Involved tab for more details.
  
 
= Acknowledgements =
 
= Acknowledgements =
 
==Contributors==
 
==Contributors==
 +
The project is extremely grateful for all of our contributors both prior to becoming open source and after.
 +
[https://github.com/OWASP/django-DefectDojo/graphs/contributors Contributors since going open source].
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
==Sponsors==
<span style="color:#ff0000">
+
[[Image:xing_logo.png|link=https://corporate.xing.com/en/about-xing/security/|www.xing.com]]
The success of OWASP is due to a community of enthusiasts and contributors that work to make our projects great. This is also true for the success of your project.
 
Be sure to give credit where credit is due, no matter how small! This should be a brief list of the most amazing people involved in your project.
 
Be sure to provide a link to a complete list of all the amazing people in your project's community as well.
 
</span>
 
 
 
The OWASP Tool Project Template is developed by a worldwide team of volunteers. A live update of project  [https://github.com/OWASP/Security-Principles/graphs/contributors contributors is found here].
 
 
 
The first contributors to the project were:
 
 
 
* [https://www.owasp.org/index.php/User:Clerkendweller Colin Watson] who created the OWASP Cornucopia project that the template was derived from
 
* [https://www.owasp.org/index.php/User:Chuck_Cooper Chuck Cooper] who edited the template to convert it from a documentation project to a Tool Project Template
 
* '''YOUR NAME BELONGS HERE AND YOU SHOULD REMOVE THE PRIOR 3 NAMES'''
 
  
 
= Road Map and Getting Involved =
 
= Road Map and Getting Involved =
 +
At this time, Dojo is already being used by multiple large enterprises. Part of our next steps is to better evangelize our work and encourage others to contribute. However, we do have a set of core contributors that actively work on the project.
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
==Roadmap==
<span style="color:#ff0000">
+
'''July 2018 Release 1.5:'''
A project roadmap is the envisioned plan for the project. The purpose of the roadmap is to help others understand where the project is going as well as areas that volunteers may contribute. It gives the community a chance to understand the context and the vision for the goal of the project. Additionally, if a project becomes inactive, or if the project is abandoned, a roadmap can help ensure a project can be adopted and continued under new leadership.
+
** Updated UI with a new DefectDojo logo, default colors and CSS.
Roadmaps vary in detail from a broad outline to a fully detailed project charter. Generally speaking, projects with detailed roadmaps have tended to develop into successful projects. Some details that leaders may consider placing in the roadmap include: envisioned milestones, planned feature enhancements, essential conditions, project assumptions, development timelines, etc. You are required to have at least 4 milestones for every year the project is active.  
+
** Updated Product views with tabs for Product Overview, Metrics, Engagements, Endpoints, Benchmarks (ASVS), and Settings to make it easier to navigate and manage your products.
</span>
+
** New Product Information fields: Regulations, Criticality, Platform, Lifecycle, Origin, User Records, Revenue, External Audience, Internet Accessible
 +
** Languages pie chart on product overview, only supported through the API and Django admin, integrates with cloc analyzer
 +
** New Engagement type of CI/CD to support continual testing
 +
** Engagement shortcuts and ability to import findings and auto-create an engagement
 +
** Engagement labels for overdue, no tests and findings
 +
** New Contextual menus throughout DefectDojo and shortcuts to new findings and critical findings
 +
** Ability to merge a finding into a parent finding and either inactivate or delete the merged findings.
 +
** Report improvements and styling adjustment with the default option of HTML reports
 +
** SLA for remediation of severities based on finding criticality, for example critical findings remediated within 7 days. Configurable in System Settings.
 +
** Engagement Auto-Close Days in System Settings. Automatically close an engagement if open past the end date.
 +
** Ability to apply remediation advice based on CWE. For example XSS can be configured as a template so that it’s consistent across all findings. Enabled in system settings.
 +
** Finding confidence field supported from scanners. First implementation in the Burp importer.
 +
** Goast importer for static analysis of Golang products
 +
** Celery status check on System Settings
 +
** Beta rules framework release for modifying findings on the fly
 +
** DefectDojo 2.0 API with Swagger support
 +
** Created and Modified fields on all major tables
 +
** Various bug fixes reported on Github
  
==Roadmap==
+
As of March, 2016, the highest priorities for the next 6 months are:
As of <strong>November, 2013, the highest priorities for the next 6 months</strong> are:
 
 
<strong>
 
<strong>
* Complete the first draft of the Tool Project Template
+
* A proof of concept plugin that will aid in retesting automation
* Get other people to review the Tool Project Template and provide feedback
+
* JIRA Integration
* Incorporate feedback into changes in the Tool Project Template
+
* Dynamic Application Tagging.
* Finalize the Tool Project template and have it reviewed to be promoted from an Incubator Project to a Lab Project
 
 
</strong>
 
</strong>
  
Subsequent Releases will add
+
Subsequent Releases will add:
 +
 
 
<strong>
 
<strong>
* Internationalization Support
+
* CI / CD for pull requests
 
* Additional Unit Tests
 
* Additional Unit Tests
 
* Automated Regression tests
 
* Automated Regression tests
Line 162: Line 135:
  
 
==Getting Involved==
 
==Getting Involved==
Involvement in the development and promotion of <strong>Tool Project Template</strong> is actively encouraged!
+
Involvement in the development and promotion of <strong>DefectDojo</strong> is actively encouraged!
 
You do not have to be a security expert or a programmer to contribute.
 
You do not have to be a security expert or a programmer to contribute.
 
Some of the ways you can help are as follows:
 
Some of the ways you can help are as follows:
Line 169: Line 142:
 
We could implement some of the later items on the roadmap sooner if someone wanted to help out with unit or automated regression tests
 
We could implement some of the later items on the roadmap sooner if someone wanted to help out with unit or automated regression tests
 
===Localization===
 
===Localization===
Are you fluent in another language? Can you help translate the text strings in the <strong>Tool Project Template</strong> into that language?
+
Are you fluent in another language? Can you help translate the text strings in the <strong>DefectDojo</strong> into that language?
 +
 
 
===Testing===
 
===Testing===
Do you have a flair for finding bugs in software? We want to product a high quality product, so any help with Quality Assurance would be greatly appreciated. Let us know if you can offer your help.
+
Do you have a flair for finding bugs in software? We want to produce a high quality product, so any help with Quality Assurance would be greatly appreciated. Let us know if you can offer any help.
 +
 
 
===Feedback===
 
===Feedback===
Please use the [https://lists.owasp.org/mailman/listinfo/OWASP_Tool_Project_Template Tool Project Template project mailing list] for feedback about:
+
Please use the [https://lists.owasp.org/mailman/listinfo/OWASP_Tool_Project_Template DefectDojo project mailing list] for feedback about:
 
<ul>
 
<ul>
 
<li>What do like?</li>
 
<li>What do like?</li>
Line 180: Line 155:
 
</ul>
 
</ul>
  
=Minimum Viable Product=
+
=Project About=
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<span style="color:#ff0000">
 
This page is where you should indicate what is the minimum set of functionality that is required to make this a useful product that addresses your core security concern.
 
Defining this information helps the project leader to think about what is the critical functionality that a user needs for this project to be useful, thereby helping determine what the priorities should be on the roadmap.  And it also helps reviewers who are evaluating the project to determine if the functionality sufficiently provides the critical functionality to determine if the project should be promoted to the next project category. 
 
</span>
 
 
 
The Tool Project Template must specify the minimum set of tabs a project should have, provide some an example layout on each tab, provide instructional text on how a project leader should modify the tab, and give some example text that illustrates how to create an actual project.
 
  
It would also be ideal if the sample text was translated into different languages.
 
 
=Project About=
 
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<span style="color:#ff0000">
 
This page is where you need to place your legacy project template page if your project was created before October 2013. To edit this page you will need to edit your project information template. You can typically find this page by following this address and substituting your project name where it says "OWASP_Example_Project". When in doubt, ask the OWASP Projects Manager.
 
Example template page: https://www.owasp.org/index.php/Projects/OWASP_Example_Project
 
</span>
 
  
{{:Projects/OWASP_Example_Project_About_Page}}  
+
{{Template:Project About
 +
| project_name =OWASP DefectDojo
 +
| project_description =OWASP DefectDojo is an open source vulnerability management tool that streamlines the testing process by offering templating, report generation, metrics, and baseline self-service tools.
 +
| project_license = [https://github.com/OWASP/django-DefectDojo/blob/master/LICENSE.md BSD Simplified License]
 +
| leader_name1=Greg Anderson
 +
 +
| leader_username1=devgreg
 +
| leader_name2=Aaron Weaver
 +
 +
| leader_username2=N/A
 +
| leader_name3=Matt Tesauro
 +
| leader_email3= [email protected]
 +
| leader_username3=N/A
 +
}}
  
__NOTOC__ <headertabs />  
+
__NOTOC__ <headertabs></headertabs>  
  
[[Category:OWASP Project]] [[Category:OWASP_Builders]] [[Category:OWASP_Defenders]] [[Category:OWASP_Tool]]
+
[[Category:OWASP Project]]
 +
[[Category:OWASP_Builders]]
 +
[[Category:OWASP_Defenders]]
 +
[[Category:OWASP_Tool]]
 +
[[Category:Projects|DefectDojo]]
 +
[[Category:Incubator Projects|DefectDojo]]
 +
[[Category:OWASP DefectDojo|DefectDojo]]

Latest revision as of 14:45, 2 January 2019

Flagship big.jpg

OWASP DefectDojo Tool Project

An open source vulnerability management tool that streamlines the testing process by offering templating, report generation, metrics, and baseline self-service tools.

DefectDojo is an Application Security Program tool written in Python / Django. DefectDojo was created in 2013 and open-sourced on March 13th, 2015. The project was started to make optimizing vulnerability tracking less painful. The top goal of DefectDojo is to reduce the amount of time security professionals spend logging vulnerabilities. DefectDojo accomplishes this by offering a templating system for vulnerabilities, imports for common vulnerability scanners, report generation, and metrics.

Description

DefectDojo streamlines the testing process through several 'models' that an admin can manipulate with Python code. The core models include: 'engagements', 'tests' and 'findings'. DefectDojo has supplemental models that facilitate metrics, authentication, report generation, and tools. DefectDojo is written in Python and Django.

Testing or installing DefectDojo is easy. If you decide to setup an instance of Dojo for your organization, we have developed a script that handles all dependencies, configures the database, and creates a super user. Complete installation instructions are found here. A complete walk-through can be found here. Documented example workflows can be found [1].

Licensing

DefectDojo is licensed under the BSD Simplified License.

Project Resources

DefectDojo Product Page

Source Code

Getting Started Guide

What's New

Issue Tracker

Project Leaders

Greg Anderson @

Aaron Weaver@

Charles Neill

Jay Paz@

Related Projects

Classifications

Project Type Files TOOL.jpg
Project Type Files CODE.jpg
Incubator Project Owasp-builders-small.png
Owasp-defenders-small.png

News and Events

How can I participate in your project?

All you have to do is make the Project Leaders aware of your available time to contribute to the project. It is also important to let the Leaders know how you would like to contribute and pitch in to help the project meet its goals and milestones. There are many different ways you can contribute to an OWASP Project, but communication with the leads is key. If you are a programmer and wish to contribute code, we regularly review pull requests.

If I am not a programmer can I participate in your project?

Yes, you can certainly participate in the project if you are not a programmer or technical. The project needs different skills and expertise and different times during its development. Currently, we are looking for people to help translate our documentation. See the Road Map and Getting Involved tab for more details.

Contributors

The project is extremely grateful for all of our contributors both prior to becoming open source and after. Contributors since going open source.

Sponsors

www.xing.com

At this time, Dojo is already being used by multiple large enterprises. Part of our next steps is to better evangelize our work and encourage others to contribute. However, we do have a set of core contributors that actively work on the project.

Roadmap

July 2018 Release 1.5:

    • Updated UI with a new DefectDojo logo, default colors and CSS.
    • Updated Product views with tabs for Product Overview, Metrics, Engagements, Endpoints, Benchmarks (ASVS), and Settings to make it easier to navigate and manage your products.
    • New Product Information fields: Regulations, Criticality, Platform, Lifecycle, Origin, User Records, Revenue, External Audience, Internet Accessible
    • Languages pie chart on product overview, only supported through the API and Django admin, integrates with cloc analyzer
    • New Engagement type of CI/CD to support continual testing
    • Engagement shortcuts and ability to import findings and auto-create an engagement
    • Engagement labels for overdue, no tests and findings
    • New Contextual menus throughout DefectDojo and shortcuts to new findings and critical findings
    • Ability to merge a finding into a parent finding and either inactivate or delete the merged findings.
    • Report improvements and styling adjustment with the default option of HTML reports
    • SLA for remediation of severities based on finding criticality, for example critical findings remediated within 7 days. Configurable in System Settings.
    • Engagement Auto-Close Days in System Settings. Automatically close an engagement if open past the end date.
    • Ability to apply remediation advice based on CWE. For example XSS can be configured as a template so that it’s consistent across all findings. Enabled in system settings.
    • Finding confidence field supported from scanners. First implementation in the Burp importer.
    • Goast importer for static analysis of Golang products
    • Celery status check on System Settings
    • Beta rules framework release for modifying findings on the fly
    • DefectDojo 2.0 API with Swagger support
    • Created and Modified fields on all major tables
    • Various bug fixes reported on Github

As of March, 2016, the highest priorities for the next 6 months are:

  • A proof of concept plugin that will aid in retesting automation
  • JIRA Integration
  • Dynamic Application Tagging.

Subsequent Releases will add:

  • CI / CD for pull requests
  • Additional Unit Tests
  • Automated Regression tests

Getting Involved

Involvement in the development and promotion of DefectDojo is actively encouraged! You do not have to be a security expert or a programmer to contribute. Some of the ways you can help are as follows:

Coding

We could implement some of the later items on the roadmap sooner if someone wanted to help out with unit or automated regression tests

Localization

Are you fluent in another language? Can you help translate the text strings in the DefectDojo into that language?

Testing

Do you have a flair for finding bugs in software? We want to produce a high quality product, so any help with Quality Assurance would be greatly appreciated. Let us know if you can offer any help.

Feedback

Please use the DefectDojo project mailing list for feedback about:

  • What do like?
  • What don't you like?
  • What features would you like to see prioritized on the roadmap?
PROJECT INFO
What does this OWASP project offer you?
RELEASE(S) INFO
What releases are available for this project?
what is this project?
Name: OWASP DefectDojo
Purpose: OWASP DefectDojo is an open source vulnerability management tool that streamlines the testing process by offering templating, report generation, metrics, and baseline self-service tools.
License: BSD Simplified License
who is working on this project?
Project Leader(s):
how can you learn more?
Project Pamphlet: Not Yet Created
Project Presentation:
Mailing list: N/A
Project Roadmap: Not Yet Created
Key Contacts
current release
1.5.1
last reviewed release
1.2.1


other releases