Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
iWant — Strumento da riga di comando per cercare e scaricare file in una rete LAN, senza alcun server centrale. | Kitploit
Strumenti/GitHubGitHub/nirvik/iwant
Utilità Generiche
GitHubnirvik/iwant

iWant

Strumento da riga di comando per cercare e scaricare file in una rete LAN, senza alcun server centrale.

Vedi Repository
295206 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

iWant

CLI basato su condivisione file peer-to-peer decentralizzata

Stato della build

Build Status

Che cos'è?

Uno strumento da riga di comando per cercare e scaricare file in rete LAN, senza server centrale.

Caratteristiche

  • Decentralizzato: Non c'è un server centrale che ospita i file. Quindi, nessun singolo punto di guasto.
  • Facile individuazione dei file: Semplice come cercare qualcosa su Google.
  • Download di file da più peer: Se il seeder fallisce/lascia il gruppo, il leecher continuerà a scaricare da un altro seeder nella rete.
  • Download di directory: Supporta lo scaricamento di directory.
  • Ripresa del download: Riprende il download da dove era stato interrotto.
  • Dati consistenti: Qualsiasi modifica (modifica, cancellazione, aggiunta) ai file all'interno della cartella condivisa viene immediatamente riflessa nella rete.
  • Multipiattaforma: Funziona su Linux/Windows/Mac. Necessari ulteriori test su Mac.

Perché l'ho creato?

  • Mi piace l'idea di digitare il nome di un file nel terminale e scaricarlo se le persone intorno a me lo hanno.
  • Nessuna registrazione di terze parti.
  • Nessuna configurazione complicata.
  • Lo volevo multipiattaforma.
  • Zero downtime.
  • Nessun browser... solo terminale.
  • Per divertimento ¯\(ツ)/¯

Installazione

root@kitploit:~
pip install iwant

Oppure, se scarichi dal sorgente

root@kitploit:~
python setup.py install --user

Dipendenze di sistema

Assicurati di avere installate le seguenti dipendenze di sistema:

  • libffi-dev
  • libssl-dev

Utilizzo

root@kitploit:~
iWant.

    Uno strumento da riga di comando per cercare e scaricare file in rete LAN, senza server centrale.


Utilizzo:
    iwanto start
    iwanto search <nome>
    iwanto download <hash>
    iwanto share <percorso>
    iwanto download to <destinazione>
    iwanto view config
    iwanto --version

Opzioni:
    -h --help                           Mostra questa schermata.
    --version                           Mostra la versione.
    start                               Avvia il server iwant sul tuo sistema
    search <nome>                       Scopre file nella rete. Esempio: iwanto search batman
    download <hash>                     Scarica il file dalla rete
    share <percorso>                    Cambia la tua cartella condivisa
    view config                         Visualizza cartella condivisa e di download
    download to <destinazione>          Cambia la cartella di download

Nota: La cartella condivisa e quella di download non possono essere la stessa

Come eseguire

Esegui iwanto start (questo avvia il servizio iwant).

Esecuzione del client

Per eseguire servizi come ricerca, download, visualizzazione configurazione e modifica configurazione, apri un altro terminale e assicurati che il server iwant sia in esecuzione.

Esecuzione del server

Su Windows, è necessario l'accesso come amministratore per eseguire il server

root@kitploit:~
iwanto start

alt text

Cercare file

Digita il nome del file ;) (P.S Non sono necessari nomi esatti)

root@kitploit:~
iwanto search <nomefile>

Esempio:

root@kitploit:~
iwanto search "slicon valey"

alt text

Scaricare file

Per scaricare il file, inserisci l'hash del file ottenuto dopo la ricerca.

root@kitploit:~
iwanto download <hash del file>

Esempio:

root@kitploit:~
iwanto download b8f67e90097c7501cc0a9f1bb59e6443

alt text

Cambiare cartella condivisa

