
puncia v0.36
Panthera(P.)uncia - Subdomain Center और Exploit Observer के लिए आधिकारिक CLI उपयोगिता।
Panthera(P.)uncia
Subdomain Center और Exploit Observer के लिए आधिकारिक CLI उपयोगिता
Puncia दो A.R.P. Syndicate इंटेलिजेंस API के लिए आधिकारिक कमांड-लाइन क्लाइंट है — इसे किसी डोमेन, ब्रांड, या भेद्यता ID पर इंगित करें और सेकंडों में संरचित JSON प्राप्त करें, ब्राउज़र की आवश्यकता नहीं:
- 🕸️ Subdomain Center — इंटरनेट स्केल पर सबडोमेन एन्यूमरेशन, सबडोमेन टेकओवर की पहचान, शैडो IT डिस्कवरी, और ब्रांड इम्पर्सोनेशन / लुकअलाइक-डोमेन (टाइपोस्क्वाट) डिटेक्शन।
- 💥 Exploit Observer — 150+ आइडेंटिफायर स्कीमों (CVE, GHSA, EDB, MSF, ZDI, राष्ट्र-राज्य फीड्स और अधिक) में एक्सप्लॉइट और भेद्यता इंटेलिजेंस, CVE/GHSA संवर्धन (EPSS + VEDAS परिपक्वता स्कोरिंग) और SBOM स्कैनिंग के साथ।
$ puncia subdomain arpsyndicate.io
╭──────────────────────────────────────────────────────────────────────╮
│ Panthera(P.)uncia v0.38 │
│ subdomain recon · brand impersonation · exploit intel · sbom analysis│
│ A.R.P. Syndicate — https://www.arpsyndicate.io │
╰──────────────────────────────────────────────────────────────────────╯
[
"advisories.arpsyndicate.io",
"asm.arpsyndicate.io",
"blog.arpsyndicate.io",
...
]
$ puncia sbom bom.json ./out
puncia ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% (128/128) 0:00:41
कृपया ध्यान दें कि हालांकि ये परिणाम कभी-कभी काफी गलत और अविश्वसनीय हो सकते हैं, उनकी स्व-सुधार क्षमताओं के कारण ये समय-समय पर काफी भिन्न हो सकते हैं।
आक्रामक रेट-लिमिट को API कुंजी के साथ टाला जा सकता है: https://www.arpsyndicate.io/pricing.html
व्यावहारिक अनुप्रयोग
- ब्रांड इम्पर्सोनेशन और फिशिंग डोमेन डिटेक्शन
आपके ब्रांड पर आधारित रेप्लिका, लुकअलाइक, और टाइपोस्क्वाट डोमेन को उनके आपके या आपके ग्राहकों के विरुद्ध उपयोग किए जाने से पहले उजागर करें। - शैडो IT और बाहरी अटैक सरफेस डिस्कवरी
आधिकारिक चैनलों के बाहर बनाए गए उजागर सबडोमेन और इंफ्रास्ट्रक्चर की पहचान करें और निगरानी करें। - सबडोमेन टेकओवर रेकॉनिसेंस
किसी लक्ष्य के पूर्ण सबडोमेन फुटप्रिंट की गणना करें, जो डैंगलिंग/टेकओवर-प्रवण रिकॉर्ड को खोजने का एक प्रमुख पहला कदम है। - उन्नत भेद्यता अनुसंधान और निगरानी
ज्ञात और उभरते खतरों की खोज और ट्रैकिंग करें, जिसमें अस्पष्ट या असूचीबद्ध भेद्यताएं भी शामिल हैं। - CVE/GHSA डेटा का प्रासंगिक संवर्धन
बेहतर प्राथमिकता के लिए ज्ञात भेद्यताओं में गहराई और कार्रवाई योग्य इंटेलिजेंस (EPSS + VEDAS परिपक्वता स्कोर) जोड़ें। - सॉफ्टवेयर बिल ऑफ मटेरियल्स (SBOM) में भेद्यता डिटेक्शन
संरचित SBOM डेटा का उपयोग करके सॉफ्टवेयर घटकों का ज्ञात एक्सप्लॉइट और सुरक्षा मुद्दों के लिए विश्लेषण करें। - CI/CD और थ्रेट इंटेल वर्कफ़्लो के साथ सहज एकीकरण
विकास या सुरक्षा पाइपलाइनों के भीतर इंटेलिजेंस संग्रह और भेद्यता जांच को स्वचालित करें। - राष्ट्र-राज्य एक्सप्लॉइट रुझानों की निगरानी
विदेशी अभिकर्ताओं द्वारा चिह्नित लेकिन मुख्यधारा के डेटाबेस द्वारा अभी तक मान्यता प्राप्त नहीं की गई भेद्यताओं को ट्रैक करके खतरों से आगे रहें। - कीवर्ड-आधारित सबडोमेन डिस्कवरी
किसी विशिष्ट पैरेंट डोमेन से स्वतंत्र, इंटरनेट पर दिए गए कीवर्ड वाले होस्ट को उजागर करें। - बल्क थ्रेट इंटेलिजेंस प्रोसेसिंग
बड़े डेटासेट या एंटरप्राइज़ एसेट इन्वेंटरी में स्केलेबल विश्लेषण के लिए बैच क्वेरी (डोमेन, भेद्यताएं, आदि) चलाएं। - रेड टीम्स के लिए पैसिव रेकॉनिसेंस
पैसिव डेटा स्रोतों (लक्ष्यों के साथ सीधा संपर्क नहीं) का उपयोग करके गुप्त रेकॉनिसेंस करें। - ओपन सोर्स इंटेलिजेंस (OSINT) संग्रह
OSINT जांच को बढ़ाने के लिए सबडोमेन और एक्सप्लॉइट इंटेलिजेंस को संयोजित करें। - अनुपालन और जोखिम प्रबंधन समर्थन
गहरे संदर्भ के साथ अनुपालन ऑडिट (जैसे, ISO 27001, SOC 2) का समर्थन करने के लिए भेद्यता डेटा को समृद्ध करें।
इंस्टॉलेशन
- PyPi से -
pip3 install puncia - स्रोत से -
pip3 install .
30-सेकंड क्विकस्टार्ट
pip3 install puncia
# subdomain footprint of a target (shadow IT / attack surface / takeover recon)
puncia subdomain example.com
# lookalike / typosquat / brand-impersonation domains
puncia replica example.com
# what's known about a CVE
puncia exploit CVE-2021-44228
उपयोग
puncia <mode> <query> [output] [--match M] [--domain D] [--limit N] [--offset N]
[--crawl] [--api-key K] [--concurrency N]
[--timeout S] [--retries N] [--quiet]
पूर्ण संदर्भ के लिए puncia --help चलाएं। परिणाम stdout पर प्रिंट होते हैं; बैनर, प्रगति बार, चेतावनियां और त्रुटियां सभी stderr पर जाती हैं, इसलिए puncia subdomain example.com > out.json हमेशा साफ, वैध JSON देता है।
एग्ज़िट कोड: 0 सफलता · 1 अनुरोध या इनपुट त्रुटि · 2 उपयोग त्रुटि।
-
(PAID) API कुंजी संग्रहीत करें (storekey) -
puncia storekey <api-key>~/.punciaपर0600अनुमतियों के साथ संग्रहीत।$PUNCIA_API_KEYइसे ओवरराइड करता है, जो आमतौर पर CI में आप जो चाहते हैं।
-
(FREEMIUM) डोमेन क्वेरी करें, डोमेन द्वारा क्लस्टर (subdomain /
cuttlefishइंजन) -puncia subdomain <domain> <output-file>- पेजिनेशन (केवल प्रमाणित): प्रमाणित परिणाम की कोई कुल सीमा नहीं होती। डिफ़ॉल्ट रूप से
subdomain/replica/keywordहर पेज को वॉक करते हैं और आपके लिए उन्हें मर्ज करते हैं। बजाय इसके स्वयं ठीक एक कच्चा पेज प्राप्त करने के लिए--offsetपास करें (--limitके साथ या बिना), उदाहरण के लिए एक फिर से शुरू करने योग्य या स्ट्रीमिंग वॉक के लिए:अनाम अनुरोध सर्वर-साइड परpuncia subdomain bigco.com --limit 50000 --offset 0 # stderr prints: note: more results available — continue with --offset 50000 puncia subdomain bigco.com --limit 50000 --offset 50000--limit/--offsetको अनदेखा करते हैं (हमेशा 500 पंक्तियों तक का शफल किया गया नमूना); puncia चेतावनी देता है बजाय इसके कि वे कुछ कर रहे हों। - लाइव क्रॉल (केवल प्रमाणित):
--crawlसंग्रहीत परिणामों को एक लाइव डिस्कवरी पास के साथ पूरक करता है। किसी दिए गए डोमेन को वास्तव में केवल हर ~6 घंटे में एक बार फिर से क्रॉल किया जाता है — उस विंडो के भीतर के अनुरोध तुरंत कैश्ड क्रॉल परिणाम प्राप्त करते हैं। Puncia stderr पर परिणाम की रिपोर्ट करता है:crawl: fresh, 12 newly discovered name(s)(साथ हीpartial/cooldown/disabled)।puncia subdomain bigco.com --crawl
- पेजिनेशन (केवल प्रमाणित): प्रमाणित परिणाम की कोई कुल सीमा नहीं होती। डिफ़ॉल्ट रूप से
-
(FREEMIUM) रेप्लिका डोमेन क्वेरी करें, ब्रांड द्वारा क्लस्टर (replica /
octopusइंजन) -puncia replica <domain> --match <prefix|exact|substring> <output-file> -
(FREEMIUM) कीवर्ड द्वारा क्वेरी करें, कीवर्ड द्वारा क्लस्टर (keyword /
ammonitesइंजन) -puncia keyword <keyword> --match <exact|prefix> <output-file>- वैकल्पिक रूप से कीवर्ड को
--domainके साथ एक डोमेन तक सीमित करें:puncia keyword blog --domain bandcamp.com
- वैकल्पिक रूप से कीवर्ड को
-
एक्सप्लॉइट और भेद्यता आइडेंटिफायर क्वेरी करें (exploit)
- (FREE) भेद्यता और एक्सप्लॉइट आइडेंटिफायर वॉचलिस्ट (^WATCHLIST_IDES) -
puncia exploit ^WATCHLIST_IDES <output-file> - (FREE) विवरण के साथ भेद्यता और एक्सप्लॉइट आइडेंटिफायर वॉचलिस्ट (^WATCHLIST_INFO) -
puncia exploit ^WATCHLIST_INFO <output-file> - (FREE) भेद्य प्रौद्योगिकियां वॉचलिस्ट (^WATCHLIST_TECH) -
puncia exploit ^WATCHLIST_TECH <output-file> - (FREE) समग्र भेद्यता/एक्सप्लॉइट आंकड़े (^STATS) -
puncia exploit ^STATS <output-file> - (FREE) सेवा स्वास्थ्य (^HEALTH) -
puncia exploit ^HEALTH <output-file> - (FREEMIUM) समर्थित भेद्यता आइडेंटिफायर -
puncia exploit <eoidentifier> --match <substring|prefix|exact> <output-file>
- (FREE) भेद्यता और एक्सप्लॉइट आइडेंटिफायर वॉचलिस्ट (^WATCHLIST_IDES) -
-
(FREEMIUM) CVE/GHSA आइडेंटिफायर समृद्ध करें (enrich) -
puncia enrich <cve-id/ghsa-id> <output-file>enrich=trueकेवलCVE-/GHSA-आइडेंटिफायर के लिए प्रभावी होता है; यह पूर्ण अपस्ट्रीम एडवाइज़री रिकॉर्ड को EPSS + VEDAS स्कोरिंग के साथ मर्ज करता है।
-
(PAID) VEDAS समूह द्वारा गैर-CVE आइडेंटिफायर (noncve) -
puncia noncve <browser/china/russia/europe/exploitable> <output-file> -
(FREE) Subdomain Center सेवा स्वास्थ्य (^HEALTH) -
puncia subdomain ^HEALTH <output-file> -
एकाधिक क्वेरी (bulk/sbom)
- (FREEMIUM) बल्क इनपुट JSON फ़ाइल प्रारूप -
puncia bulk <json-file> <output-directory>{ "subdomain": [ "domainA.com", "domainB.com" ], "replica": [ "domainA.com", "domainB.com" ], "keyword": [ "keywordA", "keywordB" ], "exploit": [ "eoidentifierA", "eoidentifierB" ], "enrich": [ "eoidentifierA", "eoidentifierB" ] } - (FREEMIUM) SBOM इनपुट JSON फ़ाइल प्रारूप -
puncia sbom <json-file> <output-directory>
बल्क और SBOM रन क्वेरी को डी-डुप्लिकेट करते हैं, समानांतरता को
--concurrency(डिफ़ॉल्ट 10) पर सीमित करते हैं, और — जब कोई API कुंजी मौजूद नहीं होती — तो स्वचालित रूप से फ्री-टियर बजट के भीतर रहने के लिए अनुरोधों की गति नियंत्रित करते हैं। - (FREEMIUM) बल्क इनपुट JSON फ़ाइल प्रारूप -
-
(FREEMIUM) बाहरी आयात
import asyncio
import puncia
async def main():
# Without an API key (ratelimited)
print(await puncia.query_api("exploit", "CVE-2021-3450"))
print(await puncia.query_api("subdomain", "arpsyndicate.io"))
# With an API key
await puncia.store_key("ARPS-xxxxxxxxxx")
api_key = await puncia.read_key()
print(await puncia.query_api("subdomain", "arpsyndicate.io", apikey=api_key))
print(await puncia.query_api("replica", "arpsyndicate.io", match="exact", apikey=api_key))
print(await puncia.query_api("enrich", "CVE-2021-3450", apikey=api_key))
print(await puncia.query_api("noncve", "exploitable", apikey=api_key))
# Static endpoints (unauthenticated, unlimited)
print(await puncia.query_api("subdomain", "^HEALTH"))
print(await puncia.query_api("exploit", "^STATS"))
# Live crawl, with the outcome surfaced via a callback
await puncia.query_api(
"subdomain", "bigco.com", apikey=api_key, crawl=True,
on_crawl=lambda h: print("crawl status:", h.get("X-Crawl-Status")),
)
# Write straight to disk
await puncia.query_api("subdomain", "arpsyndicate.io", "out.json", apikey=api_key)
asyncio.run(main())
विफलताएं puncia.PunciaError उठाती हैं; एक खाली परिणाम ({} / []) जैसा है वैसा ही लौटाया जाता है बजाय इसके कि इसे त्रुटि माना जाए। कई क्वेरी में एक सत्र का पुन: उपयोग करें session= और एक साझा limiter= पास करके, ठीक वैसे ही जैसे process_bulk() करता है।
from puncia import PunciaError, query_api
try:
data = await query_api("exploit", "CVE-2021-3450", apikey=api_key)
except PunciaError as exc:
print(f"lookup failed: {exc}")
विकास
git clone https://github.com/ARPSyndicate/puncia && cd puncia
pip install --upgrade pip # editable installs need pip >= 21.3
pip install -e ".[dev]"
pytest # 42 offline tests, no API calls or network access
टेस्ट सूट पूरी तरह से ऑफ़लाइन है — यह URL निर्माण, आउटपुट-पथ कंटेनमेंट, SBOM पार्सिंग, बल्क प्लानिंग और रेटलिमिटर टाइमिंग को नेटवर्क को छुए बिना कवर करता है, इसलिए इसे किसी भी वातावरण में चलाना सुरक्षित है।
CVE संवर्धन
GHSA संवर्धन
उल्लेखनीय उल्लेख
- Passive Subdomain Enumeration: Uncovering More Subdomains than Subfinder & Amass
- Around 1000 exploitable cybersecurity vulnerabilities that MITRE & NIST ‘might’ have missed but China or Russia didn’t.
- Utilizing GitHub Actions for gathering Subdomain & Exploit Intelligence
- Introducing Exploit Observer — More than Shodan Exploits, Less than Vulners
- PUNCIA — The Panthera(P.)uncia of Cybersecurity
- Subdomain Enumeration Tool Face-off - 2023 Edition