
किसी संगठन द्वारा सब्सक्राइब किए गए SaaS सेवाओं का पता लगाता है, केवल बाहरी रूप से देखे जा सकने वाले डेटा का उपयोग करके। शैडो IT डिस्कवरी के लिए बनाया गया।
▄▄▓▓▓▓▓▓▓▓▓▄▄
▄▓▓▒▒▒▒▒▒▒▒▒▒▒▓▓▄ Yowie · tracking down the SaaS nobody told you about
▓▓▒▒░░░░░░░░░░░▒▒▓▓
▓▒░░ ● ● ░▒▓ Domain acme.com.au
▓▒░░ ▼ ░▒▓ Candidates acme, acmecorp
▓▓▒░░ ╰───╯ ░▒▓▓
▀▓▓▒▒░░░░░░░░░▒▒▓▓▀
▀▀▓▓▓▓▓▓▓▓▓▓▓▀▀
किसी संगठन द्वारा सब्सक्राइब की जाने वाली SaaS सेवाओं का पता लगाता है, केवल बाहरी रूप से अवलोकनीय डेटा का उपयोग करके। शैडो IT डिस्कवरी के लिए बनाया गया: जिन सेवाओं को खोजना सार्थक है, वे वही हैं जिनके बारे में आपको किसी ने नहीं बताया।
ऑस्ट्रेलियाई बुश क्रिप्टिड के नाम पर रखा गया, क्योंकि आप ऐसी चीज़ का शिकार कर रहे हैं जिसके अस्तित्व से सभी इनकार करते हैं।

