
reconFTW एक उपकरण है जो लक्ष्य डोमेन पर स्वचालित रीकॉन करने और स्कैनिंग करके कमजोरियों का पता लगाने के लिए सर्वोत्तम उपकरणों का सेट चलाता है।
reconFTW एक शक्तिशाली स्वचालित टोही हथियार है जो सुरक्षा शोधकर्ताओं और पैनेट्रेशन टेस्टर्स के लिए बनाया गया है। यह किसी लक्ष्य के बारे में खुफिया जानकारी एकत्र करने की प्रक्रिया को सरल बनाता है, जिसमें उपडोमेन गणना, कमज़ोरी स्कैनिंग, OSINT और बहुत कुछ शामिल है। मॉड्यूलर डिज़ाइन, व्यापक कॉन्फ़िगरेशन विकल्पों और AX Framework के माध्यम से वितरित स्कैनिंग के समर्थन के साथ, reconFTW कुशलतापूर्वक व्यापक परिणाम प्रदान करने के लिए बनाया गया है।
reconFTW निष्क्रिय और सक्रिय उपडोमेन खोज, वेब कमज़ोरी जाँच (जैसे XSS, SSRF, SQLi), OSINT, निर्देशिका फज़िंग, पोर्ट स्कैनिंग और स्क्रीनशॉट सहित कई प्रकार की तकनीकों का उपयोग करता है। यह कवरेज और सटीकता को अधिकतम करने के लिए अत्याधुनिक टूल्स और API के साथ एकीकृत होता है, यह सुनिश्चित करता है कि आप अपने टोही प्रयासों में आगे रहें।
प्रमुख विशेषताएँ:
अस्वीकरण: बिना पूर्व सहमति के लक्ष्यों पर हमला करने के लिए reconFTW का उपयोग अवैध है। सभी लागू कानूनों का पालन करना उपयोगकर्ता की जिम्मेदारी है। डेवलपर्स इस टूल के दुरुपयोग या इसके कारण होने वाले नुकसान के लिए कोई जिम्मेदारी नहीं लेते। जिम्मेदारी से उपयोग करें।
reconFTW कई सुविधाओं से भरा हुआ है ताकि टोही को संपूर्ण और कुशल बनाया जा सके। नीचे इसकी क्षमताओं का विस्तृत विवरण दिया गया है, जिसे स्क्रिप्ट और कॉन्फ़िगरेशन में नवीनतम कार्यक्षमता को दर्शाने के लिए अद्यतन किया गया है।
IPV6_SCAN सक्षम हो, तो वैकल्पिक रूप से खोजे गए IPv6 लक्ष्यों की गणना और स्कैन करना।nuclei -dast टेम्पलेट चलाता है।--quick-rescan / QUICK_RESCAN).hotlist.txt).SHOW_COMMANDS को टॉगल करें।reconFTW एक मॉड्यूलर आर्किटेक्चर का उपयोग करता है। मुख्य प्रवेश बिंदु (reconftw.sh) तर्क पार्सिंग को संभालता है और modules/ निर्देशिका से 8 विशेष मॉड्यूल को स्रोत करता है।
reconftw/ ├── reconftw.sh # Entry point — arg parsing, module loading, dispatch ├── reconftw.cfg # Default configuration ├── install.sh # Installer ├── Makefile # Data management, lint, fmt, test targets ├── modules/ │ ├── core.sh # Lifecycle, logging, notifications, cleanup (1024 lines) │ ├── modes.sh # Scan modes, argument parsing, help (902 lines) │ ├── subdomains.sh # Subdomain enumeration (1938 lines) │ ├── web.sh # Web analysis, fuzzing, JS checks (1712 lines) │ ├── vulns.sh # Vulnerability scanning (926 lines) │ ├── osint.sh # OSINT functions (500 lines) │ ├── axiom.sh # Ax/Axiom fleet helpers (143 lines) │ └── utils.sh # Utilities, sanitization, validation (508 lines) ├── tests/ │ ├── run_tests.sh # Test runner │ ├── unit/ # bats-core unit tests │ ├── integration/ # Integration tests │ └── fixtures/ # Test data ├── Docker/ │ └── Dockerfile # Official Docker image └── Terraform/ # AWS deployment
### मॉड्यूल संदर्भ
| मॉड्यूल | पंक्तियाँ | उद्देश्य |
|--------|------:|---------|
| `core.sh` | 1024 | जीवनचक्र प्रबंधन, लॉगिंग, सूचनाएं, क्लीनअप ट्रैप्स |
| `modes.sh` | 902 | स्कैन मोड परिभाषाएं, आर्गुमेंट पार्सिंग, सहायता आउटपुट |
| `subdomains.sh` | 1938 | सभी सबडोमेन गणना फंक्शन |
| `web.sh` | 1712 | वेब विश्लेषण, फज़िंग, जेएस विश्लेषण, सीएमएस पहचान |
| `vulns.sh` | 926 | कमजोरियों का स्कैनिंग (XSS, SQLi, SSRF, आदि) |
| `osint.sh` | 500 | OSINT फंक्शन (WHOIS, ईमेल, डॉर्क्स, मेटाडेटा) |
| `utils.sh` | 508 | साझा उपयोगिताएं, इनपुट स्वच्छता, मान्यता |
| `axiom.sh` | 143 | Ax/Axiom वितरित फ्लीट प्रबंधन |
`--source-only` फ़्लैग मुख्य लॉजिक को निष्पादित किए बिना `reconftw.sh` को सोर्स करने की अनुमति देता है, जिससे व्यक्तिगत फंक्शन का यूनिट परीक्षण संभव होता है।
---
## 💿 स्थापना
reconFTW विभिन्न वातावरणों के अनुरूप कई स्थापना विधियों का समर्थन करता है। सुनिश्चित करें कि आपके पास पर्याप्त डिस्क स्थान (कम से कम 10 GB अनुशंसित) और एक स्थिर इंटरनेट कनेक्शन है।
### त्वरित आरंभ
1) क्लोन करें और स्थापित करें```yaml
git clone https://github.com/six2dez/reconftw
cd reconftw
./install.sh --verbose
3) न्यूनतम रन (केवल निष्क्रिय फुटप्रिंट)```bash
./reconftw.sh -d example.com -p
Tip: re-run
./install.sh --toolsआदेश बाद में पुनः चलाएँ ताकि सिस्टम पैकेजों को पुनः स्थापित किए बिना टूलचेन को ताज़ा किया जा सके।
आवश्यक शर्तें:
install_golang डिफ़ॉल्ट रूप से reconftw.cfg में सक्षम)।sudo echo "${USERNAME} ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee -a /etc/sudoers.d/reconFTW
चरण: ```bash git clone https://github.com/six2dez/reconftw cd reconftw ./install.sh ./reconftw.sh -d target.com -r
नोट्स:
install.sh स्क्रिप्ट निर्भरताएँ, उपकरण स्थापित करती है और पथों (GOROOT, GOPATH, PATH) को कॉन्फ़िगर करती है।reconftw.cfg में install_golang=false सेट करें।./install.sh --tools चलाएँ ताकि सिस्टम पैकेजों को छुए बिना Go बाइनरीज़, pipx पैकेज और रिपॉजिटरीज़ को रिफ्रेश किया जा सके।लक्ष्यों की सूची के लिए, सूची फ़ाइल को कंटेनर में बाइंड करें और कंटेनर के अंदर के पथ का संदर्भ दें: ```bash
docker run -it --rm
-v "${PWD}/domains.txt:/reconftw/domains.txt:ro"
-v "${PWD}/OutputFolder/:/reconftw/Recon/"
six2dez/reconftw:main -l /reconftw/domains.txt -r
3. **परिणाम देखें**:
- परिणाम होस्ट पर `OutputFolder` निर्देशिका में सहेजे जाते हैं (कंटेनर के अंदर नहीं)।
4. **अनुकूलन**:
- Docker इमेज को संशोधित करें या अपनी खुद की बनाएँ; [Docker गाइड](https://github.com/six2dez/reconftw/wiki/4.-Docker) देखें।
- कस्टम बिल्ड में Ax टूलिंग को छोड़ने के लिए, `--build-arg INSTALL_AXIOM=false` पास करें।
- यदि आप सूचनाओं का उपयोग करते हैं तो अपने notify कॉन्फ़िग को कंटेनर के अंदर `~/.config/notify/provider-config.yaml` पर माउंट करें।
5. **रनटाइम पर गुप्त कुंजियाँ**:
API कुंजियाँ और गुप्त कुंजियाँ पर्यावरण चर के माध्यम से पास करें — उन्हें इमेज में कभी बेक न करें: ```bash
docker run -it --rm \
-e SHODAN_API_KEY="your-key" \
-e PDCP_API_KEY="your-projectdiscovery-key" \
-e COLLAB_SERVER="your-server" \
-e XSS_SERVER="your-server" \
-v "${PWD}/OutputFolder/:/reconftw/Recon/" \
six2dez/reconftw:main -d example.com -r
See SECURITY.md for full secrets management guidance.
स्वास्थ्य जांच:
Docker इमेज में एक अंतर्निहित HEALTHCHECK शामिल है जो हर 60 सेकंड में ./reconftw.sh --health-check चलाता है। आप इसे मैन्युअल रूप से भी चला सकते हैं: ```bash
docker exec ./reconftw.sh --health-check
brew install bash चलाएँ, एक नया टर्मिनल खोलें, और ./install.sh को पुनः चलाएँ।gtimeout प्रदान करता है brew install coreutils के माध्यम से। स्क्रिप्टें अब इसे स्वचालित रूप से पहचानती और उपयोग करती हैं।reconftw.cfg में upgrade_tools=true के साथ पुनः चलाएँ, ./install.sh --tools निष्पादित करें, या लापता टूल को मैन्युअल रूप से स्थापित करें (त्रुटि में उसका नाम बताया जाएगा)।/usr/local/bin में कॉपी किया जाता है। यदि आप ऐसा नहीं चाहते हैं, तो सुनिश्चित करें कि ~/go/bin आपके PATH में है।~/nuclei-templates हटाएँ और पुनः चलाएँ।subfinder: ~/.config/subfinder/provider-config.yaml~/Tools/.github_tokens (प्रति पंक्ति एक)~/Tools/.gitlab_tokens (प्रति पंक्ति एक)reconftw.cfg या env var में WHOISXML_API सेट करेंasnmap): env/config में PDCP_API_KEY सेट करें (ASN_ENUM अनसेट होने पर छोड़ देता है)~/.config/notify/provider-config.yaml में notify कॉन्फ़िगर करेंCOLLAB_SERVER env/cfg सेट करेंXSS_SERVER env/cfg सेट करेंmake lint/make fmt के लिए shellcheck और shfmt (वैकल्पिक)reconftw.cfg फ़ाइल reconFTW के पूरे निष्पादन को नियंत्रित करती है। यह निम्नलिखित के बारीक अनुकूलन की अनुमति देती है:
tools, resolvers, fuzz_wordlist).secrets.cfg के माध्यम से Shodan, WHOISXML आदि के लिए कुंजियाँ कॉन्फ़िगर करें (देखें SECURITY.md).OSINT, SUBDOMAINS_GENERAL, VULNS_GENERAL).FFUF_THREADS, HTTPX_RATELIMIT).ADAPTIVE_RATE_LIMIT, MIN_RATE_LIMIT, MAX_RATE_LIMIT).उदाहरण कॉन्फ़िगरेशन:```bash #############################################
#############################################
tools=$HOME/Tools # Path installed tools if [[ -z "${SCRIPTPATH:-}" ]]; then if [[ -n "${BASH_SOURCE[0]:-}" ]]; then SCRIPTPATH="$( cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 ; pwd -P )" # Get current script's path else SCRIPTPATH="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )" # Get current script's path fi fi _detected_shell="${SHELL:-/bin/bash}" profile_shell=".$(basename "${_detected_shell}")rc" # Get current shell profile if git rev-parse --is-inside-work-tree >/dev/null 2>&1; then reconftw_version="$(git rev-parse --abbrev-ref HEAD)-$(git describe --tags 2>/dev/null || git rev-parse --short HEAD)" else reconftw_version="standalone" fi # Fetch current reconftw version DATA_DIR="${SCRIPTPATH}/data" WORDLISTS_DIR="${DATA_DIR}/wordlists" PATTERNS_DIR="${DATA_DIR}/patterns" generate_resolvers=false # Generate custom resolvers with dnsvalidator update_resolvers=true # Fetch and rewrite resolvers from trickest/resolvers before DNS resolution resolvers_url="https://raw.githubusercontent.com/trickest/resolvers/main/resolvers.txt" resolvers_trusted_url="https://gist.githubusercontent.com/six2dez/ae9ed7e5c786461868abd3f2344401b6/raw/trusted_resolvers.txt" RESOLVER_DOWNLOAD_CONNECT_TIMEOUT=10 # Seconds to wait for resolver download TCP connection RESOLVER_DOWNLOAD_MAX_TIME=120 # Hard cap in seconds for resolver downloads RESOLVER_DOWNLOAD_RETRY=2 # Retry count for resolver downloads RESOLVER_DOWNLOAD_RETRY_DELAY=2 # Delay in seconds between resolver download retries fuzzing_remote_list="https://raw.githubusercontent.com/six2dez/OneListForAll/main/onelistforallmicro.txt" # Used to send to Ax (if used) on fuzzing proxy_url="http://127.0.0.1:8080/" # Proxy url install_golang=true # Set it to false if you already have Golang configured and ready upgrade_tools=true upgrade_before_running=false # Upgrade tools before running #dir_output=/custom/output/path SHOW_COMMANDS=false # Set true to log every executed command to the per-target log (verbose; may include sensitive data) MIN_DISK_SPACE_GB=0 # Minimum required disk space in GB before starting reconnaissance (0 to disable check)
INCREMENTAL_MODE=false # Only scan new findings since last run (use --incremental flag to enable) MONITOR_MODE=false # Continuous monitor mode (enabled by --monitor) MONITOR_INTERVAL_MIN=60 # Minutes between monitoring cycles MONITOR_MAX_CYCLES=0 # 0 = run forever until interrupted ALERT_SUPPRESSION=true # Suppress repeated monitor alerts by fingerprint history ALERT_SEEN_FILE=".incremental/alerts_seen.hashes" # Store of seen alert fingerprints
ADAPTIVE_RATE_LIMIT=false # Automatically adjust rate limits when encountering 429/503 errors (use --adaptive-rate flag to enable) MIN_RATE_LIMIT=10 # Minimum rate limit (requests per second) MAX_RATE_LIMIT=500 # Maximum rate limit (requests per second) RATE_LIMIT_BACKOFF_FACTOR=0.5 # Multiply rate by this when errors occur (0.5 = half speed) RATE_LIMIT_INCREASE_FACTOR=1.2 # Multiply rate by this on success (1.2 = 20% faster)
CACHE_MAX_AGE_DAYS=30 # Maximum age in days for cached wordlists/resolvers (30 = 1 month) CACHE_MAX_AGE_DAYS_RESOLVERS=7 # Resolver cache TTL CACHE_MAX_AGE_DAYS_WORDLISTS=30 # Wordlist cache TTL CACHE_MAX_AGE_DAYS_TOOLS=14 # Tool cache TTL CACHE_REFRESH=false # Force-refresh cache (or use --refresh-cache)
MAX_LOG_FILES=10 # Maximum number of log files to keep per target MAX_LOG_AGE_DAYS=30 # Delete log files older than this many days
STRUCTURED_LOGGING=false # Enable JSON structured logging for advanced log analysis
export GOROOT="${GOROOT:-/usr/local/go}" export GOPATH="${GOPATH:-$HOME/go}" case ":${PATH}:" in ":$GOPATH/bin:") ;; *) PATH="$GOPATH/bin:$PATH" ;; esac case ":${PATH}:" in ":$GOROOT/bin:") ;; *) PATH="$GOROOT/bin:$PATH" ;; esac case ":${PATH}:" in ":$HOME/.local/bin:") ;; *) PATH="$HOME/.local/bin:$PATH" ;; esac export PATH
export PATH="$HOME/.cargo/bin:$PATH"
#NOTIFY_CONFIG=~/.config/notify/provider-config.yaml # No need to define GITHUB_TOKENS=${tools}/.github_tokens GITLAB_TOKENS=${tools}/.gitlab_tokens #CUSTOM_CONFIG=custom_config_path.txt # In case you use a custom config file, uncomment this line and set your files path
SHODAN_API_KEY="${SHODAN_API_KEY:-}" WHOISXML_API="${WHOISXML_API:-}" PDCP_API_KEY="${PDCP_API_KEY:-}" XSS_SERVER="${XSS_SERVER:-}" COLLAB_SERVER="${COLLAB_SERVER:-}" slack_channel="${slack_channel:-}" slack_auth="${slack_auth:-}"
DEBUG_STD="&>/dev/null" # Skips STD output on installer DEBUG_ERROR="2>/dev/null" # Skips ERR output on installer
OSINT=true # Enable or disable the whole OSINT module GOOGLE_DORKS=true GITHUB_DORKS=true GITHUB_REPOS=true METADATA=true # Fetch metadata from indexed office documents EMAILS=true # Fetch emails from differents sites DOMAIN_INFO=true # whois info IP_INFO=true # Reverse IP search, geolocation and whois API_LEAKS=true # Check for API leaks API_LEAKS_POSTLEAKS=true # Enhance API leaks with postleaksNg THIRD_PARTIES=true # Check for 3rd parties misconfigs SPOOF=true # Check spoofable domains MAIL_HYGIENE=true # Check DMARC/SPF records CLOUD_ENUM=true # Enumerate cloud storage across providers with cloud_enum GITHUB_LEAKS=true # Search for leaked secrets across GitHub with ghleaks GHLEAKS_THREADS=5 # Concurrent download threads for ghleaks SECRETS_ENGINE="gitleaks" # gitleaks|titus|noseyparker|hybrid SECRETS_SCAN_GIT_HISTORY=false # Include git history scans when supported SECRETS_VALIDATE=false # Validate detected secrets when supported (titus) GITHUB_ACTIONS_AUDIT=false # Audit GitHub Actions artifacts/workflows with gato GATO_INCLUDE_ALL_ARTIFACT_SECRETS=false # Include noisy artifact secret matches in gato output
SUBDOMAINS_GENERAL=true # Enable or disable the whole Subdomains module SUBPASSIVE=true # Passive subdomains search SUBCRT=true # crtsh search CTR_LIMIT=999999 # Limit the number of results SUBNOERROR=false # Check DNS NOERROR response and BF on them SUBANALYTICS=true # Google Analytics search SUBBRUTE=true # DNS bruteforcing SUBSCRAPING=true # Subdomains extraction from passive URLs and live web metadata SUBPERMUTE=true # DNS permutations SUBIAPERMUTE=true # Permutations by AI analysis SUBREGEXPERMUTE=true # Permutations by regex analysis GOTATOR_FLAGS=" -depth 1 -numbers 3 -mindup -adv -md" # Flags for gotator PERMUTATIONS_WORDLIST_MODE=auto # auto|full|short (auto: short if subs > threshold, full if DEEP) PERMUTATIONS_SHORT_THRESHOLD=100 # Use short wordlist when subdomain count exceeds this SUBTAKEOVER=true # Check subdomain takeovers, false by default cuz nuclei already check this SUB_RECURSIVE_PASSIVE=false # Uses a lot of API keys queries DEEP_RECURSIVE_PASSIVE=10 # Number of top subdomains for recursion SUB_RECURSIVE_BRUTE=false # Needs big disk space and time to resolve ZONETRANSFER=true # Check zone transfer S3BUCKETS=true # Check S3 buckets misconfigs REVERSE_IP=false # Check reverse IP subdomain search (set True if your target is CIDR/IP) TLS_PORTS="21,22,25,80,110,135,143,261,271,324,443,448,465,563,614,631,636,664,684,695,832,853,854,990,993,989,992,994,995,1129,1131,1184,2083,2087,2089,2096,2221,2252,2376,2381,2478,2479,2482,2484,2679,2762,3077,3078,3183,3191,3220,3269,3306,3410,3424,3471,3496,3509,3529,3539,3535,3660,36611,3713,3747,3766,3864,3885,3995,3896,4031,4036,4062,4064,4081,4083,4116,4335,4336,4536,4590,4740,4843,4849,5443,5007,5061,5321,5349,5671,5783,5868,5986,5989,5990,6209,6251,6443,6513,6514,6619,6697,6771,7202,7443,7673,7674,7677,7775,8243,8443,8991,8989,9089,9295,9318,9443,9444,9614,9802,10161,10162,11751,12013,12109,14143,15002,16995,41230,16993,20003" INSCOPE=false # Uses inscope tool to filter the scope, requires .scope file in reconftw folder
WEBPROBEFULL=true # Unified web probing over configured ports WEBSCREENSHOT=true # Webs screenshooting VIRTUALHOSTS=false # Check virtualhosts by fuzzing HOST header UNCOMMON_PORTS_WEB="81,300,591,593,832,981,1010,1311,1099,2082,2095,2096,2480,3000,3001,3002,3003,3128,3333,4243,4567,4711,4712,4993,5000,5104,5108,5280,5281,5601,5800,6543,7000,7001,7396,7474,8000,8001,8008,8014,8042,8060,8069,8080,8081,8083,8088,8090,8091,8095,8118,8123,8172,8181,8222,8243,8280,8281,8333,8337,8443,8500,8834,8880,8888,8983,9000,9001,9043,9060,9080,9090,9091,9092,9200,9443,9502,9800,9981,10000,10250,11371,12443,15672,16080,17778,18091,18092,20720,32000,55440,55672" WEBPROBE_PORTS="80,443,${UNCOMMON_PORTS_WEB}" # Ports used by webprobe_full
FAVIRECON=true # Favicon-based technology recon for discovered web targets PORTSCANNER=true # Enable or disable the whole Port scanner module GEO_INFO=true # Fetch Geolocalization info PORTSCAN_PASSIVE=true # Port scanner with Shodan PORTSCAN_ACTIVE=true # Port scanner with nmap PORTSCAN_ACTIVE_OPTIONS="--top-ports 200 -sV -n -Pn --open --max-retries 2" PORTSCAN_DEEP_OPTIONS="--top-ports 1000 -sV -n -Pn --open --max-retries 2 --script vulners" PORTSCAN_STRATEGY=legacy # legacy|naabu_nmap NAABU_ENABLE=true NAABU_RATE=1000 NAABU_PORTS="--top-ports 1000" SERVICE_FINGERPRINT=true # Fingerprint exposed services with nerva SERVICE_FINGERPRINT_ENGINE="nerva" # nerva SERVICE_FINGERPRINT_TIMEOUT_MS=2000 # nerva timeout per target (ms) PORTSCAN_UDP=false PORTSCAN_UDP_OPTIONS="--top-ports 20 -sU -sV -n -Pn --open" CDN_IP=true # Check which IPs belongs to CDN CDN_BYPASS=true # Try origin IP discovery on CDN-fronted hosts with hakoriginfinder
WAF_DETECTION=true # Detect WAFs NUCLEICHECK=true # Enable or disable nuclei NUCLEI_TEMPLATES_PATH="$HOME/nuclei-templates" # Set nuclei templates path NUCLEI_SEVERITY="info,low,medium,high,critical" # Set templates criticity NUCLEI_EXTRA_ARGS="" # Additional nuclei extra flags, don't set the severity here but the exclusions like " -etags openssh" #NUCLEI_EXTRA_ARGS="-etags openssh,ssl -eid node-express-dev-env,keycloak-xss,CVE-2023-24044,CVE-2021-20323,header-sql,header-reflection" # Additional nuclei extra flags, don't set the severity here but the exclusions like " -etags openssh" NUCLEI_DAST=true # Run additional nuclei -dast module over webs/urls/gf candidates (forced on when VULNS_GENERAL=true, e.g. -a) URL_CHECK=true # Enable or disable URL collection URL_CHECK_PASSIVE=true # Search for urls, passive methods from Archive, OTX, CommonCrawl, etc URL_CHECK_ACTIVE=true # Search for urls by crawling the websites WAYMORE_TIMEOUT=30m # Timeout for waymore passive URL collection WAYMORE_LIMIT=5000 # Optional URL collection limit for waymore URL_GF=true # Url patterns classification URL_EXT=true # Returns a list of files divided by extension JSCHECKS=true # JS analysis FUZZ=true # Web fuzzing FUZZ_RECURSION_DEPTH=2 # ffuf recursion depth used in DEEP mode IIS_SHORTNAME=true CMS_SCANNER=true # CMS scanner WORDLIST=true # Wordlist generation ROBOTSWORDLIST=true # Check historic disallow entries on waybackMachine (DEEP mode only) PASSWORD_DICT=true # Generate password dictionary PASSWORD_DICT_ENGINE=cewler # cewler|pydictor PASSWORD_MIN_LENGTH=5 # Min password length PASSWORD_MAX_LENGTH=14 # Max password length KATANA_HEADLESS_PROFILE=off # off|smart|full CLOUD_ENUM_S3_PROFILE=optimized # optimized: quickscan (-qs + safe -m/-b paths) | exhaustive: -m/-b ${tools}/cloud_enum/enum_tools/fuzz.txt (missing fuzz => optimized) CLOUD_ENUM_S3_THREADS=20 # Threads used by cloud_enum in s3buckets/cloud enumeration
VULNS_GENERAL=false # Enable or disable the vulnerability module (very intrusive and slow) XSS=true # Check for xss with dalfox TEST_SSL=true # SSL misconfigs SSRF_CHECKS=true # SSRF checks CRLF_CHECKS=true # CRLF checks LFI=true # LFI by fuzzing LFI_MAX_URLS=150 # Max single-parameter LFI candidates to test per target (0 = unlimited) SSTI=true # SSTI by fuzzing SSTI_ENGINE="TInjA" # SSTI engine SQLI=true # Check SQLI SQLMAP=true # Check SQLI with sqlmap GHAURI=false # Check SQLI with ghauri BROKENLINKS=true # Check for brokenlinks BROKENLINKS_ENGINE="second-order" # Broken links engine SPRAY=true # Performs password spraying SPRAY_ENGINE="brutespray" # brutespray|brutus SPRAY_BRUTUS_ONLY_DEEP=true # Run brutus only in DEEP mode unless disabled BRUTUS_USERNAMES="" # Optional comma-separated usernames for brutus BRUTUS_PASSWORDS="" # Optional comma-separated passwords for brutus BRUTUS_KEY_FILE="" # Optional SSH private key path for brutus COMM_INJ=true # Check for command injections with commix SMUGGLING=true # Check for HTTP request smuggling flaws WEBCACHE=true # Check for Web Cache issues WEBCACHE_TOXICACHE=true # Complement web cache checks with toxicache BYPASSER4XX=true # Check for 4XX bypasses FUZZPARAMS=true # Fuzz parameters values
NOTIFICATION=false # Notification for every function SOFT_NOTIFICATION=false # Only for start/end DEEP=false # DEEP mode, really slow and don't care about the number of results DEEP_LIMIT=500 # First limit to not run unless you run DEEP DEEP_LIMIT2=1500 # Second limit to not run unless you run DEEP DIFF=false # Diff function, run every module over an already scanned target, printing only new findings (but save everything) REMOVETMP=false # Delete temporary files after execution (to free up space) REMOVELOG=false # Delete logs after execution PROXY=false # Send to proxy the websites found SENDZIPNOTIFY=false # Send to zip the results (over notify) PRESERVE=true # set to true to avoid deleting the .called_fn files on really large scans FFUF_FLAGS=" -mc all -fc 404 -sf -noninteractive -of json" # Ffuf flags
HEADER="User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0" # Default header
AVAILABLE_CORES=$(nproc 2>/dev/null || sysctl -n hw.ncpu 2>/dev/null || echo 4) FFUF_THREADS=$((AVAILABLE_CORES * 10)) HTTPX_THREADS=$((AVAILABLE_CORES * 12)) HTTPX_UNCOMMONPORTS_THREADS=$((AVAILABLE_CORES * 25)) KATANA_THREADS=$((AVAILABLE_CORES * 5)) BRUTESPRAY_CONCURRENCE=$((AVAILABLE_CORES * 2)) DNSTAKE_THREADS=$((AVAILABLE_CORES * 25)) DALFOX_THREADS=$((AVAILABLE_CORES * 50)) DNS_RESOLVER=auto # auto|puredns|dnsx (auto: detects NAT/CGNAT → dnsx for home, puredns for VPS) PUREDNS_PUBLIC_LIMIT=0 # Set between 2000 - 10000 if your router blows up, 0 means unlimited PUREDNS_TRUSTED_LIMIT=400 PUREDNS_WILDCARDTEST_LIMIT=30 PUREDNS_WILDCARDBATCH_LIMIT=1500000 DNSX_THREADS=25 # Threads for dnsx when behind NAT (safe for home routers) DNSX_RATE_LIMIT=100 # QPS for dnsx DNSVALIDATOR_THREADS=200 INTERLACE_THREADS=10 LFI_INTERLACE_THREADS=4 # Dedicated interlace concurrency for LFI TLSX_THREADS=1000 XNLINKFINDER_DEPTH=3
HTTPX_RATELIMIT=150 NUCLEI_RATELIMIT=150 FFUF_RATELIMIT=0 LFI_FFUF_THREADS=20 # Dedicated ffuf threads for LFI LFI_FFUF_RATELIMIT=50 # Dedicated ffuf rate limit for LFI
SUBFINDER_ENUM_TIMEOUT=180 # Minutes CMSSCAN_TIMEOUT=3600 # Seconds FFUF_MAXTIME=900 # Seconds LFI_INTERLACE_TIMEOUT=180 # Seconds per LFI interlace worker LFI_FFUF_TIMEOUT=10 # Seconds per LFI HTTP request LFI_FFUF_MAXTIME=90 # Seconds per single LFI ffuf job LFI_FOLLOW_REDIRECTS=false # Follow redirects during LFI fuzzing HTTPX_TIMEOUT=10 # Seconds HTTPX_UNCOMMONPORTS_TIMEOUT=10 # Seconds PERMUTATIONS_LIMIT=21474836480 # Bytes, default is 20 GB DNS_BRUTE_TIMEOUT=0 # timeout/gtimeout duration for DNS bruteforce (0 disables hard-timeout, e.g. 4h) DNS_RESOLVE_TIMEOUT=0 # timeout/gtimeout duration for DNS resolve (0 disables hard-timeout, e.g. 6h) DNS_HEARTBEAT_INTERVAL_SECONDS=20 # Progress heartbeat interval for long DNS jobs
fuzz_wordlist=${WORDLISTS_DIR}/fuzz_wordlist.txt lfi_wordlist=${WORDLISTS_DIR}/lfi_wordlist.txt ssti_wordlist=${WORDLISTS_DIR}/ssti_wordlist.txt subs_wordlist=${WORDLISTS_DIR}/subdomains.txt subs_wordlist_big=${tools}/subdomains_n0kovo_big.txt headers_inject=${WORDLISTS_DIR}/headers_inject.txt resolvers=${tools}/resolvers.txt resolvers_trusted=${tools}/resolvers_trusted.txt
AXIOM_RESOLVERS_PATH="/home/op/lists/resolvers.txt" AXIOM_RESOLVERS_TRUSTED_PATH="/home/op/lists/resolvers_trusted.txt"
AXIOM_FLEET_LAUNCH=true # Enable or disable spin up a new fleet, if false it will use the current fleet with the AXIOM_FLEET_NAME prefix AXIOM_FLEET_NAME="reconFTW" # Fleet's prefix name AXIOM_FLEET_COUNT=10 # Fleet's number AXIOM_FLEET_REGIONS="eu-central" # Fleet's region AXIOM_FLEET_SHUTDOWN=true # # Enable or disable delete the fleet after the execution AXIOM_AUTO_FIX_HOSTKEY=true # Auto-repair known_hosts entries on SSH host-key mismatch before fallback to local mode
#AXIOM_POST_START="~/Tools/axiom_config.sh" # Useful to send your config files to the fleet AXIOM_EXTRA_ARGS="" # Leave empty if you don't want to add extra arguments #AXIOM_EXTRA_ARGS=" --rm-logs" # Example
FARADAY=false # Enable or disable Faraday integration FARADAY_WORKSPACE="reconftw" # Faraday workspace
AI_EXECUTABLE="python3" # Python executable fallback if reconftw_ai venv python is not available AI_MODEL="llama3:8b" # Model to use AI_REPORT_TYPE="md" # Report type to use (md, txt) AI_REPORT_PROFILE="bughunter" # Report profile to use (executive, brief, or bughunter) AI_PROMPTS_FILE="" # Optional custom prompts file (empty uses reconftw_ai default) AI_MAX_CHARS_PER_FILE=50000 # Max chars loaded per file before truncation AI_MAX_FILES_PER_CATEGORY=200 # Max files loaded per category for AI context AI_REDACT=true # Redact sensitive indicators before AI analysis AI_ALLOW_MODEL_PULL=false # Allow reconftw_ai to auto-pull missing model AI_STRICT=false # Fail AI analysis if one or more categories have no data
GRAPHQL_CHECK=true # Detect GraphQL endpoints and introspection GQLSPECTION=false # Run GQLSpection deep introspection on detected GraphQL endpoints (heavier) PARAM_DISCOVERY=true # Parameter discovery with arjun GRPC_SCAN=false # Attempt basic gRPC reflection on common ports LLM_PROBE=false # Probe discovered web/API endpoints for LLM services with julius LLM_PROBE_AUGUSTUS=false # Include augustus generator config in julius output
IPV6_SCAN=true # Attempt IPv6 discovery/portscan where addresses exist
ARJUN_THREADS=10
ASSET_STORE=true # Append assets/findings to assets.jsonl EXPORT_FORMAT="" # Optional exporter at end of scan: json|html|csv|all REPORT_ONLY=false # Rebuild report artifacts from existing results (or use --report-only) QUICK_RESCAN=false # Skip heavy steps if no new subdomains/webs CHUNK_LIMIT=2000 # Split very large lists into chunks (urls, webs) HOTLIST_TOP=50 # Number of top risky assets to highlight
RESOLVER_IQ=false # Prefer fast/healthy resolvers (experimental) PERF_PROFILE="balanced" # low|balanced|max
TIME_EST_NUCLEI=600 TIME_EST_FUZZ=900 TIME_EST_URLCHECKS=300 TIME_EST_JSCHECKS=300 TIME_EST_API=300 TIME_EST_GQL=180 TIME_EST_PARAM=240 TIME_EST_GRPC=120 TIME_EST_IIS=60
bred='\033[1;31m' bblue='\033[1;34m' bgreen='\033[1;32m' byellow='\033[1;33m' red='\033[0;31m' blue='\033[0;34m' green='\033[0;32m' cyan='\033[0;36m' yellow='\033[0;33m' reset='\033[0m'
**DNS रिज़ॉल्वर गार्डरेल्स**:
- गायब/खाली रिज़ॉल्वर फ़ाइलें अब DNS brute/resolve शुरू होने से पहले तेज़ी से विफल हो जाती हैं।
- रिज़ॉल्वर डाउनलोड `RESOLVER_DOWNLOAD_CONNECT_TIMEOUT`, `RESOLVER_DOWNLOAD_MAX_TIME`, `RESOLVER_DOWNLOAD_RETRY`, और `RESOLVER_DOWNLOAD_RETRY_DELAY` के साथ कॉन्फ़िगर करने योग्य हैं।
- `DNS_BRUTE_TIMEOUT=0` और `DNS_RESOLVE_TIMEOUT=0` डिफ़ॉल्ट रूप से हार्ड-टाइमआउट को अक्षम करते हैं (बहुत बड़े टार्गेट सेट के लिए अनुशंसित)। हार्टबीट प्रगति अभी भी प्रत्येक `DNS_HEARTBEAT_INTERVAL_SECONDS` पर प्रिंट होती है।```bash
DNS_BRUTE_TIMEOUT=4h
DNS_RESOLVE_TIMEOUT=6h
DNS_HEARTBEAT_INTERVAL_SECONDS=20
पूर्ण विवरण: कॉन्फ़िगरेशन गाइड देखें।
reconFTW लचीली टोही के लिए कई मोड और विकल्पों का समर्थन करता है। सहायता मेनू देखने के लिए -h फ़्लैग का उपयोग करें।
./reconftw.sh -d example.com -r
``` ```bash
./reconftw.sh -d target.com -r
11. **कैश रिफ्रेश को बाध्य करें**: ```bash
./reconftw.sh -d target.com -r --refresh-cache
13. **निरंतर निगरानी (हर 30m, 48 cycles)**: ```bash
./reconftw.sh -d target.com -r --monitor --monitor-interval 30 --monitor-cycles 48
**पूर्ण मार्गदर्शिका**: [उपयोग गाइड](https://github.com/six2dez/reconftw/wiki/2.-Usage-Guide) देखें।
---
## ☁️ Ax फ्रेमवर्क समर्थन (पहले Axiom)
reconFTW वितरित स्कैनिंग के लिए [Ax](https://github.com/attacksurge/ax) के साथ एकीकृत होता है, जो कार्यों को कई क्लाउड इंस्टेंसेस में वितरित करके निष्पादन समय को कम करता है।
- **सेटअप**: Ax कॉन्फ़िगरेशन (`axiom-configure`) के दौरान `reconftw` को प्रोविज़नर के रूप में चुनें।
- **फ्लीट प्रबंधन**: स्वचालित रूप से फ्लीट बनाएं और नष्ट करें (`AXIOM_FLEET_LAUNCH`, `AXIOM_FLEET_SHUTDOWN`) या मौजूदा फ्लीट का उपयोग करें।
- **कॉन्फ़िगरेशन**: `reconftw.cfg` में फ्लीट आकार, क्षेत्र और नाम सेट करें (`AXIOM_FLEET_COUNT`, `AXIOM_FLEET_REGIONS`, `AXIOM_FLEET_NAME`).
**उदाहरण**:```bash
./reconftw.sh -d target.com -r -v
विवरण: आधिकारिक Ax Docs और attacksurge/ax repo देखें।
reconFTW वेब-आधारित रिपोर्टिंग और कमजोरी प्रबंधन के लिए Faraday के साथ एकीकृत होता है।
faraday-cli के माध्यम से प्रमाणित करें, और reconftw.cfg में कार्यक्षेत्र कॉन्फ़िगर करें (FARADAY_WORKSPACE)।reconftw.cfg में FARADAY=true के साथ सक्षम करें।reconFTW स्कैन परिणामों से विस्तृत रिपोर्ट उत्पन्न करने के लिए reconftw_ai टूल के साथ AI का उपयोग करता है।
AI_MODEL के माध्यम से llama3:8b)।AI_REPORT_TYPE)।AI_REPORT_PROFILE)।reconftw ai_result/reconftw_analysis.json में एक मशीन-पठनीय रिपोर्ट संग्रहीत करता है।AI_MAX_CHARS_PER_FILE और AI_MAX_FILES_PER_CATEGORY का उपयोग करके इनपुट आकार को सीमित करें।AI_REDACT और AI_STRICT के साथ रिडक्शन और सख्त मोड टॉगल करें।उदाहरण:```yaml AI_EXECUTABLE="python3" AI_MODEL="llama3:8b" AI_REPORT_TYPE="md" AI_REPORT_PROFILE="bughunter" AI_MAX_CHARS_PER_FILE=50000 AI_MAX_FILES_PER_CATEGORY=200 AI_REDACT=true AI_ALLOW_MODEL_PULL=false AI_STRICT=false
---
## 🗂️ डेटा प्रबंधन
एक निजी रिपॉजिटरी का उपयोग करके स्कैन डेटा और API कुंजियों को सुरक्षित रूप से प्रबंधित करें।
जब `ASSET_STORE=true` होता है, reconFTW प्रत्येक रन के दौरान मुख्य निष्कर्षों को `assets.jsonl` में एकत्र करता है, जिससे केवल कार्रवाई योग्य डेल्टा को आपकी निजी रिपॉजिटरी में सिंक करना आसान हो जाता है।
### Makefile
आसान रिपॉजिटरी प्रबंधन के लिए प्रदान किए गए `Makefile` का उपयोग करें (इसके लिए [GitHub CLI](https://cli.github.com/) की आवश्यकता है)।
1. **बूटस्ट्रैप**: ```bash
export PRIV_REPO="$HOME/reconftw-data"
make bootstrap
reconFTW स्वचालित परीक्षण के लिए bats-core का उपयोग करता है।
brew install bats-core
apt install bats
git clone https://github.com/bats-core/bats-core.git /tmp/bats sudo /tmp/bats/install.sh /usr/local
### परीक्षण चलाना```bash
# Unit tests only
make test
# Unit + integration tests
make test-all
# Via the runner script
./tests/run_tests.sh # unit only
./tests/run_tests.sh --all # unit + integration
tests/ ├── run_tests.sh # Test runner script ├── unit/ # Unit tests (fast, no network) │ ├── test_sanitize.bats │ ├── test_utils.bats │ └── test_validation.bats ├── integration/ # Integration tests (require installed tools) │ └── test_smoke.bats ├── security/ # Security tests (injection, etc.) │ └── test_injection.bats ├── mocks/ # Mock tools for offline testing └── fixtures/ # Shared test data files
### सुरक्षा परीक्षण चलाना```bash
# Test command injection prevention
make test-security
# Or directly
bats tests/security/
परीक्षण मुख्य स्क्रिप्ट को निष्पादित किए बिना फ़ंक्शन लोड करने के लिए --source-only पैटर्न का उपयोग करते हैं:```bash
#!/usr/bin/env bats
setup() { source ./reconftw.sh --source-only }
@test "sanitize_domain strips invalid chars" { result="$(sanitize_domain 'exam;ple.com')" [ "$result" = "example.com" ] }
### CI Pipeline
GitHub Actions कार्यप्रवाह (`.github/workflows/tests.yml`) हर पुश और पुल रिक्वेस्ट पर चलता है:
1. **ShellCheck** — `reconftw.sh`, `modules/*.sh`, और `install.sh` को लिंट करता है
2. **यूनिट परीक्षण** — सभी `tests/unit/*.bats` फ़ाइलों को चलाता है
3. **एकीकरण परीक्षण** — reconFTW को स्थापित करता है और उपकरण की उपलब्धता को मान्य करता है
---
## माइंडमैप/कार्यप्रवाह

---
## नमूना वीडियो

---
## 🤝 कैसे योगदान करें
पूर्ण योगदान गाइड के लिए [CONTRIBUTING.md](https://github.com/six2dez/reconftw/blob/HEAD/CONTRIBUTING.md) देखें, जिसमें डेवलपमेंट सेटअप, कोड शैली, परीक्षण और PR प्रक्रिया शामिल है।
त्वरित लिंक:
- [बग की रिपोर्ट करें](https://github.com/six2dez/reconftw/issues/new/choose)
- [पुल रिक्वेस्ट सबमिट करें](https://github.com/six2dez/reconftw/tree/dev) (`dev` शाखा को लक्षित करें)
- [आचार संहिता](https://github.com/six2dez/reconftw/blob/HEAD/CODE_OF_CONDUCT.md)
---
## 🔒 सुरक्षा
सुरक्षा नीति, रहस्य प्रबंधन और भेद्यता रिपोर्टिंग के लिए [SECURITY.md](https://github.com/six2dez/reconftw/blob/HEAD/SECURITY.md) देखें।
---
## ❓ सहायता चाहिए?
- **विकी**: [reconFTW विकी](https://github.com/six2dez/reconftw/wiki) का अन्वेषण करें।
- **FAQ**: [FAQ](https://github.com/six2dez/reconftw/wiki/7.-FAQs) देखें।
- **समुदाय**: [डिस्कॉर्ड सर्वर](https://discord.gg/R5DdXVEdTy) या [टेलीग्राम समूह](https://t.me/joinchat/TO_R8NYFhhbmI5co) में शामिल हों।
---
## 💖 इस परियोजना का समर्थन करें
reconFTW के विकास का समर्थन करें:
- **मुझे कॉफ़ी खरीदें**: [buymeacoffee.com/six2dez](https://www.buymeacoffee.com/six2dez)
[<img src="https://assets.kitploit.com/production/public/readmes/670/1177bf77de4c288d45b816dd405a8b5027116f0b1893449986cf200c765707ad.webp">](https://www.buymeacoffee.com/six2dez)
- **DigitalOcean रेफरल**: [रेफरल लिंक](https://www.digitalocean.com/?refcode=f362a6e193a1&utm_campaign=Referral_Invite&utm_medium=Referral_Program&utm_source=badge)
<a href="https://www.digitalocean.com/?refcode=f362a6e193a1&utm_campaign=Referral_Invite&utm_medium=Referral_Program&utm_source=badge"><img src="https://web-platforms.sfo2.cdn.digitaloceanspaces.com/WWW/Badge%201.svg" alt="DigitalOcean Referral Badge" /></a>
- **GitHub प्रायोजन**: [github.com/sponsors/six2dez](https://github.com/sponsors/six2dez)
---
## 🙏 धन्यवाद
reconFTW का समर्थन करने के लिए निम्नलिखित सेवाओं का विशेष धन्यवाद:
- [C99](https://api.c99.nl/)
- [CIRCL](https://www.circl.lu/)
- [NetworksDB](https://networksdb.io/)
- [ipinfo](https://ipinfo.io/)
- [hackertarget](https://hackertarget.com/)
- [Censys](https://censys.io/)
- [Fofa](https://fofa.info/)
- [intelx](https://intelx.io/)
- [Whoxy](https://www.whoxy.com/)
---
## 📝 परिवर्तन लॉग
प्रत्येक रिलीज़ में परिवर्तनों की विस्तृत सूची के लिए [CHANGELOG.md](https://github.com/six2dez/reconftw/blob/HEAD/CHANGELOG.md) देखें।
---
## 🛠️ विकास
### परियोजना संरचना```
reconftw/
├── reconftw.sh # Main entry point (~500 lines)
├── reconftw.cfg # Configuration file
├── modules/ # Phase modules
│ ├── utils.sh # Utilities, sanitization, caching, circuit breaker
│ ├── core.sh # Framework core, logging, lifecycle, health check
│ ├── modes.sh # Scan modes, argument parsing
│ ├── subdomains.sh # Subdomain enumeration
│ ├── web.sh # Web analysis, nuclei scans
│ ├── vulns.sh # Vulnerability scanning
│ ├── osint.sh # OSINT functions
│ └── axiom.sh # Ax/Axiom fleet helpers
├── lib/ # Pure utility libraries
│ └── validation.sh # Input validation functions
├── tests/ # Test suite (100+ tests)
│ ├── unit/ # Unit tests (bats)
│ ├── integration/ # Integration/smoke tests
│ └── security/ # Injection prevention tests
├── docs/ # Documentation
│ └── ARCHITECTURE.md # Detailed architecture guide
└── secrets.cfg.example # Template for API keys
make test # Unit tests make test-security # Security tests make test-all # All tests make lint # Shellcheck make lint-fix # Auto-fix with shfmt
### विकास कार्यप्रवाह```bash
# 1. Source without executing (for testing)
source ./reconftw.sh --source-only
# 2. Test individual functions
sanitize_domain "test;domain.com"
# 3. Run health check
./reconftw.sh --health-check
# 4. Dry run to preview
./reconftw.sh -d example.com -r --dry-run
CONTRIBUTING.md देखें विकास दिशानिर्देशों के लिए और docs/ARCHITECTURE.md तकनीकी विवरणों के लिए।
reconFTW MIT लाइसेंस के तहत लाइसेंस प्राप्त है।
cloudhunter_* बकेट आर्टिफैक्ट हटा दिए गए; इसके बजाय subdomains/cloud_enum_buckets_trufflehog.txt का उपयोग करें।ws:// और wss:// एंडपॉइंट पर अपग्रेड हैंडशेक और ओरिजिन हैंडलिंग को मान्य करना।ASSET_STORE सक्षम होता है तो डाउनस्ट्रीम ऑटोमेशन के लिए assets.jsonl में खोजों को जोड़ता है।report/report.json और report/index.html उत्पन्न करता है।--health-check के माध्यम से अंतर्निहित सिस्टम हेल्थ चेक (Docker HEALTHCHECK द्वारा भी उपयोग किया जाता है)।--incremental).--adaptive-rate).STRUCTURED_LOGGING).--dry-run).--parallel, --no-parallel से अक्षम करें).secrets.cfg, और Docker रनटाइम रहस्य (देखें SECURITY.md)../install.shINCREMENTAL_MODE).NOTIFY_CONFIG).AXIOM_FLEET_NAME, AXIOM_FLEET_COUNT, AXIOM_RESOLVERS_PATH).AI_MODEL, AI_REPORT_PROFILE, AI_REPORT_TYPE, AI_MAX_CHARS_PER_FILE).QUICK_RESCAN, ASSET_STORE, CHUNK_LIMIT, HOTLIST_TOP, SHOW_COMMANDS).MIN_DISK_SPACE_GB), लॉग रोटेशन (MAX_LOG_FILES, MAX_LOG_AGE_DAYS), संरचित JSON लॉगिंग (STRUCTURED_LOGGING).CACHE_MAX_AGE_DAYS).RESOLVER_DOWNLOAD_*), और DNS brute/resolve टाइमआउट डिफ़ॉल्ट रूप से अक्षम (DNS_*_TIMEOUT=0) हार्टबीट प्रगति के साथ।secrets.cfg या CI/Docker के लिए पर्यावरण चर का उपयोग करें (देखें SECURITY.md).| फ़्लैग | विवरण |
|---|
-d | एकल लक्ष्य डोमेन (जैसे, example.com) |
-l | लक्ष्य डोमेन की सूची वाली फ़ाइल (एक पंक्ति में एक) |
-m | बहु-डोमेन लक्ष्य (जैसे, संबंधित डोमेन के लिए कंपनी का नाम) |
-x | उपडोमेन को बाहर करें (स्कोप से बाहर की सूची) |
-i | उपडोमेन शामिल करें (स्कोप के अंदर की सूची) |
| फ़्लैग | विवरण |
|---|
-r | Recon: सक्रिय हमलों के बिना पूर्ण टोही |
-s | Subdomains: उपडोमेन गणना, वेब प्रोबिंग और टेकओवर |
-p | Passive: केवल निष्क्रिय टोही |
-a | All: सक्रिय भेद्यता जाँच के साथ पूर्ण टोही |
-w | Web: विशिष्ट वेब लक्ष्यों पर भेद्यता जाँच |
-n | OSINT: उपडोमेन गणना या हमलों के बिना OSINT स्कैन |
-z | Zen: बुनियादी जाँच और कुछ भेद्यताओं के साथ हल्की टोही |
-c | Custom: एक विशिष्ट फ़ंक्शन चलाएं (अतिरिक्त तर्कों की आवश्यकता) |
-h | सहायता मेनू दिखाएं |
| फ़्लैग | विवरण |
|---|
--deep | गहन स्कैनिंग सक्षम करें (धीमी, VPS अनुशंसित) |
-f | कस्टम कॉन्फ़िगरेशन फ़ाइल पथ |
-o | परिणामों के लिए आउटपुट निर्देशिका |
-v | Ax वितरित स्कैनिंग सक्षम करें |
--vps-count | इस रन के लिए Ax फ़्लीट इंस्टेंस गणना को ओवरराइड करें |
-q | दर सीमा सेट करें (प्रति सेकंड अनुरोध) |
-y | AI परिणाम विश्लेषण सक्षम करता है |
--check-tools | यदि आवश्यक उपकरण गायब हैं तो बाहर निकलें |
--quick-rescan | जब कोई नया सब/वेब नहीं मिलता है तो भारी मॉड्यूल छोड़ें |
--health-check | सिस्टम स्वास्थ्य जाँच चलाएं और बाहर निकलें |
--incremental | पिछले रन के बाद से केवल नए निष्कर्षों को स्कैन करें |
--adaptive-rate | त्रुटियों (429/503) पर दर सीमा को स्वचालित रूप से समायोजित करें |
--dry-run | कमांड चलाए बिना दिखाएं कि क्या निष्पादित किया जाएगा |
--parallel | स्वतंत्र फ़ंक्शन को समानांतर में चलाएं (तेज़, अधिक RAM) |
--no-parallel | समानांतर सक्षम होने पर भी अनुक्रमिक निष्पादन लागू करें |
--monitor | सतत निगरानी मोड (एकल लक्ष्य; -w, -l का समर्थन करता है) |
--monitor-interval | निगरानी चक्रों के बीच मिनट |
--monitor-cycles | N चक्रों के बाद रुकें (0 = अनंत) |
--report-only | स्कैन किए बिना रिपोर्ट आर्टिफैक्ट को पुनः बनाएं |
--refresh-cache | कैश किए गए रिज़ॉल्वर/वर्डलिस्ट को ताज़ा करने के लिए बाध्य करें |
--export | आर्टिफैक्ट निर्यात करें: json, html, csv, या all |