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 Amass Project"

From OWASP
Jump to: navigation, search
(Project Description)
(OWASP Amass Project)
 
(52 intermediate revisions by 2 users not shown)
Line 6: Line 6:
 
| valign="top" style="border-right: 1px dotted gray;padding-right:25px;" |
 
| valign="top" style="border-right: 1px dotted gray;padding-right:25px;" |
 
==OWASP Amass Project==
 
==OWASP Amass Project==
In-depth DNS enumeration and network infrastructure mapping written in Go!
 
  
The OWASP Amass project was originally created when the project lead was showing organizations what they look like on the Internet, and he noticed that the tools available were returning incomplete results relative to what could be discovered manually. With the identification of this gap in capabilities for security experts, the Amass project was born.
+
In-depth DNS Enumeration, Attack Surface Mapping and External Asset Discovery!
 +
 
 +
The OWASP Amass Project has developed a tool to help information security professionals perform network mapping of attack surfaces and perform external asset discovery using open source information gathering and active reconnaissance techniques.
 +
 
 
==Description==
 
==Description==
The OWASP Amass project is focused on DNS enumeration and network infrastructure mapping techniques. These techniques include: obtaining subdomain names by scraping web pages, accessing web APIs, recursive brute forcing, crawling web archives, permuting/altering names, reverse DNS sweeping, and querying ASNs and netblocks associated with IP addresses. The information collected during an enumeration is used to build a network map of an organization's presence on the Internet.
 
  
Amass reaches out to over 30 passive data sources to learn about the DNS namespace of a target domain. By default, Amass validates all the names by performing DNS queries across a pool of resolver servers, which spreads out the activity generated by the enumeration. For all IP addresses collected during this process, Amass queries for associated netblocks and ASNs. As additional data sources become available to provide visibility of the Internet, implementations can quickly be developed within Amass due to the simple interfaces worked into the design.
+
The OWASP Amass project is focused on DNS enumeration and network infrastructure mapping techniques. These techniques include: obtaining subdomain names by scraping web pages, accessing web APIs, querying public databases, recursive brute forcing, crawling web archives, permuting/altering DNS names, reverse DNS sweeping, and querying ASNs and netblocks associated with IP addresses. The information collected during an enumeration is used to build a graph database that maps an organization's presence on the Internet.
  
When the enumeration is complete, in addition to typical text-based output, Amass is capable of outputting the results in several different formats accepted by popular visualization tools. This aids analysts and infosec experts attempting to quickly identify network layout and external networks being utilized by the target organization.
+
When the enumeration is complete, an Amass tool is capable of converting the results into several different formats accepted by popular network graph visualization engines. This aids analysts and infosec experts attempting to quickly identify network layout and external networks being utilized by the target organization.
  
