Rilasciato KSniffer 0.3


Sono anni che sviluppo per KDE uno sniffer di rete. Purtroppo non faccio solo quello ma tante altre cose e quindi vi dedico non tantissimo tempo, Fatto sta che il 21 luglio scorso ho rilasciato la versione 0.3 del mio adorato KSniffer. Il sito internet è all’indirizzo www.ksniffer.org .

Per i “non addetti ai lavori”…

Quali sono le caratteristiche di questa applicazione? … Ah, non sapete cos’è uno sniffer? Beh, e che ci sto a fare?🙂 Ora vi spiego un po’ tutto. Avete presente cose tipo Ethereal e WireShark? No? Ok, vediamo come essere semplici e rapidi. Allora… di certo conoscete Internet, altrimenti non sareste qui a leggere queste righe. Attraverso il cavo di rete o il vostro bel modem ADSL, o analogico che sia, o la scheda wireless, diciamo che, giusto per semplificare e per rendere l’idea, sono trasmessi e ricevuti quelli che sono i pacchetti di rete, ovvero quei blocchi di bit che contengono le informazioni che scambiate su internet, comprese di immagini, file sonori, messaggi che vi scambiate su Skype, MSN, Jabber, IRC, ecc… Questi pacchetti messi in fila e ordinati permettono di risalire a tuto ciò che avete fatto nel momento in cui avete iniziato a navigare su Internet e chattare con i vostri nemici. È tutto registrato in quei pacchetti. KSniffer non fa altro che catturare, ed eventualmente di salvare su file questi pacchetti se lo desiderate, per permettervi di analizzarli e per ricavare qualche piccola informazione sulle connessioni rilevate. Naturalmente capirete che uno sniffer è uno strumento potente. Permette di risalire oltre che alla navigazione in se, anche ai contenuti della stessa ed eventualmente anche alle password degli account per esempio di posta elettronica se si usa un protocollo che invia queste informazioni in chiaro (come il POP3 semplice). Questa applicazione quindi serve per controllare cosa sta succedendo alla vostra rete e se ci sono conessioni in entrata o in uscita di cui non sapevate nulla fino a quando non avete iniziato a usare KSniffer (o un qualsiasi altro sniffer di rete). Per esempio potreste scoprire che in qualche modo avete una applicazione installata che trasmette informazioni che non dovrebbe o che non si comporta bene, magari avete scritto un’applicazione che gestisce un certo protocollo, ma non lo fa bene. Ovviamente non si tratta solo di controllare questo tipo di informazioni, ma anche di verificare perché avete problemi di rete. Immaginate per esempio che un bel giorno la rete che aveva sempre funzionato ora non va più bene. Lo sniffer, mostrandovi tutti pacchetti in entrata e uscita, vi darà modo di individuare il problema. Naturalmente questo tipo di applicazioni permette di analizzare il traffico di rete in modo passivo, ovvero senza la possibilità di modificarlo. Se lo sniffer venisse installato, per esempio (non è l’unico modo😉 ), presso il punto di uscita della rete (il gateway) avreste a disposizione non solo i dati relativi alle vostre connessioni, ma i dati di tutta la rete locale a cui fa capo il gateway, quindi non violate privacy e usate questo strumento per cose buone. Non fate i cattivi😀 .

Perché un nuovo sniffer?

