OWASP Amass Project

From OWASP
Jump to: navigation, search
OWASP Project Header.jpg

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.

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.

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.

If users wish to maintain the information collected by the Amass software, data handlers interface with storage systems, such as Neo4j. Additional handlers can easily be implemented in order to support other databases or even custom solutions.

The project has software deliverables that are implemented in the Go programming language. These deliverables include a command-line tool, a local transform for 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

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

Classifications

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

News and Events

  • [4 Jul 2018] OWASP announced acceptance of the Amass project on Twitter.

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.

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.

Contributors

The first contributors to the project were:

  • Jeff Foley

Roadmap

As of July, 2018, the highest priorities for the next 12 months are:

  • Feature enhancement: Allow Amass to connect to proxies
  • Feature enhancement: Inform users of what Amass will do once an enumeration is executed
  • Feature enhancement: Add additional constraints to the enumeration process
  • Continue to update data sources that provide DNS names
  • Implement additional data handlers that save information gathered into various data stores
  • 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 infrastructure mapping written in Go
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
  • Contact the GPC to report a problem or concern about this project or to update information.
current release
Not Yet Published
last reviewed release
Not Yet Reviewed


other releases