
अत्यंत तेज़ पेंटेस्टिंग सूट
install · usage · modules · docs · contribute
तेज़, समवर्ती recon से exploitation तक एक बाइनरी में। हर स्कैनर एक connection-pooled http क्लाइंट साझा करता है।
sif एक recon और exploitation स्कैनर है जो पूरी श्रृंखला एक बाइनरी में चलाता है: subdomain enum, पोर्ट स्कैन, क्रॉलर, nuclei, फ्रेमवर्क/CVE डिटेक्शन, JS सीक्रेट निष्कर्षण, web-vuln प्रोब (CORS/XSS/redirect), क्लाउड और टेकओवर जाँच। 25+ स्कैन प्रकार, एक कमांड।
sif -u https://example.com -dnslist -ports -crawl -js -framework -nuclei
nuclei और colly लाइब्रेरी के रूप में संकलित हैं, shelled out के बजाय (ट्री में कोई exec.Command नहीं है), इसलिए यह एक एकल स्थिर बाइनरी है जिसमें कोई रनटाइम निर्भरता नहीं है और कुछ भी जोड़ने की आवश्यकता नहीं है।
हर स्कैनर एक साझा http क्लाइंट और work-stealing worker पूल के माध्यम से चलता है। -proxy, -H, -cookie और -rate-limit पूरे रन पर एक साथ लागू होते हैं, कनेक्शन पूल किए जाते हैं और स्कैन भर में पुन: उपयोग किए जाते हैं (एकल-होस्ट रन ~50 अनुरोधों के लिए 50 बार डायल करने के बजाय एक कनेक्शन का पुन: उपयोग करता है), और एक धीमा होस्ट बाकी को रोकता नहीं है। वह साझा क्लाइंट इसका उपयोग करने का व्यावहारिक कारण है, बजाय अलग-अलग उपकरणों की एक श्रृंखला को जोड़ने के। पोर्ट स्कैनिंग connect()-आधारित है, इसलिए rustscan और nmap अभी भी कच्चे पोर्ट स्कैन में तेज़ हैं।
यह stdin से लक्ष्य पढ़ता है और -silent के तहत प्रति पंक्ति एक निष्कर्ष प्रिंट करता है, इसलिए यह रचना करता है:
subfinder -d example.com | sif -silent -crawl -js -nuclei | notify
-diff एक पुन: स्कैन को मॉनिटर में बदल देता है जो केवल बदली हुई चीज़ों की रिपोर्ट करता है, -notify slack/discord/telegram/webhook पर पोस्ट करता है, और रन sarif और markdown में निर्यात करता है।
brew tap vmfunc/sif
brew install sif
अपने पसंदीदा aur हेल्पर का उपयोग करके इंस्टॉल करें:
yay -S sif
# या
paru -S sif
# nixpkgs (घोषणात्मक: configuration.nix या home-manager में जोड़ें)
environment.systemPackages = [ pkgs.sif ];
# या अनिवार्य रूप से
nix profile install nixpkgs#sif
# या बिना इंस्टॉल किए चलाएं
nix run nixpkgs#sif -- -u https://example.com -headers -sh -framework
रिपॉजिटरी में एक flake भी है अगर आप स्रोत से बनाना चाहते हैं:
nix run github:vmfunc/sif
curl -1sLf 'https://dl.cloudsmith.io/public/sif/deb/setup.deb.sh' | sudo -E bash
sudo apt-get install sif
नवीनतम बाइनरी releases से प्राप्त करें।
git clone https://github.com/vmfunc/sif.git
cd sif
make
go 1.25+ की आवश्यकता है
git clone https://aur.archlinux.org/sif.git
cd sif
makepkg -si
# बुनियादी स्कैन
./sif -u https://example.com
# डायरेक्टरी फ़ज़िंग
./sif -u https://example.com -dirlist medium
# सबडोमेन एनुमरेशन
./sif -u https://example.com -dnslist medium
# पोर्ट स्कैनिंग
./sif -u https://example.com -ports common
# जावास्क्रिप्ट फ्रेमवर्क डिटेक्शन + क्लाउड मिसकॉन्फिग
./sif -u https://example.com -js -c3
# shodan होस्ट इंटेलिजेंस (SHODAN_API_KEY env var आवश्यक)
./sif -u https://example.com -shodan
# securitytrails डोमेन डिस्कवरी (SECURITYTRAILS_API_KEY env var आवश्यक)
# सबडोमेन + संबंधित डोमेन खोजता है, फिर सभी को स्कैन करता है
./sif -u https://example.com -securitytrails -headers
# sql recon + lfi स्कैनिंग
./sif -u https://example.com -sql -lfi
# web vuln प्रोब (cors, open redirect, reflected xss)
./sif -u https://example.com -cors -redirect -xss
# फ्रेमवर्क डिटेक्शन (cve lookup के साथ)
./sif -u https://example.com -framework
# एक व्यापक स्कैन
./sif -u https://example.com -dirlist small -dnslist small -ports common -headers -sh -cms -framework -git -whois
सभी विकल्पों के लिए ./sif -h चलाएं।
कुछ उप-कमांड बिना स्कैन किए चलते हैं:
# संस्करण प्रिंट करें (रिलीज़ बिल्ड पर स्टैम्प होते हैं; स्थानीय बिल्ड git describe का उपयोग करते हैं)
./sif version
# नवीनतम रिलीज़ नोट्स दिखाएं (-pn भी)
./sif patchnote
पहली बार जब आप एक नई रिलीज़ चलाते हैं, sif उस रिलीज़ के नोट्स एक बार प्रिंट करता है। इसे बंद करने के लिए SIF_NO_PATCHNOTES=1 सेट करें।
sif का एक मॉड्यूलर आर्किटेक्चर है। मॉड्यूल yaml में परिभाषित होते हैं और उपयोगकर्ताओं द्वारा बढ़ाए जा सकते हैं।
| फ़्लैग | विवरण |
|---|---|
-dirlist | डायरेक्टरी और फ़ाइल फ़ज़िंग (small/medium/large) |
-mc | dirlist: इन स्थिति कोड से मिलान करें (कॉमा सूची, जैसे 200,301) |
-fc | dirlist: इन स्थिति कोड को फ़िल्टर करें (कॉमा सूची) |
-fs | dirlist: इन बॉडी आकारों के उत्तरों को फ़िल्टर करें (कॉमा सूची) |
-fw | dirlist: इन शब्द गणनाओं वाले उत्तरों को फ़िल्टर करें (कॉमा सूची) |
-fr | dirlist: उन उत्तरों को फ़िल्टर करें जिनका बॉडी इस regex से मेल खाता है |
-ac | soft-404 वाइल्डकार्ड बेसलाइन को ऑटो-कैलिब्रेट करें (dirlist, sql) |
-w | dirlist: कस्टम वर्डलिस्ट (स्थानीय फ़ाइल या url; -dirlist आकार को ओवरराइड करता है) |
-e | dirlist: प्रत्येक शब्द में जोड़े जाने वाले एक्सटेंशन (कॉमा सूची, जैसे php,bak,env) |
-dnslist | सबडोमेन एनुमरेशन (small/medium/large) |
-ports | पोर्ट स्कैनिंग (common/full) |
-nuclei | nuclei टेम्पलेट्स के साथ कमजोरी स्कैनिंग |
-dork | स्वचालित google dorking |
-js | जावास्क्रिप्ट विश्लेषण + सीक्रेट और एंडपॉइंट निष्कर्षण |
-c3 | क्लाउड स्टोरेज मिसकॉन्फ़िगरेशन |
-headers | http हेडर विश्लेषण |
-sh | सुरक्षा हेडर विश्लेषण (गायब/कमज़ोर हेडर) |
-st | सबडोमेन टेकओवर डिटेक्शन |
-cms | cms डिटेक्शन |
-whois | whois लुकअप |
-git | उजागर git रिपॉजिटरी डिटेक्शन |
-shodan | shodan लुकअप (SHODAN_API_KEY आवश्यक) |
-securitytrails | डोमेन डिस्कवरी + लक्ष्य विस्तार (SECURITYTRAILS_API_KEY आवश्यक) |
-sql | sql recon |
-lfi | स्थानीय फ़ाइल समावेशन |
-jwt | jwt डिस्कवरी + ऑफ़लाइन कमजोरी विश्लेषण (alg:none, weak hmac, exp, संवेदनशील क्लेम) |
-openapi | openapi/swagger स्पेक एक्सपोज़र प्रोब (पथ + unauth एंडपॉइंट गिनता है) |
-favicon | favicon हैश फ़िंगरप्रिंटिंग (shodan-शैली mmh3, तकनीक मिलान + pivot क्वेरी) |
-cors | cors मिसकॉन्फ़िगरेशन प्रोब |
-redirect | ओपन रिडायरेक्ट प्रोब |
-xss | रिफ्लेक्टेड xss प्रोब |
-framework | cve लुकअप के साथ फ्रेमवर्क डिटेक्शन |
-crawl | वेब क्रॉलर (स्पाइडर समान-होस्ट लिंक/स्क्रिप्ट/फॉर्म) |
-crawl-depth | अधिकतम क्रॉल रिकर्सन गहराई (डिफ़ॉल्ट 2) |
-passive | निष्क्रिय सबडोमेन/url डिस्कवरी (लक्ष्य पर शून्य ट्रैफ़िक) |
-probe | लाइव-होस्ट प्रोब (स्थिति, शीर्षक, सर्वर, रिडायरेक्ट चेन) |