नौ डिटेक्टरों में 593 विक्रेताओं को कवर करते हुए 786 सिग्नेचर, साथ ही 109 पार्क्ड पुष्टि की प्रतीक्षा में। निष्कर्षों को श्रेणीबद्ध किया गया है और प्रत्येक के साथ वह रिकॉर्ड या प्रतिक्रिया है जिससे वह उत्पन्न हुआ।
go build -o yowie ./cmd/yowie
Go 1.22 या बाद का संस्करण। सिग्नेचर पैक बाइनरी में एम्बेडेड हैं, इसलिए डिप्लॉय करने के लिए आपको बस एक ही फ़ाइल की आवश्यकता है।
yowie [flags] <domain> [candidate ...]
डोमेन संगठन का रूट डोमेन है। उम्मीदवार वे छोटी स्ट्रिंग्स हैं जिनके नाम पर किसी विक्रेता टेनेंट का नाम रखा जा सकता है — ट्रेडिंग नाम, संक्षिप्ताक्षर, अधिग्रहणों से चले आ रहे पुराने ब्रांड। जितने हो सकें उतने प्रदान करें; हर एक टेनेंट खोजने का एक और अवसर है। यदि कोई नहीं दिया गया, तो डोमेन का पहला लेबल उपयोग किया जाता है।
yowie acme.com.au acme acmecorp acmegroup
yowie -format html -o report.html acme.com.au acme
yowie -format json acme.com.au | jq '.findings[] | select(.confidence=="high")'
yowie -only dns,spf,dmarc -compact acme.com.au
yowie -signatures ./signatures -validate
| डिटेक्टर | सिग्नल |
|---|---|
dns | TXT सत्यापन टोकन, CNAME, MX और NS रिकॉर्ड |
vanity | संगठन के नाम पर होस्ट किए गए वेंडर टेनेंट (acme.zendesk.com) |
http | उन सेवाओं के लिए एप्लिकेशन-लेयर फ़िंगरप्रिंट जिनका कोई DNS फ़ुटप्रिंट नहीं है |
spf | पूरा SPF include ग्राफ़, नेस्टेड includes और redirects का अनुसरण करते हुए |
dmarc | DMARC एग्रीगेट/फ़ॉरेंसिक रिपोर्ट गंतव्य |
bimi | BIMI लोगो और Verified Mark Certificate होस्टिंग |
mta-sts | MTA-STS नीति की सामग्री |
tenant | Microsoft टेनेंट ID, फ़ेडरेटेड आइडेंटिटी प्रोवाइडर, और सहोदर डोमेन |
ct | Certificate Transparency लॉग्स से सबडोमेन, हल किए गए और एट्रिब्यूट किए गए |
-only या -skip से चुनें, जैसे कि तेज़ DNS-only पास के लिए -skip ct,http।
अंतिम दो पर एक टिप्पणी आवश्यक है, क्योंकि वे ऐसी चीज़ें ढूँढते हैं जो कोई सिग्नेचर सूची नहीं ढूँढ सकती।
tenant Microsoft के अनऑथेंटिकेटेड एंडपॉइंट्स से पूछता है कि डोमेन किसका है। Autodiscover की फ़ेडरेशन जानकारी उसी टेनेंट से जुड़े हर डोमेन को लौटाती है, जो अक्सर बिज़नेस यूनिट्स, अधिग्रहणों और परित्यक्त ब्रांड्स को सामने लाती है। इनमें से हर एक स्कैन करने लायक एक और डोमेन है।
ct खोज मॉडल को उलट देता है। बाकी हर जाँच एक निश्चित सूची के विरुद्ध पूछती है कि "क्या यह संगठन वेंडर X का उपयोग करता है?", इसलिए यह केवल उन्हीं वेंडर्स को ढूँढ सकती है जिनके लिए किसी ने पहले से सिग्नेचर लिखा है। CT पूछता है कि "इस संगठन ने अपने सबडोमेन को वास्तव में किस ओर इंगित किया है?" जो टीम किसी उत्पाद के लिए साइन अप करती है और support.acme.com को जोड़ती है, उसे एक सर्टिफ़िकेट जारी होता है, और वह सर्टिफ़िकेट सार्वजनिक और स्थायी होता है। किसी सिग्नेचर से मेल न खाने वाले लक्ष्य लीड्स के रूप में रिपोर्ट किए जाते हैं, और इसी तरह आप उस चीज़ को ढूँढते हैं जिसे आप जानते ही नहीं थे कि ढूँढना है।
निष्कर्षों को ग्रेड किया जाता है, और ग्रेड ही मुख्य बात है:
acme.blogspot.com शायद आपका acme न हो।किसी वेंडर पर दो स्वतंत्र डिटेक्टरों का सहमत होना एक Probable निष्कर्ष को Confirmed में पदोन्नत करता है। हर निष्कर्ष के साथ वह सटीक रिकॉर्ड या प्रतिक्रिया होती है जिसने उसे ट्रिगर किया, इसलिए टूल को दोबारा चलाए बिना भी एक रिपोर्ट तर्कसंगत होती है।
इस पदोन्नति में एक अपवाद है, और यही "यह टेनेंट मौजूद है" और "यह टेनेंट आपका है" के बीच का अंतर है — सटीकता के अंतर्गत नेमस्पेस नोट देखें।
यदि आप केवल सिग्नल चाहते हैं तो -no-unknown अनएट्रिब्यूटेड लीड्स को हटा देता है।
-format cli (डिफ़ॉल्ट), json, jsonl, csv, html। किसी फ़ाइल में लिखने के लिए -o का उपयोग करें। HTML रिपोर्ट स्व-निहित है — कोई बाहरी एसेट नहीं — इसलिए यह ईमेल किए जाने या शेयर ड्राइव पर रखे जाने पर भी काम करती है।
प्रगति stderr पर और परिणाम stdout पर जाते हैं, इसलिए yowie -format json acme.com > out.json अभी भी एक लाइव प्रगति पंक्ति दिखाता है।
सिग्नेचर signatures/*.yaml में रहते हैं। बाइनरी उन्हें एम्बेड करती है; -signatures <dir> या YOWIE_SIGNATURES=<dir> इसके बजाय डिस्क से लोड करता है, और इसी तरह आप रीबिल्ड किए बिना पुनरावृत्ति करते हैं।
version: 1
pack: dns-txt
description: "Domain-ownership verification tokens published as TXT records."
defaults:
confidence: high
signatures:
- id: txt-1password
vendor: "1Password"
category: "Identity & Secrets"
type: txt
query: "{domain}"
match:
contains: "1password-site-verification"
{domain} रूट डोमेन में विस्तारित होता है, {candidate} प्रत्येक उम्मीदवार स्ट्रिंग में।
{candidate} का संदर्भ देने वाला एक सिग्नेचर प्रत्येक उम्मीदवार के लिए एक बार मूल्यांकित किया जाता है।
| प्रकार | मिलान | टिप्पणियाँ |
|---|---|---|
txt, cname, mx, ns | query के रिकॉर्ड्स के विरुद्ध match.contains | केस-असंवेदनशील |
vanity_a, vanity_cname | बेसलाइन तुलना; कोई match ब्लॉक नहीं | query में {candidate} होना चाहिए |
http | अकेले match.present, match.absent, या match.status | नीचे स्टेटस हैंडलिंग देखें |
spf_include | रिज़ॉल्व किए गए SPF include ग्राफ़ के विरुद्ध match.contains | |
dmarc_rua | DMARC रिपोर्ट गंतव्यों के विरुद्ध match.contains | |
cname_target | query एक बेयर होस्टिंग सफ़िक्स है | ct द्वारा खोजे गए होस्ट्स पर लागू; * एक लेबल से मेल खाता है |
disabled: true किसी सिग्नेचर को उसके पीछे के शोध को खोए बिना पार्क कर देता है।
notes: विश्लेषक मार्गदर्शन को रिपोर्ट तक पहुँचाता है।
संपादन के बाद yowie -validate चलाएँ। वैलिडेशन सख़्त है — एक अज्ञात कुंजी एक
त्रुटि है, साइलेंट नो-ऑप नहीं — और पैक्स को go test द्वारा भी जाँचा जाता है, इसलिए एक
टाइपो चुपचाप हर भविष्य के स्कैन में आपकी कवरेज को नुकसान नहीं पहुँचा सकता।
| पैक | सामग्री |
|---|---|
dns-txt, dns-cname, dns-mx | सत्यापन टोकन और प्रत्यायोजित होस्टनेम। लाइव। |
email-spf, email-dmarc | प्रेषक और DMARC प्रोसेसर। लाइव। |
vanity-tenants, http-endpoints | टेनेंट होस्टनेम और ऐप फ़िंगरप्रिंट। लाइव। |
cname-targets | CT-खोजे गए सबडोमेन के लिए होस्टिंग सफ़िक्स। लाइव। |
ai-services | AI और LLM प्लेटफ़ॉर्म। पार्क किया गया। |
file-transfer | प्रबंधित फ़ाइल स्थानांतरण — MOVEit, GoAnywhere, Egnyte। पार्क किया गया। |
finance-procurement | वित्त, व्यय, पेरोल, खरीद। पार्क किया गया। |
security-grc | सुरक्षा टूलिंग और अनुपालन ऑटोमेशन। पार्क किया गया। |
graveyard | असत्यापित प्रविष्टियाँ, और वे प्लेटफ़ॉर्म जिनके ऑपरेटर की पहचान नहीं हो सकी। पार्क किया गया। |