
Strumento OSINT: Genera elenchi di nomi utente per aziende su LinkedIn
Strumento OSINT: Genera liste di nomi utente dalle aziende su LinkedIn.
Questo è un puro web-scraper, non è necessaria alcuna chiave API. Usi il tuo nome utente e password validi di LinkedIn per accedere, e creerà diverse liste di possibili formati di nomi utente per tutti i dipendenti di un'azienda che indichi.
Ecco cosa ottieni:
Opzionalmente, lo strumento aggiungerà @dominio.xxx ai nomi utente.

Non incolpatemi se il vostro account LinkedIn viene limitato nel rate o addirittura bannato. Questo è uno strumento di ricerca sulla sicurezza: usatelo solo dopo aver letto il codice e compreso appieno cosa fa.
Non ho sentito parlare di alcun ban di account da quando lo strumento è stato scritto, ma il rate limiting occasionalmente si attiva quando viene raggiunto il "limite di ricerca commerciale". Finora è stato temporaneo (misurato mensilmente).
Installa uv, poi dalla root del repository esegui:
uv sync
Questo crea un ambiente virtuale e installa tutte le dipendenze automaticamente. Esegui lo strumento con:
uv run python linkedin2username.py -c targetco
Avrai anche bisogno di Chrome, Chromium o Firefox installati nei percorsi tipici che possono essere scoperti da Selenium. Un browser web verrà avviato temporaneamente per gestire l'accesso.
usage: linkedin2username.py [-h] -c COMPANY [-n DOMAIN] [-d DEPTH]
[-s SLEEP] [-x PROXY] [-k KEYWORDS] [-g] [-o OUTPUT]
OSINT tool to generate lists of probable usernames from a given company's LinkedIn page.
This tool may break when LinkedIn changes their site.
Please open issues on GitHub to report any inconsistencies.
optional arguments:
-h, --help show this help message and exit
-c COMPANY, --company COMPANY
Company name exactly as typed in the company linkedin profile page URL.
-n DOMAIN, --domain DOMAIN
Append a domain name to username output.
[example: "-n targetco.com" would output [email protected]]
-d DEPTH, --depth DEPTH
Search depth (how many loops of 25). If unset, will try to grab them
all.
-s SLEEP, --sleep SLEEP
Seconds to sleep between search loops. Defaults to 0.
-x PROXY, --proxy PROXY
Proxy server to use. WARNING: WILL DISABLE SSL VERIFICATION.
[example: "-p https://localhost:8080"]
-k KEYWORDS, --keywords KEYWORDS
Filter results by a a list of command separated keywords.
Will do a separate loop for each keyword,
potentially bypassing the 1,000 record limit.
[example: "-k 'sales,human resources,information technology']
-g, --geoblast Attempts to bypass the 1,000 record search limit by running
multiple searches split across geographic regions.
-o OUTPUT, --output OUTPUT
Output Directory, defaults to li2u-output
Dovrai fornire allo strumento il nome dell'azienda su LinkedIn. Puoi trovarlo guardando l'URL della pagina dell'azienda. Dovrebbe assomigliare a https://linkedin.com/company/targetco. Potrebbe non essere così semplice come il nome esatto dell'azienda.
Ecco un esempio per ottenere tutti i dipendenti di targetco:
$ python linkedin2username.py -c targetco
Ecco un esempio per ottenere una lista più breve e aggiungere il nome di dominio @targetco.com:
$ python linkedin2username.py -c targetco -d 5 -n 'targetco.com'
Usa un account con molte connessioni, altrimenti otterrai risultati scadenti. Aggiungere un paio di connessioni presso l'azienda target dovrebbe aiutare: questo strumento funzionerà fino al terzo grado di connessione. Nota che LinkedIn limita i risultati di ricerca a un massimo di 1000 dipendenti. Puoi utilizzare le funzionalità '--geoblast' o '--keywords' per bypassare questo limite. Consulta l'aiuto qui sotto per maggiori dettagli.
Quando LinkedIn cambia le cose, lo strumento potrebbe rompersi. L'API utilizzata qui non è documentata e potrebbe essere necessario armeggiare un po' per farlo funzionare di nuovo. Apri un issue se noti qualcosa di strano.
Puoi verificare che Selenium funzioni sulla tua macchina in questo modo:
$ python3
from selenium import webdriver
driver = webdriver.Firefox() # or webdriver.Chrome()
driver.get("https://linkedin.com/login")
Puoi provare il flag --proxy per ispezionare il traffico con Burp. Al momento, non ispeziona i login dal browser Selenium, poiché puoi vedere abbastanza chiaramente cosa sta succedendo.
Questo è uno strumento di ricerca sulla sicurezza. Usalo solo dove hai ottenuto esplicita autorizzazione dal proprietario della rete.