If users wish to maintain the information collected by the Amass software, data handlers interface with storage systems, such as [https://neo4j.com/ Neo4j]. Additional handlers can easily be implemented in order to support other databases or even custom solutions.
+
The software is implemented in the Go programming language, and is portable across popular operating systems such as Windows, Linux, MacOS, FreeBSD, etc. The command-line tools can be obtained via several mechanisms described on the installation page, such as through a Go development environment, the release binaries, the Snap package manager for Linux systems and various packages maintained by others.
  
The project has software deliverables that are implemented in the Go programming language. These deliverables include a command-line tool, a local transform for [https://www.paterva.com/web7/buy/maltego-clients.php Maltego], and a Go package that can be imported into other software projects. The software is portable across popular operating systems such as Windows, Linux, MacOS, FreeBSD, etc. The command-line tool can be obtained via several mechanisms described on the installation page, such as through a Go development environment, the release binaries and the Snap package manager for Linux systems.
+
==Licensing==
  
==Licensing==
 
 
This program is free software: you can redistribute it and/or modify it under the terms of the [https://www.apache.org/licenses/LICENSE-2.0 Apache 2.0] license.  OWASP Amass and any contributions are Copyright © by Jeff Foley 2017.   
 
This program is free software: you can redistribute it and/or modify it under the terms of the [https://www.apache.org/licenses/LICENSE-2.0 Apache 2.0] license.  OWASP Amass and any contributions are Copyright © by Jeff Foley 2017.   
  
Line 26: Line 26:
  
 
== 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/SamanthaGroves Installation Package]
+
[[Https://github.com/OWASP/Amass Source Code]]
  
[https://github.com/SamanthaGroves Source Code]
+
[[Https://github.com/OWASP/Amass/releases What's New (Revision History)]]
  
[https://github.com/SamanthaGroves What's New (Revision History)]
+
[[Https://github.com/OWASP/Amass/issues Issue Tracker]]
 
 
[https://github.com/SamanthaGroves Documentation]
 
 
 
[https://github.com/SamanthaGroves Wiki Home Page]
 
 
 
[https://github.com/SamanthaGroves Issue Tracker]
 
 
 
[https://github.com/SamanthaGroves Slide Presentation]
 
 
 
[https://github.com/SamanthaGroves Video]
 
  
 
== Project Leader ==
 
== Project Leader ==
Jeff Foley
+
[https://www.owasp.org/index.php/User:Caffix Jeff Foley]
  
== Related Projects ==
+
  {| width="200" cellpadding="1"
<span style="color:#ff0000">
+
  |-
This is where you can link to other OWASP Projects that are similar to yours.
+
  | colspan="1" align="center" | [[File:All_your_systems2.png]]
</span>
+
  |}
* [[OWASP_Code_Project_Template]]
 
* [[OWASP_Documentation_Project_Template]]
 
  
 
==Classifications==
 
==Classifications==
Line 62: Line 47:
 
   | 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]]
 
   |-
 
   |-
   | 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]]
+
   | rowspan="2" align="center" valign="top" width="50%" | [[File:Midlevel_projects.png|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Lab_Projects|Lab Project]]
 
   | align="center" valign="top" width="50%" | [[File:Owasp-builders-small.png|link=Builders]]   
 
   | align="center" valign="top" width="50%" | [[File:Owasp-builders-small.png|link=Builders]]   
 
   |-
 
   |-
Line 70: Line 55:
  
 
== News and Events ==
 
== News and Events ==
<span style="color:#ff0000">
+
 
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.  
+
* [31 Jul 2019] OWASP Amass Project shows up in DarkReading "8 Free Tools to Be Showcased at Black Hat and DEF CON" article.
</span>
+
 
* [12 Feb 2013] Support for Spanish is now available with this release.
+
* [1 Jun 2019] Anthony Rhodes and Jeff Foley talked about advanced features and configuration options of Amass at the Bugcrowd LevelUp 0x04 virtual conference.
* [11 Jan 2014] The 1.0 stable version has been released! Thanks everyone for your feedback and code fixes that made this happen!
+
 
* [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.
+
* [8 May 2019] Jeff Foley and Anthony Rhodes talked about Amass at the OWASP Rochester Chapter.
* [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.
+
 
* [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.    
+
* [1 May 2019] Jeff Foley talked about "Discovering Exposure on the Internet" on the CSIAC Webinar.
 +
 
 +
* [23 Mar 2019] Jeff Foley and Anthony Rhodes talked about Amass at BSidesROC.
 +
 
 +
* [8 Feb 2019] Adobe announced its integration of OWASP Amass with their Marinus project on Twitter.
 +
 
 +
* [28 Nov 2018] OWASP Seattle Chapter meeting (hosted by T-Mobile) demonstration (remote) of the OWASP Amass project.
  
 
|}
 
|}
  
=FAQs=
+
==How can I participate in the project?==
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
All you have to do is make the Project Leader aware of your available time to [https://github.com/OWASP/Amass/blob/master/CONTRIBUTING.md contribute to the project]. It is also important to let the leader 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 leader is key.  
<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?==
+
==If I am not a programmer can I participate in the 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.
 
  
==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. The project needs different skills and expertise at different times during its development. Currently, we are looking for researchers, programmers, writers, and graphic designers.  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 researchers, writers, graphic designers, and a project administrator.  See the Road Map and Getting Involved tab for more details.
 
  
= Acknowledgements =
 
 
==Contributors==
 
==Contributors==
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
The Founder and Project Leader:
<span style="color:#ff0000">
 
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].
+
* '''Jeff Foley'''
  
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
+
Contributors that have joined the project include:
* [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'''
+
* '''Mikail Tunç'''
 +
 
 +
* '''Wael Nasreddine'''
 +
 
 +
* '''Randall Marsden'''
 +
 
 +
* '''Anthony Rhodes'''
 +
 
 +
* '''Adam Zinger'''
 +
 
 +
* '''Daniel Martin'''
 +
 
 +
* '''Benjamin Murray'''
 +
 
 +
* '''Shane Ditton'''
 +
 
 +
* '''Semtex Oliviero'''
 +
 
 +
* '''Daniel Hauenstein'''
 +
 
 +
* '''John Daniel Leon'''
 +
 
 +
* '''Daniel Miessler'''
 +
 
 +
* '''Kian Jamali'''
 +
 
 +
* '''Nikos Gkogkos'''
 +
 
 +
* '''Jason Haddix'''
 +
 
 +
* '''Julio Hawthorne'''
  
 
= Road Map and Getting Involved =
 
= Road Map and Getting Involved =
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
==Roadmap==
<span style="color:#ff0000">
 
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.
 
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.
 
</span>
 
  
==Roadmap==
+
As of <strong>January, 2019, the highest priorities for the next 6 months</strong> are:
As of <strong>November, 2013, the highest priorities for the next 6 months</strong> are:
 
<strong>
 
* Complete the first draft of the Tool Project Template
 
* Get other people to review the Tool Project Template and provide feedback
 
* Incorporate feedback into changes in the Tool Project Template
 
* Finalize the Tool Project template and have it reviewed to be promoted from an Incubator Project to a Lab Project
 
</strong>
 
  
Subsequent Releases will add
+
* For version 3.0.0, update the user interfaces (UI) available
<strong>
+
* Feature enhancement: Allow Amass to connect to proxies
* Internationalization Support
+
* Feature enhancement: Inform users of what Amass will do once an enumeration is executed
* Additional Unit Tests
+
* Feature enhancement: Clean lists of DNS resolvers provided by users
* Automated Regression tests
+
* Continue to update data sources that provide DNS names
</strong>
+
* Implement documentation regarding Amass architecture and the enumeration process
 +
* Develop slides and videos to serve as demonstration material
  
 
==Getting Involved==
 
==Getting Involved==
Involvement in the development and promotion of <strong>Tool Project Template</strong> is actively encouraged!
+
 
You do not have to be a security expert or a programmer to contribute.
+
There are many ways you can support the OWASP Amass project. Below are some of the roles that definitely need additional support:
Some of the ways you can help are as follows:
 
  
 
===Coding===
 
===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===
+
We could implement some of the later items on the roadmap sooner if some Go network programmers wanted to join the project.
Are you fluent in another language? Can you help translate the text strings in the <strong>Tool Project Template</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.
 
===Feedback===
 
Please use the [https://lists.owasp.org/mailman/listinfo/OWASP_Tool_Project_Template Tool Project Template project mailing list] for feedback about:
 
<ul>
 
<li>What do like?</li>
 
<li>What don't you like?</li>
 
<li>What features would you like to see prioritized on the roadmap?</li>
 
</ul>
 
  
=Minimum Viable Product=
+
Amass leverages concurrency and produces quite a bit of network traffic, which can always use additional testing. Anyone interested in stressing the software and helping to improve its quality is welcome.
<!-- 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.
+
===Writing===
 
 
It would also be ideal if the sample text was translated into different languages.
 
  
 +
The project could currently use technical writers to join the team in order to capture how the software works.
 
=Project About=
 
=Project About=
Addtional Instructions for making changes:
 
 
The About 'tab' on that page is done with a MediaWiki template.  If you log into the wiki page for your project and click the "Edit" button/link/tab in the top-right between 'Read' and 'View History', you'll see the edit page for the main body of your project page.
 
 
The Project About template takes 'input' that are key/value pairs where you'll need to edit the stuff after the equals (=) like:
 
project_name =Place your project name here.
 
 
 
{{Template:Project About
 
{{Template:Project About
 
| project_name =OWASP Amass
 
| project_name =OWASP Amass
| project_description = Provide Description
+
| project_description = In-depth DNS Enumeration and Network Mapping
 
| project_license = Apache License 2.0
 
| project_license = Apache License 2.0
 
| leader_name1 = Jeff Foley
 
| leader_name1 = Jeff Foley
 
| leader_email1 = [email protected]
 
| leader_email1 = [email protected]
| leader_username1 = jfolery
+
| leader_username1 = caffix
| mailing_list_name = https://lists.owasp.org/mailman/listinfo/owasp-amass
+
| mailing_list_name =
 
}}   
 
}}   
  

Latest revision as of 01:42, 5 August 2019

OWASP Project Header.jpg

OWASP Amass Project

In-depth DNS Enumeration, Attack Surface Mapping and External Asset Discovery!

The OWASP Amass Project has developed a tool to help information security professionals perform network mapping of attack surfaces and perform external asset discovery using open source information gathering and active reconnaissance techniques.

Description

The OWASP Amass project is focused on DNS enumeration and network infrastructure mapping techniques. These techniques include: obtaining subdomain names by scraping web pages, accessing web APIs, querying public databases, recursive brute forcing, crawling web archives, permuting/altering DNS names, reverse DNS sweeping, and querying ASNs and netblocks associated with IP addresses. The information collected during an enumeration is used to build a graph database that maps an organization's presence on the Internet.

When the enumeration is complete, an Amass tool is capable of converting the results into several different formats accepted by popular network graph visualization engines. This aids analysts and infosec experts attempting to quickly identify network layout and external networks being utilized by the target organization.

The software is implemented in the Go programming language, and is portable across popular operating systems such as Windows, Linux, MacOS, FreeBSD, etc. The command-line tools can be obtained via several mechanisms described on the installation page, such as through a Go development environment, the release binaries, the Snap package manager for Linux systems and various packages maintained by others.

Licensing

This program is free software: you can redistribute it and/or modify it under the terms of the Apache 2.0 license. OWASP Amass and any contributions are Copyright © by Jeff Foley 2017.

Project Resources

[Source Code]

[What's New (Revision History)]

[Issue Tracker]

Project Leader

Jeff Foley

All your systems2.png

Classifications

Project Type Files TOOL.jpg
Lab Project Owasp-builders-small.png

News and Events

  • [31 Jul 2019] OWASP Amass Project shows up in DarkReading "8 Free Tools to Be Showcased at Black Hat and DEF CON" article.
  • [1 Jun 2019] Anthony Rhodes and Jeff Foley talked about advanced features and configuration options of Amass at the Bugcrowd LevelUp 0x04 virtual conference.
  • [8 May 2019] Jeff Foley and Anthony Rhodes talked about Amass at the OWASP Rochester Chapter.
  • [1 May 2019] Jeff Foley talked about "Discovering Exposure on the Internet" on the CSIAC Webinar.
  • [23 Mar 2019] Jeff Foley and Anthony Rhodes talked about Amass at BSidesROC.
  • [8 Feb 2019] Adobe announced its integration of OWASP Amass with their Marinus project on Twitter.
  • [28 Nov 2018] OWASP Seattle Chapter meeting (hosted by T-Mobile) demonstration (remote) of the OWASP Amass project.

How can I participate in the project?

All you have to do is make the Project Leader aware of your available time to contribute to the project. It is also important to let the leader 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 leader is key.

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

Yes, you can certainly participate in the project if you are not a programmer. The project needs different skills and expertise at different times during its development. Currently, we are looking for researchers, programmers, writers, and graphic designers. See the Road Map and Getting Involved tab for more details.

Contributors

The Founder and Project Leader:

  • Jeff Foley


Contributors that have joined the project include:

  • Mikail Tunç
  • Wael Nasreddine
  • Randall Marsden
  • Anthony Rhodes
  • Adam Zinger
  • Daniel Martin
  • Benjamin Murray
  • Shane Ditton
  • Semtex Oliviero
  • Daniel Hauenstein
  • John Daniel Leon
  • Daniel Miessler
  • Kian Jamali
  • Nikos Gkogkos
  • Jason Haddix
  • Julio Hawthorne

Roadmap

As of January, 2019, the highest priorities for the next 6 months are:

  • For version 3.0.0, update the user interfaces (UI) available
  • Feature enhancement: Allow Amass to connect to proxies
  • Feature enhancement: Inform users of what Amass will do once an enumeration is executed
  • Feature enhancement: Clean lists of DNS resolvers provided by users
  • Continue to update data sources that provide DNS names
  • Implement documentation regarding Amass architecture and the enumeration process
  • Develop slides and videos to serve as demonstration material

Getting Involved

There are many ways you can support the OWASP Amass project. Below are some of the roles that definitely need additional support:

Coding

We could implement some of the later items on the roadmap sooner if some Go network programmers wanted to join the project.

Testing

Amass leverages concurrency and produces quite a bit of network traffic, which can always use additional testing. Anyone interested in stressing the software and helping to improve its quality is welcome.

Writing

The project could currently use technical writers to join the team in order to capture how the software works.

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 Amass
Purpose: In-depth DNS Enumeration and Network Mapping
License: Apache License 2.0
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
Not Yet Published
last reviewed release
Not Yet Reviewed


other releases