Recon MindMap (RMM)
Taking inspiration from the TBHM v4 recon edition by Jason Haddix
Workshop, I developed a command-line interface (CLI) tool that will simplify the task of organizing a list of domains and subdomains. The aim is to create a tool that can easily generate complex domain structures using mind mapping software such as Obsidian Mind Map or xmind.
Table of Contents
Installation
Build from source
You will need a working Go environment. Therefore, please follow How to install Go. Minimum version required is go1.19
make
Building Recon MindMap (RMM) binary to './rmm'
cp ./rmm /usr/bin/rmm
Build docker container
make docker
Usage
Run locally
./rmm
Usage:
rmm [options] <command>
Commands:
server Start a RMM server (TODO).
update Update RMM binary (TODO).
Options:
-f, --file Filename from where to read input.
-h, --help Print command line options.
-v, --version Print version information.
-o, --output Display result in different formats list|markdown|json|yaml|obsidian (default: list)
Run inside docker
docker run alevsk/rmm:latest -h 18:34:54
Usage:
rmm [options] <command>
Commands:
server Start a RMM server (TODO).
update Update RMM binary (TODO).
Options:
-f, --file Filename from where to read input.
-h, --help Print command line options.
-v, --version Print version information.
-o, --output Display result in different formats list|markdown|json|yaml (default: list)
Examples
Xmind
Provide a list of domains directly to RMM
and copy the result directly into your clipboard.
curl https://raw.githubusercontent.com/JamieFarrelly/Popular-Site-Subdomains/master/Microsoft.com.txt | ./rmm |
pbcopy
Open Xmind and paste the result directly into the mind map tool.
Obsidian Mind Map (plugin)
Provide a list of domains directly to RMM
, Obsidian requires the content to be in MarkDown
format for it to render (pass the -o markdown
flag), and copy the result directly into your clipboard.
curl https://raw.githubusercontent.com/JamieFarrelly/Popular-Site-Subdomains/master/Microsoft.com.txt | ./rmm -o markdown | pbcopy
Obsidian Canvas
Provide a list of domains directly to RMM
, Obsidian Canvas requires the content to be in JSON-based
format for it to render (pass the -o obsidian
flag), redirect output into a file and copy the file into your vault.
curl https://raw.githubusercontent.com/JamieFarrelly/Popular-Site-Subdomains/master/Microsoft.com.txt | ./rmm -o obsidian > rmm.canvas
cp rmm.canvas ~/Obsidian/Notes/rmm.canvas
Run inside docker
docker run -v $(pwd)/microsoft.txt:/tmp/microsoft.txt alevsk/rmm:latest -f /tmp/microsoft.txt -o json | jq .
Contributing
We welcome contributions to RMM! To contribute, please follow these guidelines:
- Fork the repository and create a new branch.
- Make your changes and submit a pull request.
- Ensure that your code adheres to our code style guidelines.
- Write tests for any new functionality you add.
Code of Conduct
We expect all contributors to follow our code of conduct. Please read the CODE_OF_CONDUCT.md file for more information.
Contact Information
If you have any questions or comments about RMM, please contact me at @alevsk.
Donating
This software is provided free of charge. If you would like to donate something to me, you can via PayPal. Thank you!