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

OWASP Amass Project

From OWASP
Revision as of 20:55, 20 November 2018 by Caffix (talk | contribs) (Contributors)

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.

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 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, 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 tools 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

All your systems2.png

Classifications

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

News and Events

  • [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.

Contributors

The first contributors to the project were:

  • Jeff Foley


Additional contributors that have joined the project include:

  • Mikail Tunç
  • Wael Nasreddine

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 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