Beh, chi conosce Ethereal e WireShark si chiederà di sicuro perché creare un nuovo sniffer di rete. Inizialmente era un banale esercizio per imparare la programmazione con libpcap e Qt/KDE, poi visto che applicativi del genere per KDE non esistono allora ho deciso di continuare. Quando vi sarà il porting per KDE 4 sarà possibile avere in modo nativo l’applicazione su Mac e Windows. In ogni caso ci vorrà ancora molto tempo perché, a mio avviso, allo stato attuale, KDE 4 ha un po’ di cose in meno rispetto a KDE 3.5 e, in ogni caso, affinché la gente cominci a usarlo in un ambiente di produzione stabile ci vorrà almeno un altro anno, inoltre non è banale fare il porting a KDE 4. Serve un po’ di tempo in più. Sfruttando le Qt e le kdelibs, KSniffer si integra totalmente in KDE (trasparenza di rete, …) e risulta di aspetto più gradevole. Ha una configurazione intuitiva e una usabilità (a detta di alcuni utilizzatori) migliore rispetto a Ethereal e WireShark, anche se il numero di protocolli riconosciuti è molto, ma molto minore. Il passo successivo sarà quello di rilasciare una versione 0.3.1 che abbia una leggera modifica che risolva il problema dei permessi su Debian e derivate (ubuntu, kubuntu, …). Per Debian in sé non ci sono problemi in quanto la persona che realizza i pacchetti Debian per kvpnc ha creato il pacchetto Debian di KSniffer applicando delle patch. In ogni caso nei file sorgenti c’è il README che spiega tutto quanto. A tal punto sarà necessario produrre un po’ di documentazione e qualche diagramma UML per sistemare il codice di KSniffer e puntare a una versione 0.4 con (si spera) un bel po’ di novità.

Sito ufficiale

Il sito ufficiale di KSniffer è www.ksniffer.org . Lì troverete tutto ciò che riguarda l’applicazione: email per contattarmi, screen shot, credits, sorgenti, binari per Slackware, Mandriva, … Attualmente è solo in inglese, ma un giorno magari lo traduco anche in italiano😀 .

Caratteristiche di KSniffer 0.3

Eccoci giunti alla parte “interessante” per chi già conosce le funzionalità di KSniffer o per chi conosce comunque le applicazioni di sniffing.