Cambia la cartella condivisa in qualsiasi momento (anche quando il servizio iwant è in esecuzione)

root@kitploit:~
iwanto share <percorso>

Esempio:

root@kitploit:~
iwanto share /home/User/Movies/

Su Windows, usa le virgolette:

root@kitploit:~
iwanto share "C:\Users\xyz\books\"

alt text

Cambiare cartella di download

Cambia la cartella di download in qualsiasi momento

root@kitploit:~
iwanto download to <percorso>

Esempio:

root@kitploit:~
iwanto download to /home/User/Downloads

Su Windows, usa le virgolette:

root@kitploit:~
iwanto download to "C:\User\Downloads"

Visualizzare cartella condivisa/di download

root@kitploit:~
iwanto view config

Come funziona?

Non appena il programma viene avviato, genera il demone di elezione, il demone di monitoraggio cartella e il demone del server.

  1. Il demone di elezione si occupa delle seguenti attività:

    • Gestisce il consenso.
    • Notifica al demone del server non appena c'è un cambio di leader.
    • Coordina con altri peer nella rete per quanto riguarda la partecipazione alle elezioni, indisponibilità del leader, guasto di rete, situazione di split brain, ecc.
    • Utilizza multicast per la scoperta dei peer. La descrizione del consenso è menzionata qui
  2. Quando il demone di monitoraggio cartella viene avviato, esegue i seguenti passaggi:

    • Indicizza tutti i file nella cartella condivisa.
    • Aggiorna le voci nel database.
    • Informa il server sui file e cartelle indicizzati.
    • Qualsiasi modifica nella cartella condivisa attiverà il demone di monitoraggio cartella per indicizzare i file modificati, aggiornare il database e informare il server delle modifiche.
  3. Il client iwant comunica con il demone del server quando l'utente desidera:

    • cercare file.
    • scaricare file.
    • cambiare cartella condivisa.
    • cambiare cartella di download.
  4. Il demone del server riceve comandi dal client iwant e aggiornamenti dal demone di monitoraggio file e dal demone di elezione.

    • Gli aggiornamenti ricevuti dal demone di monitoraggio cartella vengono inoltrati al leader. Ad esempio: informazioni su file/cartelle indicizzati.
    • Gli aggiornamenti ricevuti dal demone di elezione come l'evento cambio di leader attivano il server per inoltrare le informazioni sui file/cartelle indicizzati al nuovo leader.
    • Le query ricevute dal client iwant come ricerca file vengono inoltrate al leader, che esegue una ricerca fuzzy sui metadati ricevuti dagli altri peer e restituisce un elenco contenente (nome file, dimensione, checksum).
    • Le query ricevute dal client iwant come vengono inoltrate al leader, che inoltra l'hash radice del file/cartella insieme all'elenco dei peer che possiedono il file. Il avvia quindi il processo di download con i peer menzionati nell'elenco.

Da fare

  • Integrare meccanismi di sicurezza rigorosi
  • Aggiungere supporto Python3
  • Aggiungere anteprima video
  • Aggiungere funzionalità di streaming
  • Aggiungere traversal NAT di base
  • Creare moduli di test
  • Migliorare l'interfaccia per la barra di avanzamento del download di file/cartelle

Perché potrebbe non funzionare?

  • Firewall
  • Multicast non supportato dal tuo router.

Errori

Tutti i log sono presenti in ~/.iwant/.iwant.log o AppData\Roaming\.iwant\.iwant.log

Ti piace il progetto?

Say Thanks! Qualsiasi idea, bug o modifica necessaria, sentiti libero di inviarmi una PR :)

Scarica lo strumento
download file
demone del server
  • Gli aggiornamenti ricevuti dal client iwant come cambio cartella condivisa attivano il demone del server per assicurarsi che il demone di monitoraggio cartella indicizzi la nuova cartella e, una volta completata l'indicizzazione, il demone del server aggiorna il leader con le nuove informazioni meta su file/cartelle indicizzati.