Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/postmodern/ruby-amass

A Ruby interface to amass.
https://github.com/postmodern/ruby-amass

amass amass-parser command-mapper infosec ruby

Last synced: 24 days ago
JSON representation

A Ruby interface to amass.

Awesome Lists containing this project

README

        

# ruby-amass

[![CI](https://github.com/postmodern/ruby-amass/actions/workflows/ruby.yml/badge.svg)](https://github.com/postmodern/ruby-amass/actions/workflows/ruby.yml)
[![Gem Version](https://badge.fury.io/rb/ruby-amass.svg)](https://badge.fury.io/rb/ruby-amass)

* [Source](https://github.com/postmodern/ruby-amass/)
* [Issues](https://github.com/postmodern/ruby-amass/issues)
* [Documentation](http://rubydoc.info/gems/ruby-amass/frames)

## Description

A Ruby interface to [amass], an in-depth Attack Surface Mapping and Asset
Discovery tool.

## Features

* Provides a [Ruby interface][Amass::Command] for running the `amass` command.
* Supports [parsing][Amass::OutputFile] `amass` `.txt` and `.json` output files.

[Amass::Command]: https://rubydoc.info/gems/ruby-amass/Amass/Command
[Amass::OutputFile]: https://rubydoc.info/gems/ruby-amass/Amass/OutputFile

## Examples

Run `amass enum -d example.com -dir ...` from Ruby:

```ruby
require 'amass/command'

Amass::Command.run(enum: {domain: 'example.com', output_dir: '/path/to/output/dir'})
```

Parser an `amass` JSON file:

```ruby
require 'amass/output_file'

output_file = Amass::OutputFile.new('/path/to/amass.json')
output_file.each do |hostname|
p hostname
end
```

```
#, #], @tag="cert", @sources=["CertSpotter"]>
#, #], @tag="cert", @sources=["CertSpotter"]>
#], @tag="api", @sources=["Sublist3rAPI"]>
#], @tag="api", @sources=["Sublist3rAPI"]>
#], @tag="api", @sources=["Sublist3rAPI"]>
#], @tag="api", @sources=["Sublist3rAPI"]>
#], @tag="api", @sources=["Sublist3rAPI"]>
#], @tag="api", @sources=["Sublist3rAPI"]>
#], @tag="alt", @sources=["Alterations"]>
#], @tag="alt", @sources=["Alterations"]>
#], @tag="alt", @sources=["Alterations"]>
#], @tag="alt", @sources=["Alterations"]>
#], @tag="alt", @sources=["Alterations"]>
#], @tag="alt", @sources=["Alterations"]>
```

## Requirements

* [ruby] >= 2.0.0
* [amass] >= 3.0.0
* [command_mapper] ~> 0.1

[ruby]: https://www.ruby-lang.org/
[command_mapper]: https://github.com/postmodern/command_mapper.rb#readme

## Install

```shell
$ gem install ruby-amass
```

### gemspec

```ruby
gemspec.add_dependency 'ruby-amass', '~> 0.1'
```

### Gemfile

```ruby
gem 'ruby-amass', '~> 0.1'
```

## License

Copyright (c) 2021 Hal Brodigan

See {file:LICENSE.txt} for license information.

[amass]: https://github.com/OWASP/Amass#readme