{"id":13440219,"url":"https://github.com/mschwager/fierce","last_synced_at":"2025-05-14T03:07:04.422Z","repository":{"id":38899848,"uuid":"57169020","full_name":"mschwager/fierce","owner":"mschwager","description":"A DNS reconnaissance tool for locating non-contiguous IP space.","archived":false,"fork":false,"pushed_at":"2024-08-28T14:35:58.000Z","size":263,"stargazers_count":1671,"open_issues_count":7,"forks_count":208,"subscribers_count":52,"default_branch":"master","last_synced_at":"2025-04-01T21:17:09.334Z","etag":null,"topics":["discovered-domains","dns","domain","fierce","name-server","reconnaissance","subdomain","zone-transfers"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mschwager.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-04-26T23:34:51.000Z","updated_at":"2025-03-31T06:59:16.000Z","dependencies_parsed_at":"2022-08-09T06:31:44.277Z","dependency_job_id":"c80322ce-9eed-44dd-9b44-6d2163092f93","html_url":"https://github.com/mschwager/fierce","commit_stats":{"total_commits":126,"total_committers":11,"mean_commits":"11.454545454545455","dds":0.1428571428571429,"last_synced_commit":"99eca5247077572df96e361d615c689e6b32c519"},"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mschwager%2Ffierce","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mschwager%2Ffierce/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mschwager%2Ffierce/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mschwager%2Ffierce/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mschwager","download_url":"https://codeload.github.com/mschwager/fierce/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247935035,"owners_count":21020764,"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":["discovered-domains","dns","domain","fierce","name-server","reconnaissance","subdomain","zone-transfers"],"created_at":"2024-07-31T03:01:20.804Z","updated_at":"2025-04-08T22:19:49.792Z","avatar_url":"https://github.com/mschwager.png","language":"Python","readme":"# Fierce\n\n[![CI](https://github.com/mschwager/fierce/actions/workflows/ci.yml/badge.svg)](https://github.com/mschwager/fierce/actions/workflows/ci.yml)\n[![Python Versions](https://img.shields.io/pypi/pyversions/fierce.svg)](https://img.shields.io/pypi/pyversions/fierce.svg)\n[![PyPI Version](https://img.shields.io/pypi/v/fierce.svg)](https://img.shields.io/pypi/v/fierce.svg)\n\nFierce is a `DNS` reconnaissance tool for locating non-contiguous IP space.\n\nUseful links:\n\n* [Domain Name System (DNS)](https://en.wikipedia.org/wiki/Domain_Name_System)\n  * [Domain Names - Concepts and Facilities](https://tools.ietf.org/html/rfc1034)\n  * [Domain Names - Implementation and Specification](https://tools.ietf.org/html/rfc1035)\n  * [Threat Analysis of the Domain Name System (DNS)](https://tools.ietf.org/html/rfc3833)\n* [Name Servers (NS)](https://en.wikipedia.org/wiki/Domain_Name_System#Name_servers)\n* [State of Authority Record (SOA)](https://en.wikipedia.org/wiki/List_of_DNS_record_types#SOA)\n* [Zone Transfer](https://en.wikipedia.org/wiki/DNS_zone_transfer)\n  * [DNS Zone Transfer Protocol (AXFR)](https://tools.ietf.org/html/rfc5936)\n  * [Incremental Zone Transfer in DNS (IXFR)](https://tools.ietf.org/html/rfc1995)\n* [Wildcard DNS Record](https://en.wikipedia.org/wiki/Wildcard_DNS_record)\n\n# Overview\n\nFirst, credit where credit is due, `fierce` was\n[originally written](https://github.com/mschwager/fierce/blob/master/scripts/fierce.pl)\nby RSnake along with others at http://ha.ckers.org/. This is simply a\nconversion to Python 3 to simplify and modernize the codebase.\n\nThe original description was very apt, so I'll include it here:\n\n\u003e Fierce is a semi-lightweight scanner that helps locate non-contiguous\n\u003e IP space and hostnames against specified domains. It's really meant\n\u003e as a pre-cursor to nmap, unicornscan, nessus, nikto, etc, since all \n\u003e of those require that you already know what IP space you are looking \n\u003e for. This does not perform exploitation and does not scan the whole \n\u003e internet indiscriminately. It is meant specifically to locate likely \n\u003e targets both inside and outside a corporate network. Because it uses \n\u003e DNS primarily you will often find mis-configured networks that leak \n\u003e internal address space. That's especially useful in targeted malware.\n\n# Installing\n\n```\n$ python -m pip install fierce\n$ fierce -h\n```\n\nOR\n\n```\n$ git clone https://github.com/mschwager/fierce.git\n$ cd fierce\n$ python -m pip install dnspython==1.16.0\n$ python fierce/fierce.py -h\n```\n\n# Using\n\nLet's start with something basic:\n\n```\n$ fierce --domain google.com --subdomains accounts admin ads\n```\n\nTraverse IPs near discovered domains to search for contiguous blocks with the\n`--traverse` flag:\n\n```\n$ fierce --domain facebook.com --subdomains admin --traverse 10\n```\n\nLimit nearby IP traversal to certain domains with the `--search` flag:\n\n```\n$ fierce --domain facebook.com --subdomains admin --search fb.com fb.net\n```\n\nAttempt an `HTTP` connection on domains discovered with the `--connect` flag:\n\n```\n$ fierce --domain stackoverflow.com --subdomains mail --connect\n```\n\nExchange speed for breadth with the `--wide` flag, which looks for nearby\ndomains on all IPs of the [/24](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#IPv4_CIDR_blocks)\nof a discovered domain:\n\n```\n$ fierce --domain facebook.com --wide\n```\n\nZone transfers are rare these days, but they give us the keys to the DNS castle.\n[zonetransfer.me](https://digi.ninja/projects/zonetransferme.php) is a very\nuseful service for testing for and learning about zone transfers:\n\n```\n$ fierce --domain zonetransfer.me\n```\n\nTo save the results to a file for later use we can simply redirect output:\n\n```\n$ fierce --domain zonetransfer.me \u003e output.txt\n```\n\nInternal networks will often have large blocks of contiguous IP space assigned.\nWe can scan those as well:\n\n```\n$ fierce --dns-servers 10.0.0.1 --range 10.0.0.0/24\n```\n\nCheck out `--help` for further information:\n\n```\n$ fierce --help\n```\n\n# Developing\n\nFirst, install [`poetry`](https://python-poetry.org/docs/#installation) and development packages:\n\n```\n$ poetry install --with dev\n```\n\n## Testing\n\n```\n$ poetry run pytest\n```\n\n## Linting\n\n```\n$ poetry run flake8\n```\n\n## Coverage\n\n```\n$ poetry run pytest --cov\n```\n","funding_links":[],"categories":["Tools","Python","Uncategorized","\u003ca id=\"a76463feb91d09b3d024fae798b92be6\"\u003e\u003c/a\u003e侦察\u0026\u0026信息收集\u0026\u0026子域名发现与枚举\u0026\u0026OSINT","Network Tools","2. [↑](#-content) Pentesting","\u003ca id=\"170048b7d8668c50681c0ab1e92c679a\"\u003e\u003c/a\u003e工具","Domain and Network Recon","Network","BUG BOUNTY / SECURITY RESEARCH"],"sub_categories":["Network Tools","Uncategorized","\u003ca id=\"a695111d8e30d645354c414cb27b7843\"\u003e\u003c/a\u003eDNS","Network Reconnaissance Tools","[↑](#-content) 2.10 Reconnaissance","Linux CLI // Kali","Reconnaissance \u0026 Enumeration"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmschwager%2Ffierce","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmschwager%2Ffierce","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmschwager%2Ffierce/lists"}