
PowerMeta recherche des fichiers accessibles publiquement hébergés sur divers sites web pour un domaine donné en utilisant des recherches Google et Bing spécialement élaborées. Il permet ensuite de télécharger ces fichiers depuis le domaine cible. Après la récupération des fichiers, les métadonnées qui leur sont associées peuvent être analysées par PowerMeta. Parmi les éléments intéressants couramment trouvés dans les métadonnées figurent les noms d'utilisateur, les domaines, les titres de logiciels et les noms d'ordinateurs.
PowerMeta recherche des fichiers accessibles publiquement hébergés sur divers sites web pour un domaine particulier en utilisant des recherches spécialement conçues sur Google et Bing. Il permet ensuite de télécharger ces fichiers depuis le domaine cible. Après avoir récupéré les fichiers, les métadonnées qui leur sont associées peuvent être analysées par PowerMeta. Certaines informations intéressantes couramment trouvées dans les métadonnées sont les noms d'utilisateurs, les domaines, les titres de logiciels et les noms d'ordinateurs.
Pour de nombreuses organisations, il est courant de trouver des fichiers accessibles publiquement publiés sur leurs sites web externes. Souvent, ces fichiers contiennent des informations sensibles qui pourraient être utiles à un attaquant, comme des noms d'utilisateurs, des domaines, des titres de logiciels ou des noms d'ordinateurs. PowerMeta recherche à la fois sur Bing et Google des fichiers sur un domaine particulier en utilisant des chaînes de recherche comme "site:targetdomain.com filetype:pdf". Par défaut, il recherche "pdf, docx, xlsx, doc, xls, pptx, et ppt".
PowerMeta utilise Exiftool par Phil Harvey pour extraire les informations de métadonnées des fichiers. Si vous préférez télécharger directement le binaire depuis son site plutôt que d'utiliser celui de ce dépôt, il se trouve ici : http://www.sno.phy.queensu.ca/~phil/exiftool/. Assurez-vous simplement que l'exécutable exiftool se trouve dans le même répertoire que PowerMeta.ps1 lors de son exécution. Par défaut, il extrait uniquement les champs 'Author' et 'Creator' car ceux-ci contiennent généralement des noms d'utilisateurs. Cependant, toutes les métadonnées des fichiers peuvent être extraites en passant à PowerMeta le paramètre -ExtractAllToCsv.
PowerShell version 3.0 ou ultérieure
Les protections anti-bot de Google sont désormais extrêmement agressives, ce qui rend presque impossible le scraping direct des résultats, donc vous pourriez obtenir des résultats mitigés en utilisant PowerMeta.ps1. Pour contourner cela, la solution la plus simple est d'utiliser l'API de Google. J'ai ajouté un nouveau script ici appelé "PowerMeta-API.ps1" qui fait exactement cela.
Voici les instructions étape par étape :
Step 1: Create Google Cloud Project
Step 2: Enable Custom Search API
Step 3: Create API Key
Step 4: Create Custom Search Engine
Lancez-le avec :
.\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
Cette commande lancera des recherches Google et Bing pour des fichiers sur le domaine 'targetdomain.com' se terminant par une extension de fichier pdf, docx, xlsx, doc, xls, pptx, ou pptx. Une fois qu'elle a fini de constituer cette liste, elle demandera à l'utilisateur s'il souhaite télécharger les fichiers depuis le domaine cible. Après le téléchargement des fichiers, elle demandera à nouveau pour l'extraction des métadonnées de ces fichiers.
PS C:\> Invoke-PowerMeta -TargetDomain targetdomain.com
Cette commande lancera des recherches Google et Bing pour des fichiers sur le domaine 'targetdomain.com' se terminant par une extension de fichier pdf ou xml. Elle téléchargera ensuite automatiquement ces fichiers depuis le domaine cible et extraira les métadonnées.
PS C:\> Invoke-PowerMeta -TargetDomain targetdomain.com -FileTypes "pdf, xml" -Download -Extract
Cette commande lancera des recherches Google et Bing pour des fichiers sur le domaine 'targetdomain.com' se terminant par une extension de fichier pdf, docx, xlsx, doc, xls, pptx, ou pptx et écrira les liens des fichiers trouvés sur le disque dans un fichier appelé "target-domain-links.txt".
PS C:\> Invoke-PowerMeta -TargetDomain targetdomain.com -TargetFileList target-domain-links.txt
Cette commande lancera des recherches Google et Bing pour des fichiers sur le domaine 'targetdomain.com' se terminant par une extension de fichier pdf, docx, xlsx, doc, xls, pptx, ou pptx mais ne recherchera que les deux premières pages. Toutes les métadonnées (pas seulement les champs par défaut) seront enregistrées dans un CSV appelé all-target-metadata.csv.
PS C:\> Invoke-PowerMeta -TargetDomain targetdomain.com -MaxSearchPages 2 -ExtractAllToCsv all-target-metadata.csv
Cette commande extraira simplement toutes les métadonnées de tous les fichiers du dossier "\2017-03-031-144953" et les enregistrera dans un CSV appelé all-target-metadata.csv
PS C:\> ExtractMetadata -OutputDir .\2017-03-031-144953\ -ExtractAllToCsv all-target-metadata.csv
TargetDomain - Le domaine cible pour rechercher des fichiers.
FileTypes - Une liste d'extensions de fichiers séparées par des virgules pour la recherche. Par défaut, PowerMeta recherche "pdf, docx, xlsx, doc, xls, pptx, ppt".
OutputList - Un fichier pour écrire la liste des liens découverts via la recherche web.
OutputDir - Un répertoire pour stocker tous les fichiers téléchargés.
TargetFileList - Liste de liens de fichiers à télécharger.
Download - Au lieu d'être invité de manière interactive, passez ce paramètre pour télécharger automatiquement les fichiers trouvés.
Extract - Au lieu d'être invité de manière interactive, passez ce paramètre pour extraire automatiquement les métadonnées des fichiers trouvés.
ExtractAllToCsv - Toutes les métadonnées (pas seulement les champs par défaut) seront extraites des fichiers vers un CSV spécifié avec ce paramètre.
UserAgent - Modifier l'agent utilisateur par défaut utilisé par PowerMeta.
MaxSearchPages - Le nombre maximum de pages à rechercher sur chaque moteur de recherche.