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 Dependency Track Project"

From OWASP
Jump to: navigation, search
m (Release Notes)
(Features)
 
(87 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
=Main=
 
=Main=
 
+
<div style="width:100%;height:90px;border:0,margin:0;overflow: hidden;">[[File: flagship_big.jpg|link=]]</div>
<div style="width:100%;height:160px;border:0,margin:0;overflow: hidden;">[[File:OWASP_Project_Header.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;" |
  
 
==OWASP Dependency-Track==
 
==OWASP Dependency-Track==
  
OWASP Dependency-Track is a Java web application that allows organizations to document the use of third-party components across multiple applications and versions. Further, it provides automatic visibility into the use of components with known vulnerabilities.
+
Dependency-Track is an intelligent Software [[Component Analysis|Supply Chain Component Analysis]] platform that allows organizations to identify and reduce risk from the use of third-party and open source components. Dependency-Track takes a unique and highly beneficial approach by leveraging the capabilities of Software Bill-of-Materials (SBOM). This approach provides capabilities that traditional Software Composition Analysis (SCA) solutions cannot achieve.
  
==Introduction==
+
Dependency-Track monitors component usage across all versions of every application in its portfolio in order to proactively identify risk across an organization. The platform has an API-first design and is ideal for use in Continuous Integration (CI) and Continuous Delivery (CD) environments.
  
Over the last several years, organizations have faced a growing trend on the number of vulnerabilities reported due to the use of vulnerable third-party components. The risk involved in using third-party components is described in a paper by Jeff Williams and Arshan Dabirsiaghi titled, "[https://www.aspectsecurity.com/research-presentations/the-unfortunate-reality-of-insecure-libraries The Unfortunate Reality of Insecure Libraries]". This upward trend propelled the use of third-party components into a new category in the [https://www.owasp.org/index.php/Top_10_2013 OWASP Top Ten], specifically, [https://www.owasp.org/index.php/Top_10_2013-A9-Using_Components_with_Known_Vulnerabilities A9: Using Components with Known Vulnerabilities].
+
[[File:Integrations.png|frameless]]
  
==Description==
+
==Features==
Dependency-Track has two main goals:
+
* Tracks application, library, framework, operating system, and hardware components
* Document the use of third-party components across multiple applications
+
* Tracks component usage across all version of every application in an organizations portfolio
* Determine the use of vulnerable components across all applications
+
* Identifies multiple forms of risk including
 +
** Components with known vulnerabilities
 +
** Out-of-date components
 +
** Modified components
 +
** License risk
 +
** More coming soon...
 +
* Integrates with multiple sources of vulnerability intelligence including:
 +
** [https://nvd.nist.gov National Vulnerability Database] (NVD)
 +
** [https://www.npmjs.com/advisories NPM Public Advisories]
 +
** [https://ossindex.sonatype.org Sonatype OSS Index]
 +
** [https://vulndb.cyberriskanalytics.com VulnDB] from [https://www.riskbasedsecurity.com Risk Based Security]
 +
** More coming soon.
 +
* Ecosystem agnostic with built-in repository support for:
 +
** Gems (Ruby)
 +
** Hex (Erlang/Elixir)
 +
** Maven (Java)
 +
** NPM (Javascript)
 +
** NuGet (.NET)
 +
** Pypi (Python)
 +
** More coming soon. 
 +
* Includes a comprehensive auditing workflow for triaging results
 +
* Configurable notifications supporting Slack, Microsoft Teams, Webhooks, and Email
 +
* Supports standardized SPDX license ID’s and tracks license use by component
 +
* Supports importing [https://cyclonedx.org CycloneDX] and [https://spdx.org/ SPDX] Software Bill-of-Materials (SBOM) formats
 +
* Easy to read metrics for components, projects, and portfolio
 +
* Native support for Kenna Security, Fortify SSC, and ThreadFix
 +
* API-first design facilitates easy integration with other systems
 +
* API documentation available in OpenAPI format
 +
* Supports internally managed users, Active Directory/LDAP, and API Keys
 +
* Simple to install and configure. Get up and running in just a few minutes
  
Dependency-Track incorporates a web-based asset management system specifically designed to track applications and the components that each application relies on. Many organizations have legal or new product introduction requirements that require software engineering teams to provide documentation on the use of third-party components. Dependency-Track fulfills this requirement. Using the Dependency-Track database as the sole source of evidence, the system will check the National Vulnerability Database (NVD) to determine if the components contain known vulnerabilities. Dependency-Track embeds OWASP Dependency-Check, a tool used to automatically identify components and determine if they contain known vulnerabilities.
+
==Distributions==
 +
Dependency-Track supports the following three deployment options:
  
Dependency-Track varies from Dependency-Check in how evidence is obtained. While Dependency-Check relies on files on a filesystem or build environment to scan, Dependency-Track relies on user supplied metadata about each component. These two techniques are complimentary and fulfill different requirements. Often times, an organization may rely upon both systems for a comprehensive solution.
+
* Executable WAR
 +
* Conventional WAR
 +
* Docker container
  
 
==Licensing==
 
==Licensing==
OWASP Dependency-Track is licensed under the [http://www.gnu.org/licenses/gpl-3.0.txt GPLv3].
+
OWASP Dependency-Track is licensed under the [https://www.apache.org/licenses/LICENSE-2.0 Apache 2.0 license].
  
 +
| valign="top" style="padding-left:25px;width:300px;" |
 +
[[File:Dependency-Track-logo-300x100.png|250px|link=File:Dependency-Track-logo-large.png]]
 +
== Quick Download ==
  
| valign="top"  style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" |
+
Ready-to-deploy distributions are available from the Dependency-Track website
 +
* [https://dependencytrack.org/ Website]
 +
* [https://github.com/DependencyTrack Source Code]
  
== Features ==
+
== News and Events ==
  
* Hierarchical view of applications and associated versions
+
* [16 Dec 2019] v3.7.0 Released
* Document component vendors, versions, and licenses
+
* [01 Oct 2019] v3.6.1 Released
* Document dependencies between applications and components
+
* [28 Sep 2019] v3.6.0 Released
* Provides cross-reference capabilities
+
* [17 Jul 2019] v3.5.1 Released
* Automatically checks the NVD
+
* [07 Jun 2019] v3.5.0 Released
* Visualizes known vulnerabilities in each component and application
+
<!--
* Dynamically generates native Dependency-Check reports
+
* [16 Apr 2019] v3.4.1 Released
* Mirrors NVD data feed for faster access on Intranets
+
* [22 Dec 2018] v3.4.0 Released
* LDAP integration
+
* [13 Nov 2018] v3.3.1 Released
 +
* [25 Oct 2018] v3.3.0 Released
 +
* [02 Oct 2018] v3.2.2 Released
 +
* [21 Sep 2018] v3.2.1 Released
 +
* [06 Sep 2018] v3.2.0 Released
 +
* [19 Jun 2018] v3.1.0 Released
 +
* [02 May 2018] v3.0.4 Released
 +
* [13 Apr 2018] v3.0.3 Released
 +
* [30 Mar 2018] v3.0.2 Released
 +
* [27 Mar 2018] v3.0.1 Released
 +
* [26 Mar 2018] v3.0.0 Released
 +
* [08 Oct 2017] v3.0 [https://groups.google.com/forum/#!topic/dependency-track/0PUJI5rNgzI Updates to community]
 +
* [16 Jun 2017] [https://www.youtube.com/watch?v=88YAlzuDH04&t=50s Presentation at OWASP Summit 2017]
 +
-->
  
== Presentation ==
+
== Community Integrations ==
 +
* [https://github.com/ozonru/dtrack-audit dtrack-audit]
 +
* [https://github.com/pmckeown/dependency-track-maven-plugin Dependency-Track Maven plugin]
  
Coming soon
+
== Media ==
  
 +
[https://www.youtube.com/channel/UC8xdttysl3gNAQYvk1J9Efg OWASP Dependency-Track Channel (YouTube)]
  
== Project Leader ==
+
[https://www.appsecpodcast.org/2018/04/12/dependency-check-and-dependency-track-s03e13/ AppSec Podcast (S03E13)]
  
Steve Springett
+
== Documentation ==
  
 +
[https://docs.dependencytrack.org Dependency-Track Documentation]
  
== Related Projects ==
+
== Project Leader ==
  
* [[OWASP_Dependency_Check]]
+
[[User:Steve_Springett|Steve Springett]]
  
== Ohloh ==
+
== Related Projects ==
 
 
*https://www.ohloh.net/p/dependency-track
 
 
 
| valign="top"  style="padding-left:25px;width:200px;" |
 
 
 
== Quick Download ==
 
 
 
Dependency-Track is packaged as a Java Web Application Archive (WAR).
 
Downloads will be available Q4 2014
 
 
 
* [https://github.com/stevespringett/dependency-track Source Code]
 
 
 
 
 
 
 
== News and Events ==
 
* [1 Feb 2014] Testing
 
  
 +
* [[OWASP_Dependency_Check|OWASP Dependency-Check]]
  
 
==Classifications==
 
==Classifications==
Line 78: Line 116:
 
   {| width="200" cellpadding="2"
 
   {| width="200" cellpadding="2"
 
   |-
 
   |-
   | 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]]
+
   | align="center" valign="top" width="50%" | [[File:Mature_projects.png|100px|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Flagship_Projects|Flagship Project]]
   | align="center" valign="top" width="50%"| [[File:Owasp-builders-small.png|link=]]   
+
   | align="center" valign="middle" width="50%" | [[File:Owasp-builders-small.png|link=Builders]]  [[File:Owasp-defenders-small.png|link=Defenders]]
 
   |-
 
   |-
   | align="center" valign="top" width="50%"| [[File:Owasp-defenders-small.png|link=]]
+
   | colspan="2" align="center" valign="top" width="100%" | [[File:Project_Type_Files_TOOL.jpg|link=https://www.owasp.org/index.php/Category:OWASP_Tool]]
  |-
 
  | colspan="2" align="center"  | [[File:Project_Type_Files_CODE.jpg|link=]]
 
 
   |}
 
   |}
  
 
|}
 
|}
  
=FAQs=
+
=Screenshots=
  
; What are the system requirements?
+
<gallery widths="300px">
: Dependency-Track requires Java 7 or higher and can run on any Servlet container such as Tomcat or Jetty.
+
File:Dependency-Track_Screenshot-_Dashboard.png|Dashboard
 
+
File:Dependency-Track_Screenshot_-_Projects.png|Projects
; What type of database is used?
+
File:Dependency-Track_Screenshot_-_Vulnerable_Component.png|Vulnerable Component
: Dependency-Track embeds the H2 database engine. A standalone database server may optionally be used.
+
File:Dependency-Track_Screenshot_-_Vulnerability.png|Vulnerability
 
 
; How often is the NVD data updated?
 
: The NVD update is handled by Dependency-Check. Upon starting the servlet container for the first time, the entire contents of the NVD data feed is downloaded. Once downloaded, the system will attempt a delta update every 24 hours.
 
 
 
; What is the NVD mirror feature?
 
: For organizations that run Dependency-Check, it is possible to specify an alternate URL for the NIST/NVD data. This allows organizations with many Dependency-Check instances to take advantage of an internal mirror for faster access. The NIST/NVD data feed can be used by specifying http://HOSTNAME/CONTEXT/nist/FILENAME. For example: http://localhost:8080/dtrack/nist/nvdcve-2.0-2002.xml.gz. The NVD mirror is automatically updated every 24 hours.
 
  
=Screenshots=
 
<gallery widths="300px">
 
File:Dependency-Track-login-screenshot.png|Login screen
 
File:Dependency-Track-applications-screenshot.png|List of applications
 
File:Dependency-Track-application-version-screenshot.png|Dependencies in an application version
 
File:Dependency-Track-libraries-screenshot.png|List of libraries
 
File:Dependency-Track-library-new-screenshot.png|Creating a new library
 
File:Dependency-Track-search-screenshot.png|Search for library usage across all applications
 
 
</gallery>
 
</gallery>
 
  
 
= Acknowledgements =
 
= Acknowledgements =
This project would not be possible without the existence of the OWASP Dependency-Check project.
+
This project would not be possible without the existence of the [[OWASP_Dependency_Check]] project. Special thanks to Jeremy Long and the Dependency-Check core team for their hard work.
  
 
==Dependency-Track Core Team==
 
==Dependency-Track Core Team==
* Steve Springett
+
* [[User:Steve_Springett|Steve Springett]]
* Nikhil Chitlur Navakiran
 
  
 
==Sponsors==
 
==Sponsors==
Development of OWASP Dependency-Track sponsored in part by [http://www.axway.com Axway].
 
  
= Road Map and Getting Involved =
+
Dependency-Track is created by a worldwide group of volunteers who have dedicated their time, talent, or provided financial support to the project.
As of December 2014, the priorities are:
+
 
* Complete initial public release (v1.1)
+
The project would like to acknowledge and thank the following organizations that have helped move this project forward
* Create dashboard providing at-a-glace visibility into the use of vulnerable components
+
 
* Auto-populate Dependency-Track database with library identification from Dependency-Check
+
* [https://www.riskbasedsecurity.com/ Risk Based Security]
* Add support for tracking end-of-life dates
 
* Translate into other languages
 
* Promote use of Dependency-Track
 
  
Involvement in the development and promotion of Dependency-Track is actively encouraged!
+
OWASP Dependency-Track is an open source project, created by people who believe that the knowledge of using vulnerable components should be accessible to anyone with a desire to know. By supporting this project, you'll allow the team to outsource testing, infrastructure, further research and development efforts, and engage in outreach to various communities that would benefit from this technology.
You do not have to be a security expert in order to contribute.
 
Some of the ways you can help:
 
  
==Localization==
+
{{#widget:PayPal Donation
Are you fluent in another language? Can you help translate Dependency-Track into that language?
+
|target=_blank
 +
|budget=OWASP Dependency-Track
 +
}} 
  
==Front-End Gurus==
+
= Road Map =
Want to provide design or an implementation for a way to visualize data? There's a lot of potential opportunities in this area. Let us know if you can help.
+
Dependency-Track uses [https://github.com/DependencyTrack/dependency-track/milestones GitHub milestones] to track roadmaps and future releases.
  
==Feedback==
+
=Community=
Please use the [https://lists.owasp.org/mailman/listinfo/owasp_dependency_track_project Dependency-Track mailing list] for feedback:
+
Feedback from the community is always encouraged. Tell us what you like, what needs to be improved, and what features would be beneficial to your organization.
* What you like?
 
* What you don't like?
 
* What could be improved?
 
  
=Release Notes=
+
Three ways to get involved:
;1.1
+
* [https://github.com/DependencyTrack/dependency-track/issues GitHub Issues] - Collaborate on open issues
: Initial public release. Scheduled to be released in December 2014.
+
* [https://gitter.im/dependency-track/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge Gitter] - Chatroom built around GitHub
 +
* [https://owasp.slack.com/messages/proj-dependency-track Slack] - The Dependency-Track Slack channel
  
;1.0
+
Pull requests are highly encouraged. No contribution is too small. Do you know how to create test cases? Help us out. Want to write (or correct) some docs? Yes please... All contributions are appreciated.
: Initial proof-of-concept version to prove project viability and technical feasibility. This was a restricted availability release.
 
  
 
=Project About=
 
=Project About=
Line 160: Line 173:
 
__NOTOC__ <headertabs />  
 
__NOTOC__ <headertabs />  
  
[[Category:OWASP Project]] [[Category:OWASP_Builders]] [[Category:OWASP_Defenders]] [[Category:OWASP_Document]]
+
[[Category:OWASP Project]]  
 +
[[Category:OWASP_Builders]]  
 +
[[Category:OWASP_Defenders]]  
 +
[[Category:OWASP Tool]]
 +
[[Category:Flagship Projects]]

Latest revision as of 21:27, 16 December 2019

Flagship big.jpg

OWASP Dependency-Track

Dependency-Track is an intelligent Software Supply Chain Component Analysis platform that allows organizations to identify and reduce risk from the use of third-party and open source components. Dependency-Track takes a unique and highly beneficial approach by leveraging the capabilities of Software Bill-of-Materials (SBOM). This approach provides capabilities that traditional Software Composition Analysis (SCA) solutions cannot achieve.

Dependency-Track monitors component usage across all versions of every application in its portfolio in order to proactively identify risk across an organization. The platform has an API-first design and is ideal for use in Continuous Integration (CI) and Continuous Delivery (CD) environments.

Integrations.png

Features

  • Tracks application, library, framework, operating system, and hardware components
  • Tracks component usage across all version of every application in an organizations portfolio
  • Identifies multiple forms of risk including
    • Components with known vulnerabilities
    • Out-of-date components
    • Modified components
    • License risk
    • More coming soon...
  • Integrates with multiple sources of vulnerability intelligence including:
  • Ecosystem agnostic with built-in repository support for:
    • Gems (Ruby)
    • Hex (Erlang/Elixir)
    • Maven (Java)
    • NPM (Javascript)
    • NuGet (.NET)
    • Pypi (Python)
    • More coming soon.
  • Includes a comprehensive auditing workflow for triaging results
  • Configurable notifications supporting Slack, Microsoft Teams, Webhooks, and Email
  • Supports standardized SPDX license ID’s and tracks license use by component
  • Supports importing CycloneDX and SPDX Software Bill-of-Materials (SBOM) formats
  • Easy to read metrics for components, projects, and portfolio
  • Native support for Kenna Security, Fortify SSC, and ThreadFix
  • API-first design facilitates easy integration with other systems
  • API documentation available in OpenAPI format
  • Supports internally managed users, Active Directory/LDAP, and API Keys
  • Simple to install and configure. Get up and running in just a few minutes

Distributions

Dependency-Track supports the following three deployment options:

  • Executable WAR
  • Conventional WAR
  • Docker container

Licensing

OWASP Dependency-Track is licensed under the Apache 2.0 license.

Dependency-Track-logo-300x100.png

Quick Download

Ready-to-deploy distributions are available from the Dependency-Track website

News and Events

  • [16 Dec 2019] v3.7.0 Released
  • [01 Oct 2019] v3.6.1 Released
  • [28 Sep 2019] v3.6.0 Released
  • [17 Jul 2019] v3.5.1 Released
  • [07 Jun 2019] v3.5.0 Released

Community Integrations

Media

OWASP Dependency-Track Channel (YouTube)

AppSec Podcast (S03E13)

Documentation

Dependency-Track Documentation

Project Leader

Steve Springett

Related Projects

Classifications

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

This project would not be possible without the existence of the OWASP_Dependency_Check project. Special thanks to Jeremy Long and the Dependency-Check core team for their hard work.

Dependency-Track Core Team

Sponsors

Dependency-Track is created by a worldwide group of volunteers who have dedicated their time, talent, or provided financial support to the project.

The project would like to acknowledge and thank the following organizations that have helped move this project forward

OWASP Dependency-Track is an open source project, created by people who believe that the knowledge of using vulnerable components should be accessible to anyone with a desire to know. By supporting this project, you'll allow the team to outsource testing, infrastructure, further research and development efforts, and engage in outreach to various communities that would benefit from this technology.

Dependency-Track uses GitHub milestones to track roadmaps and future releases.

Feedback from the community is always encouraged. Tell us what you like, what needs to be improved, and what features would be beneficial to your organization.

Three ways to get involved:

  • GitHub Issues - Collaborate on open issues
  • Gitter - Chatroom built around GitHub
  • Slack - The Dependency-Track Slack channel

Pull requests are highly encouraged. No contribution is too small. Do you know how to create test cases? Help us out. Want to write (or correct) some docs? Yes please... All contributions are appreciated.

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 Dependency Track Project (home page)
Purpose: OWASP Dependency-Track is an intelligent Software Composition Analysis (SCA) application that allows organizations to automatically ingest and identify third-party components and any inherited vulnerabilities from their use.
License: OWASP Dependency-Track v3.0 and higher is available under the Apache 2.0 license (allows commercial use). OWASP Dependency-Track v1.0 and v2.0 were available under the GNU GPL v3 License (allows commercial use, but requires that modifications to your code stay open source, thus prohibiting proprietary forks of your project)
who is working on this project?
Project Leader(s):
  • Steve Springett @
Project Contributor(s):
  • Jeremy Long @
how can you learn more?
Project Pamphlet: Not Yet Created
Project Presentation:
Mailing list: Mailing List Archives
Project Roadmap: View
Key Contacts
  • Contact Steve Springett @ to contribute to this project
  • Contact Steve Springett @ to review or sponsor this project
current release
Source code available on GitHub
last reviewed release
Not Yet Reviewed


other releases