
PowerMeta विशेष रूप से तैयार किए गए Google और Bing खोजों का उपयोग करके किसी विशेष डोमेन के लिए विभिन्न वेबसाइटों पर होस्ट की गई सार्वजनिक रूप से उपलब्ध फ़ाइलों की खोज करता है। यह फिर उन फ़ाइलों को लक्षित डोमेन से डाउनलोड करने की अनुमति देता है। फ़ाइलों को प्राप्त करने के बाद, उनसे जुड़े मेटाडेटा का विश्लेषण PowerMeta द्वारा किया जा सकता है। मेटाडेटा में आमतौर पर पाए जाने वाले कुछ दिलचस्प चीज़ें हैं: उपयोगकर्ता नाम, डोमेन, सॉफ़्टवेयर शीर्षक और कंप्यूटर नाम।
PowerMeta विशेष रूप से तैयार किए गए Google और Bing खोजों का उपयोग करके किसी विशेष डोमेन के लिए विभिन्न वेबसाइटों पर होस्ट की गई सार्वजनिक रूप से उपलब्ध फ़ाइलों की खोज करता है। फिर यह लक्ष्य डोमेन से उन फ़ाइलों को डाउनलोड करने की अनुमति देता है। फ़ाइलों को पुनः प्राप्त करने के बाद, उनसे जुड़े मेटाडेटा का PowerMeta द्वारा विश्लेषण किया जा सकता है। मेटाडेटा में सामान्यतः पाए जाने वाले कुछ दिलचस्प चीज़ें उपयोगकर्ता नाम, डोमेन, सॉफ़्टवेयर शीर्षक और कंप्यूटर नाम हैं।
कई संगठनों के लिए उनकी बाहरी वेबसाइटों पर सार्वजनिक रूप से उपलब्ध फ़ाइलों को पोस्ट करना सामान्य है। कई बार इन फ़ाइलों में संवेदनशील जानकारी होती है जो किसी हमलावर के लिए लाभकारी हो सकती है, जैसे उपयोगकर्ता नाम, डोमेन, सॉफ़्टवेयर शीर्षक या कंप्यूटर नाम। PowerMeta किसी विशेष डोमेन पर फ़ाइलों की खोज "site:targetdomain.com filetype:pdf" जैसी खोज स्ट्रिंग का उपयोग करके Bing और Google दोनों में खोजता है। डिफ़ॉल्ट रूप से यह "pdf, docx, xlsx, doc, xls, pptx, और ppt" की खोज करता है।
PowerMeta फ़ाइलों से मेटाडेटा जानकारी निकालने के लिए Phil Harvey के Exiftool का उपयोग करता है। यदि आप इस repo में दिए गए बाइनरी के बजाय सीधे उनकी साइट से बाइनरी डाउनलोड करना पसंद करते हैं, तो यह यहाँ पाया जा सकता है: http://www.sno.phy.queensu.ca/~phil/exiftool/। बस सुनिश्चित करें कि जब PowerMeta.ps1 चलाया जाता है तो exiftool निष्पादन योग्य उसी निर्देशिका में हो। डिफ़ॉल्ट रूप से यह केवल 'Author' और 'Creator' फ़ील्ड निकालता है क्योंकि इनमें सामान्यतः उपयोगकर्ता नाम सहेजे जाते हैं। हालांकि, PowerMeta को -ExtractAllToCsv फ़्लैग पास करके फ़ाइलों के सभी मेटाडेटा निकाले जा सकते हैं।
PowerShell संस्करण 3.0 या बाद का
Google की एंटी-बॉट सुरक्षा अब बहुत आक्रामक हो गई है, जिससे सीधे परिणामों को स्क्रैप करना लगभग असंभव हो गया है, इसलिए PowerMeta.ps1 का उपयोग करके आपको मिश्रित परिणाम मिल सकते हैं। इससे बचने के लिए सबसे आसान उपाय Google के API का उपयोग करना है। मैंने यहाँ "PowerMeta-API.ps1" नामक एक नई स्क्रिप्ट जोड़ी है जो ठीक यही करती है।
यहाँ चरण-दर-चरण निर्देश दिए गए हैं:
चरण 1: Google Cloud प्रोजेक्ट बनाएँ
चरण 2: Custom Search API सक्षम करें
चरण 3: API कुंजी बनाएँ
चरण 4: Custom Search Engine बनाएँ
इसे इस प्रकार चलाएँ:
.\PowerMeta-API.ps1 -TargetDomain "targetdomain.com" -ApiKey "<API key>" -SearchEngineId "<search engine ID>" -ExtractAllToCsv allmetadata.csv
C:\> powershell.exe -exec bypass
PS C:\> Import-Module PowerMeta.ps1
यह कमांड 'targetdomain.com' डोमेन पर pdf, docx, xlsx, doc, xls, pptx, या pptx फ़ाइल एक्सटेंशन वाली फ़ाइलों के लिए Google और Bing खोजें शुरू करेगा। एक बार यह सूची तैयार करने के बाद यह उपयोगकर्ता को संकेत देगा कि क्या वे लक्ष्य डोमेन से फ़ाइलें डाउनलोड करना चाहते हैं। फ़ाइलें डाउनलोड करने के बाद यह उन फ़ाइलों से मेटाडेटा निकालने के लिए फिर से संकेत देगा।
PS C:\> Invoke-PowerMeta -TargetDomain targetdomain.com
यह कमांड 'targetdomain.com' डोमेन पर pdf या xml फ़ाइल एक्सटेंशन वाली फ़ाइलों के लिए Google और Bing खोजें शुरू करेगा। फिर यह स्वचालित रूप से उन्हें लक्ष्य डोमेन से डाउनलोड करेगा और मेटाडेटा निकालेगा।
PS C:\> Invoke-PowerMeta -TargetDomain targetdomain.com -FileTypes "pdf, xml" -Download -Extract
यह कमांड 'targetdomain.com' डोमेन पर pdf, docx, xlsx, doc, xls, pptx, या pptx फ़ाइल एक्सटेंशन वाली फ़ाइलों के लिए Google और Bing खोजें शुरू करेगा और मिली फ़ाइलों के लिंक को "target-domain-links.txt" नामक फ़ाइल में डिस्क पर लिखेगा।
PS C:\> Invoke-PowerMeta -TargetDomain targetdomain.com -TargetFileList target-domain-links.txt
यह कमांड 'targetdomain.com' डोमेन पर pdf, docx, xlsx, doc, xls, pptx, या pptx फ़ाइल एक्सटेंशन वाली फ़ाइलों के लिए Google और Bing खोजें शुरू करेगा, लेकिन केवल पहले दो पृष्ठों की खोज करेगा। सभी मेटाडेटा (केवल डिफ़ॉल्ट फ़ील्ड नहीं) को all-target-metadata.csv नामक CSV में सहेजा जाएगा।
PS C:\> Invoke-PowerMeta -TargetDomain targetdomain.com -MaxSearchPages 2 -ExtractAllToCsv all-target-metadata.csv
यह कमांड फ़ोल्डर "\2017-03-031-144953" की सभी फ़ाइलों से सभी मेटाडेटा निकालेगा और इसे all-target-metadata.csv नामक CSV में सहेजेगा।
PS C:\> ExtractMetadata -OutputDir .\2017-03-031-144953\ -ExtractAllToCsv all-target-metadata.csv
TargetDomain - फ़ाइलों की खोज के लिए लक्ष्य डोमेन।
FileTypes - खोजने के लिए फ़ाइल एक्सटेंशन की अल्पविराम से अलग की गई सूची। डिफ़ॉल्ट रूप से PowerMeta "pdf, docx, xlsx, doc, xls, pptx, ppt" की खोज करता है।
OutputList - वेब खोज के माध्यम से खोजे गए लिंक की सूची को आउटपुट करने के लिए एक फ़ाइल।
OutputDir - सभी डाउनलोड की गई फ़ाइलों को संग्रहीत करने के लिए एक निर्देशिका।
TargetFileList - डाउनलोड करने के लिए फ़ाइल लिंक की सूची।
Download - इंटरैक्टिव रूप से संकेत देने के बजाय मिली फ़ाइलों को स्वचालित रूप से डाउनलोड करने के लिए यह फ़्लैग पास करें।
Extract - इंटरैक्टिव रूप से संकेत देने के बजाय मिली फ़ाइलों से मेटाडेटा निकालने के लिए यह फ़्लैग पास करें, किसी भी मेटाडेटा को स्वचालित रूप से निकालने के लिए यह फ़्लैग पास करें।
ExtractAllToCsv - सभी मेटाडेटा (केवल डिफ़ॉल्ट फ़ील्ड नहीं) फ़ाइलों से निकालकर इस फ़्लैग के साथ निर्दिष्ट CSV में सहेजे जाएंगे।
UserAgent - PowerMeta द्वारा उपयोग किए जाने वाले डिफ़ॉल्ट User Agent को बदलें।
MaxSearchPages - प्रत्येक खोज इंजन पर खोजने के लिए अधिकतम पृष्ठों की संख्या।