OWASP Amass Project

Jump to: navigation, search
OWASP Project Header.jpg

OWASP Amass Project

In-depth DNS Enumeration and Network 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.


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 DNS resolvers, 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, an Amass suite 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 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 command-line tools 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 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 package managers maintained by other projects.


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


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

News and Events

  • [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.
  • [18 Nov 2018] The Nix package manager added the OWASP Amass project to its package collection.
  • [18 Oct 2018] DragonFly BSD added the OWASP Amass project to DPorts package management.
  • [12 Oct 2018] OWASP showcased the Amass project at AppSec USA 2018.
  • [11 Sep 2018] FreeBSD added the OWASP Amass project to the Ports package collection.
  • [10 Sep 2018] OWASP Amass project was added to the Arch Linux User Repository (AUR).
  • [6 Sep 2018] OWASP London Chapter meeting (hosted by Facebook) lightning talk (remote) to introduce the OWASP Amass project.
  • [4 Jul 2018] OWASP announced acceptance of the Amass project on Twitter.

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.


The Founder and Project Lead:

  • Jeff Foley

Contributors that have joined the project include:

  • Mikail Tunç
  • Wael Nasreddine
  • Randall Marsden
  • Anthony Rhodes
  • Adam Zinger
  • Philip Drakopoulos
  • Daniel Martin
  • Benjamin Murray
  • Shane Ditton


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:


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


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.


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

What does this OWASP project offer you?
What releases are available for this project?
what is this project?
Name: OWASP Amass
Purpose: In-depth DNS Enumeration and Network 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
current release
Not Yet Published
last reviewed release
Not Yet Reviewed

other releases