
LinkedIn-Enumerationstool zur Extraktion gültiger Mitarbeiternamen aus einer Organisation durch Suchmaschinen-Scraping
CrossLinked ist ein LinkedIn-Enumerationstool, das Suchmaschinen-Scraping nutzt, um gültige Mitarbeiternamen einer Organisation zu sammeln. Diese Technik liefert genaue Ergebnisse ohne Verwendung von API-Schlüsseln, Anmeldeinformationen oder direktem Zugriff auf LinkedIn!
Installiere die letzte stabile Version von PyPi:
pip3 install crosslinked
Installiere und führe den neuesten Code mit Poetry aus:
git clone https://github.com/m8sec/crosslinked
cd crosslinked
poetry install
poetry run crosslinked -h
Installiere den aktuellsten Code von GitHub:
git clone https://github.com/m8sec/crosslinked
cd crosslinked
pip3 install .
CrossLinked geht davon aus, dass die Namenskonvention des Organisationskontos bereits identifiziert wurde. Diese wird für die Ausführung benötigt und sollte basierend auf der erwarteten Ausgabe zu den CMD-Argumenten hinzugefügt werden. Siehe die Abschnitte Namensformat und Beispielverwendung unten:
{first.{last} = john.smith
CMP\{first}{l} = CMP\johns
{f}{last}@company.com = [email protected]
🦖 Immer noch festgefahren? Metadaten sind immer ein guter Ort, um nach versteckten Informationen wie der Namenskonvention zu suchen. Siehe PyMeta für mehr Informationen.
💥 Neue Funktion 💥
Um mit alternativen Namenskonventionen kompatibel zu sein, erlaubt CrossLinked dem Benutzer, die Indexposition des aus dem Suchtext extrahierten Namens zu steuern. Sollte der Name nicht lang genug sein oder Fehler bei der Suchzeichenfolge auftreten, fällt CrossLinked auf das Standardformat zurück.
Hinweis: Das Suchstring-Array beginnt bei 0. Negative Zahlen können auch verwendet werden, um rückwärts vom letzten Wert zu zählen.
# Standardausgabe
python3 crosslinked.py -f '{first}.{last}@company.com' Company
John David Smith = [email protected]
# Verwende den vorletzten Namen als "last"
python3 crosslinked.py -f '{0:first}.{-2:last}@company.com' Company
John David Smith = [email protected]
Jane Doe = [email protected]
# Verwende das zweite Element im Array als "last"
python3 crosslinked.py -f '{first}.{1:last}@company.com' Company
John David Smith = [email protected]
Jane Doe = [email protected]
Standardmäßig verwendet CrossLinked die Suchmaschinen google und bing, um Mitarbeiter der Zielorganisation zu identifizieren. Nach der Ausführung erscheinen zwei Dateien (names.txt & names.csv) im aktuellen Verzeichnis, sofern nicht in den CMD-Argumenten geändert.
Parse unten für weitere Informationen.python3 crosslinked.py -f '{first}.{last}@domain.com' company_name
python3 crosslinked.py -f 'domain\{f}{last}' -t 15 -j 2 company_name
⚠️ Für beste Ergebnisse verwende den Firmennamen, wie er auf LinkedIn erscheint –
"Target Company"– und nicht den Domainnamen.

Die Namenskonvention hat sich nach der Ausführung geändert und nun erhältst du CAPTCHA-Anfragen? Kein Problem!
CrossLinked enthält eine Ausgabedatei names.csv, die alle gescrapten Daten speichert: Name, Position und URL. Diese kann eingelesen und analysiert werden, um Benutzerkonten nach Bedarf neu zu formatieren.
python3 crosslinked.py -f '{f}{last}@domain.com' names.csv

Die neueste Version von CrossLinked bietet Proxy-Unterstützung zur Rotation der Quell-IP-Adressen. Benutzer können einen einzelnen Proxy mit --proxy 127.0.0.1:8080 oder mehrere über --proxy-file proxies.txt eingeben.
> cat proxies.txt
127.0.0.1:8080
socks4://111.111.111.111
socks5://222.222.222.222
> python3 crosslinked.py --proxy-file proxies.txt -f '{first}.{last}@company.com' -t 10 "Company"
⚠️
HTTP/S-Proxys können durch IP:Port-Notation hinzugefügt werden. Socks-Proxys benötigen jedoch einsocks4://- odersocks5://-Präfix.*
positional arguments:
company_name Target company name
optional arguments:
-h, --help show help message and exit
-t TIMEOUT Max timeout per search (Default=15)
-j JITTER Jitter between requests (Default=1)
Search arguments:
--search ENGINE Search Engine (Default='google,bing')
Output arguments:
-f NFORMAT Format names, ex: 'domain\{f}{last}', '{first}.{last}@domain.com'
-o OUTFILE Change name of output file (omit_extension)
Proxy arguments:
--proxy PROXY Proxy requests (IP:Port)
--proxy-file PROXY Load proxies from file for rotation
Trage zum Projekt bei, indem du: