{"id":13845354,"url":"https://github.com/markgacoka/r3c0n","last_synced_at":"2025-07-05T16:36:53.079Z","repository":{"id":43351805,"uuid":"456455817","full_name":"markgacoka/r3c0n","owner":"markgacoka","description":"A tool for performing reconnaissance on web targets in Python","archived":false,"fork":false,"pushed_at":"2022-03-06T16:25:19.000Z","size":32,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-03T01:47:50.233Z","etag":null,"topics":["bugbounty","cybersecurity","library","python","recon","reconnaissance","reconnaissance-framework"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/r3c0n/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/markgacoka.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-02-07T10:22:08.000Z","updated_at":"2024-10-03T05:16:05.000Z","dependencies_parsed_at":"2022-09-13T16:03:03.402Z","dependency_job_id":null,"html_url":"https://github.com/markgacoka/r3c0n","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markgacoka%2Fr3c0n","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markgacoka%2Fr3c0n/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markgacoka%2Fr3c0n/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markgacoka%2Fr3c0n/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/markgacoka","download_url":"https://codeload.github.com/markgacoka/r3c0n/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244799815,"owners_count":20512329,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bugbounty","cybersecurity","library","python","recon","reconnaissance","reconnaissance-framework"],"created_at":"2024-08-04T17:03:21.508Z","updated_at":"2025-03-21T12:34:27.410Z","avatar_url":"https://github.com/markgacoka.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# r3c0n\nA tool for performing reconnaissance on web targets in Python.\n\n### Description\nThe tool is designed to integrate into your automation workflow for the reconnaissance stage. Given an engine and an in-scope domain, `r3c0n` returns the subdomains and directories associated with the domain.\n\n#### Supported Engines\n\n| Engine      | Importation | API Key |\n| ----------- | ----------- | ------- | \n| All engines | `from r3c0n.engines.all import All` | Free (default) |\n| Anubis      | `from r3c0n.engine.anubis import Anubis` | Free |\n| HackerTarget| `from r3c0n.engine.hacker_target import HackerTarget` | Free |\n| OpenThreat  | `from r3c0n.engine.open_threat import OpenThreat` | Free |\n| ProjectSonar| `from r3c0n.engine.project_sonar import ProjectSonar` | Free |\n| Riddler     | `from r3c0n.engine.riddler import Riddler` | Paid |\n| Shodan      | `from r3c0n.engine.shodan import Shodan` | Free Trial/Paid |\n| ThreatCrowd | `from r3c0n.engine.threatcrowd import ThreatCrowd` | Free |\n| VirusTotal  | `from r3c0n.engine.virustotal import VirusTotal` | Free/Paid |\n\nMore examples below at Usage.\n\n### Installation\n```\npip install r3c0n\n```\n\n### Run tests\n```\npython tests/test_cleanup.py \n```\n\n### Usage\n#### Single import\n```python\nfrom r3c0n.engines.anubis import Anubis\n\ndomain = 'coda.io'\nsubdomains = Anubis(domain).subdomains()\nprint(subdomains)\n\n\u003e ['www.coda.io', 'dev.coda.io', 'blog.coda.io', 'cdn.coda.io', 'staging.coda.io', 'help.coda.io', 'data.coda.io', 'go.coda.io', 'community.coda.io', 'status.coda.io', 'auth.coda.io', 'bounce.coda.io']\n```\n\n#### Multiple imports\n```python\nfrom r3c0n.engines.anubis import Anubis\nfrom r3c0n.engines.hacker_target import HackerTarget\n\ndomain = 'coda.io'\n\nsubdomains = set()\nsubdomains = set.union(subdomains, set(Anubis(domain).subdomains()))\nsubdomains = set.union(subdomains, set(HackerTarget(domain).subdomains()))\nprint(list(subdomains))\n\n\u003e ['bounce.coda.io', 'staging.coda.io', 'data.coda.io', 'cdn.coda.io', 'auth.coda.io', 'dev.coda.io', 'adhoc.coda.io', 'go.coda.io', 'coda.io', 'head.coda.io', 'community.coda.io', 'status.coda.io', 'blog.coda.io', 'www.coda.io', 'help.coda.io', 'maze.coda.io']\n```\n\n#### Running from the Terminal\n```bash\n# Prints the subdomains from all the engines on the terminal\nr3c0n -d coda.io --engines=all\n\n# Outputs the subdomains found from specific engines to a file\nr3c0n -d coda.io --engines=anubis,hackertarget --output subdomains.txt\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkgacoka%2Fr3c0n","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarkgacoka%2Fr3c0n","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkgacoka%2Fr3c0n/lists"}