
Controlla tutti i maintainer di tutti i pacchetti NPM e Pypi per individuare pacchetti dirottabili tramite ri-registrazione di domini.
Questo strumento controlla ogni maintainer di ogni pacchetto nei registry NPM e Python Pypi per domini non registrati o record MX non registrati su quei domini. Se un dominio non è registrato, puoi impossessarti del dominio e avviare una procedura di reset della password sull'account se non ha l'autenticazione a due fattori attivata. Questo ti consente di dirottare un pacchetto e farci quello che vuoi.
Per favore non usarlo per scopi illegali, usalo solo per controllare i pacchetti e segnalarli ai programmi di bug bounty.
Ho contattato il team di sicurezza di NPM a riguardo, ma non sono interessati a questo tipo di vulnerabilità.
Tieni inoltre presente che i maintainer restituiti dall'API non sempre rispecchiano i maintainer reali, ma spesso puoi essere fortunato.
Scarica prima l'indice dei pacchetti! Può richiedere molto tempo poiché il server è estremamente lento (ci vogliono più di 30 minuti):
wget https://skimdb.npmjs.com/registry/_all_docs
Dopo di che esegui semplicemente lo strumento con ./hijagger npm. Per vedere tutte le opzioni usa l'opzione --help. L'output viene salvato automaticamente anche in output.txt. Questo strumento molto probabilmente impiegherà diversi giorni a causa dell'alto numero di pacchetti.
Per trovare facilmente i risultati nell'output, fai grep per HIT. La colorazione è basata sul numero di download del pacchetto nell'ultimo anno.
Lo strumento effettua molte richieste DNS e whois, quindi suggerisco di eseguirlo da un server dedicato per non rischiare che il tuo IP privato venga bloccato.
Questa modalità funziona esattamente come la modalità NPM, ma l'API di Pypi non restituisce il numero di download per un pacchetto. Questi dati sono disponibili solo tramite Google BigQuery, ma questo complica molto le cose, quindi i contatori di download e i colori basati sui download non sono implementati per i pacchetti Pypi.
./hijagger pypi