
PowerMeta cerca file pubblicamente disponibili ospitati su vari siti web per un determinato dominio utilizzando ricerche appositamente create su Google e Bing. Permette quindi il download di quei file dal dominio di destinazione. Dopo aver recuperato i file, i metadati associati possono essere analizzati da PowerMeta. Alcune cose interessanti comunemente trovate nei metadati sono nomi utente, domini, titoli software e nomi di computer.
PowerMeta cerca file pubblicamente disponibili ospitati su vari siti web per un determinato dominio utilizzando ricerche Google e Bing appositamente create. Permette quindi di scaricare tali file dal dominio target. Dopo aver recuperato i file, PowerMeta può analizzare i metadati associati. Alcune cose interessanti comunemente trovate nei metadati sono nomi utente, domini, titoli di software e nomi di computer.
Per molte organizzazioni è comune trovare file pubblicamente disponibili pubblicati sui loro siti web esterni. Spesso questi file contengono informazioni sensibili che potrebbero essere utili a un attaccante, come nomi utente, domini, titoli di software o nomi di computer. PowerMeta cerca sia su Bing che su Google file per un determinato dominio utilizzando stringhe di ricerca come "site:domainetarget.com filetype:pdf". Per impostazione predefinita cerca "pdf, docx, xlsx, doc, xls, pptx e ppt".
PowerMeta utilizza Exiftool di Phil Harvey per estrarre informazioni dai metadati dei file. Se preferisci scaricare il binario dal suo sito direttamente invece di usare quello in questo repository, puoi trovarlo qui: http://www.sno.phy.queensu.ca/~phil/exiftool/. Assicurati solo che l'eseguibile exiftool sia nella stessa directory di PowerMeta.ps1 quando viene eseguito. Per impostazione predefinita estrae solo i campi 'Author' e 'Creator', che spesso contengono nomi utente. Tuttavia, tutti i metadati dei file possono essere estratti passando a PowerMeta il flag -ExtractAllToCsv.
PowerShell versione 3.0 o successiva
Le protezioni anti-bot di Google sono ora estremamente aggressive, rendendo quasi impossibile raschiare i risultati direttamente, quindi usando PowerMeta.ps1 potresti ottenere risultati misti. Per aggirare questo problema, la soluzione più semplice è utilizzare l'API di Google. Ho aggiunto un nuovo script chiamato "PowerMeta-API.ps1" che fa proprio questo.
Ecco le istruzioni passo passo:
Passo 1: Creare un progetto Google Cloud
Passo 2: Abilitare l'API Custom Search
Passo 3: Creare una chiave API
Passo 4: Creare un motore di ricerca personalizzato
Eseguilo con:
.\PowerMeta-API.ps1 -TargetDomain "domainetarget.com" -ApiKey "<chiave API>" -SearchEngineId "<ID motore di ricerca>" -ExtractAllToCsv allmetadata.csv
C:\> powershell.exe -exec bypass
PS C:\> Import-Module PowerMeta.ps1
Questo comando avvierà ricerche su Google e Bing per file sul dominio 'domainetarget.com' con estensione pdf, docx, xlsx, doc, xls, pptx o pptx. Una volta completata la creazione di questo elenco, chiederà all'utente se desidera scaricare i file dal dominio target. Dopo aver scaricato i file, chiederà nuovamente di estrarre i metadati da tali file.
PS C:\> Invoke-PowerMeta -TargetDomain domainetarget.com
Questo comando avvierà ricerche su Google e Bing per file sul dominio 'domainetarget.com' con estensione pdf o xml. Li scaricherà automaticamente dal dominio target ed estrarrà i metadati.
PS C:\> Invoke-PowerMeta -TargetDomain domainetarget.com -FileTypes "pdf, xml" -Download -Extract
Questo comando avvierà ricerche su Google e Bing per file sul dominio 'domainetarget.com' con estensione pdf, docx, xlsx, doc, xls, pptx o pptx e scriverà i link dei file trovati su disco in un file chiamato "link-dominio-target.txt".
PS C:\> Invoke-PowerMeta -TargetDomain domainetarget.com -TargetFileList link-dominio-target.txt
Questo comando avvierà ricerche su Google e Bing per file sul dominio 'domainetarget.com' con estensione pdf, docx, xlsx, doc, xls, pptx o pptx, ma cercherà solo le prime due pagine. Tutti i metadati (non solo i campi predefiniti) verranno salvati in un CSV chiamato tutti-i-metadati-target.csv.
PS C:\> Invoke-PowerMeta -TargetDomain domainetarget.com -MaxSearchPages 2 -ExtractAllToCsv tutti-i-metadati-target.csv
Questo comando estrarrà semplicemente tutti i metadati da tutti i file nella cartella "\2017-03-031-144953" e li salverà in un CSV chiamato tutti-i-metadati-target.csv
PS C:\> ExtractMetadata -OutputDir .\2017-03-031-144953\ -ExtractAllToCsv tutti-i-metadati-target.csv
TargetDomain - Il dominio target su cui cercare file.
FileTypes - Un elenco separato da virgole di estensioni di file da cercare. Per impostazione predefinita PowerMeta cerca "pdf, docx, xlsx, doc, xls, pptx, ppt".
OutputList - Un file su cui scrivere l'elenco dei link scoperti attraverso la ricerca web.
OutputDir - Una directory in cui salvare tutti i file scaricati.
TargetFileList - Elenco di link di file da scaricare.
Download - Invece di essere richiesto interattivamente, passa questo flag per scaricare automaticamente i file trovati.
Extract - Invece di essere richiesto interattivamente, passa questo flag per estrarre automaticamente i metadati dai file trovati.
ExtractAllToCsv - Tutti i metadati (non solo i campi predefiniti) verranno estratti dai file in un CSV specificato con questo flag.
UserAgent - Modifica lo User Agent predefinito utilizzato da PowerMeta.
MaxSearchPages - Il numero massimo di pagine da cercare su ciascun motore di ricerca.