KSniffer 0.3 [21 luglio 2007]:

  • una nuova icona e un nuovo splashscreen grazie a Carmine De Rosa
  • rimmoso un crash quando si fa clic su un pacchetto catturato dopo aver provato ad aprire un file, ma senza aprirlo per davvero
  • ricava davvero i nomi delle porte UDP e TCP dal file /etc/services
  • mostra i byte grezzi di un pacchetto selezionato dalla lista di quelli cattaturati
  • cambiato il nome dell’applicazione “sniff” in “ksniff” per evitare conflitti con altre applicazioni di sniffing
  • corretto il bug che non salva i dati in uscita quando si chiude l’applicazione
  • rileva la lista di interfaccie di rete che hanno un differente indirizzo MAC
  • controlla i permessi di ksniff per evitare che gli utenti pensino che KSniffer non funziona: Debian/*ubuntu/OpenSuSE rimuovono il bit di SUID: una finestra di dialogo avverte l’utente nel caso che ksniff non è stato trovato o non ha il bit di SUID

KSniffer 0.2 [11 Febraio 2007]:

  • aggiunge/rimuove KSniffer dal system tray bar
  • aggiunta la finestra di dialogo delle opzioni di KSniffer:
    • impostazioni sniffer:
      • mostra i pacchetti disponibili dopo che si è interrotta la cattura
    • impostazioni di cattura:
      • interrompe manualmente
      • interrompe dopo un certo numero di pacchetti catturati
      • interrompe dopo un certo numero di byte/kilobyte/megabye/gigabyte catturati
      • interrompe dopo un certo tempo di cattura: secondi/minuti/ore/giorni
  • aggiunta la visualizzazione dettagliata per TCP
  • aggiunta la funzione di pausa/continua della cattura
  • legge i nomi delle porte dal sistema (file /etc/services)
  • aggiunta ricerca veloce (dipendenza da kdelibs >= 3.3)
  • miglior gestione del caricamento dei file
  • miglior gestione dei file temporali
  • non servono più i privilegi di amministratore per la GUI (tranne che per Debian e derivate)
  • rimossa la caratteristica di ordinamento a causa di cattive prestazioni in caso di molti pacchetti disponibili nella lista
  • ricava informazioni sul protocollo IP: può rilevare alcune informazioni di rete sull’indirizzo IP sorgente o destinazione selezionato (fa clic su un indirizzo IP, di uno dei pacchetti in lista, con il tasto destro del mouse):
    • whois
    • traceroute
    • ping
    • dig
    • host
    • nslookup
  • compila correttamente su FreeBSD e qualche altra piattaforma Linux
  • corretti bug noiosi

KSniffer 0.1.1 [1 Agosto 2005]:

  • aggiornata traduzione olandese
  • corretto avviso nel configure
  • corretta compilazione con KDE 3.2

KSniffer 0.1 [30 Luglio 2005]:

  • avvia la sessione di cattura del pacchetti di rete
  • apre file con formato libpcap
  • trascina e rilascia file in formato libpcap sulla GUI per caricarli
  • salva i file in formato libpcap della sessione di pacchetti catturati
  • attivato l’elemento di menu “Apri recenti”
  • ferma la sessione di cattura dei pacchetti di rete
  • menu tray bar
  • mostra i dettagli dei pacchetti
  • quando la cattura si interrompe puoi ordinare la lista per: numero del frame, tempo, indirizzo sorgente, indirizzo di destinazione, protocollo
  • protocolli rilevati: IP, TCP, UDP, ICMP, ARP

7 thoughts on “Rilasciato KSniffer 0.3

  1. Complimenti per la chiarezza dell’esposizione (cosa rara di recente): spiegando per filo e per segno dalle orogini dell’uomo mi hai messo curiosità così deciso di testare sulla mia kubuntu feisty questa applicazione. Ovviamente nei repository di base si trova la versione precedente, mentre leggo che vi sono alcuni problemi con l’attuale 0.3 ma solo relativa al lancio del programma che deve avvenire in modalità di superutente.
    Dato che non è stato pacchettizzato in .deb per la derivata debian, ho provato ad alienarle l’ .rpm con successo (là fuori gli alieni ci osservano), ma con insuccesso il lancio (là fuori gli alieni se la ridono): peccato, sono pigro e questo era l’ideale :p
    Compilandolo a mano l’output mi dice che non gli gli soddisfano le mie librerie QT messe su: error: Qt (>= Qt 3.3 and < 4.0) (headers and libraries) not found. Bah, ho le 3.3.7 in carica al momento e compilato tempo addietro, se esistono, le 4.2.3… ma come detto pochi caratteri prima al momento sono dannatamente pigro: aspetto il pacchetto estivo comodamente sdraiato sul mio materassino: prima o poi passerà con il suo ombrellino di carta, no?

    In tutto ciò, complimenti ancora!

  2. Beh quasi sicuramente ti mancano i pacchetti devel, ovvero quelli che appunto servono per compilare, prova tipo qt-devel o simili.
    Grazie per i complimenti, sono sempre pochi e quando arrivano sono sempre ben accetti🙂 .
    Ciao,
    Giovanni

  3. Ho letto con molto interesse questo articolo e mi sembra molto buono.
    Ma non riesco a trovare una guida in Italiano per questo programma (serve per testare la mia rete wireles) sai dirmi dove posso scaricarla?.

  4. Non esiste una guida, almeno non ancora per il momento. Il programma è molto intuitivo, naturalmente servono un po’ di funzionalità in più per essere utile a tutti tutti. Ci sto lavorando su al momento. Ogni forma d’aiuto è benvenuta.
    Ciao,
    Giovanni

  5. Beh forse questa versione in particolare no, ma qualche versione precedente sì. La 0.2 di sicuro, anche se ha un po’ di bug e meno features. Ho scritto al responsabile di Kubuntu (l’ho conosciuto 5 anni fa all’annuale incontro per sviluppatori KDE e l’ho rivisto ogni anno, quindi si ricorda di me). Gli ho detto di questo nuovo rilascio e magari con la nuova kubuntu lo aggiorna.

  6. Pingback: Rilasciato KSniffer 0.3.2 « KDE e slacky - amici, nemici e modi di essere

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...