Home | Chi sono | Contattami
 

Progr. lineare

Delphi
 
Componenti
  Database
 
Miei articoli

Windows

Miei articoli 

 

Network Sniffing


Rilevare il traffico di rete può essere utile in diversi contesti (buoni e cattivi). Ho voluto elencare 4 approcci alla questione.

1) Tecnica Raw Sockets

Questo esempio è tratto dai sorgenti downloadabili da www.thedelphimagazine.com; consente di selezionare una delle Network Interfaces riconosciute dal sistema e sniffare il traffico di rete che passa per la Network Interface in questione. Se ad esempio si seleziona la connessione ad internet si possono vedere i dettagli delle navigazioni e quant'altro. Il tutto gira intorno alle Winsock 2 ossia le api win32 per il networking implementate nella dll ws2_32.dll

iplog.7z

 

2) Usare WinPCap con "Magenta Systems Internet Packet Monitoring Components"

WinPCap (sviluppata dal politecnico di torino) è sicuramente la libreria di network sniffing più usata (e ci sono dei più che buoni motivi di efficienza): da Wireshark (ex Ethereal) a Cain&Abel e così via, questa libreria che consiste essenzialmente di un driver e di un set di dll per l'interazione col driver in questione è tuttora il punto fermo nella realizzazione di applicativi per il Network Sniffing; il suo utilizzo consente la rilevazione di pacchetti tralasciati dall'approccio Raw Sockets discusso sopra, fornendo un full network sniffing.

Installer (contenente driver + DLLs)
http://www.winpcap.org/install/default.htm

Development Kit (WpdPack) e Sorgenti di WinPCap (WpcapSrc)
http://www.winpcap.org/devel.htm

I Magenta Systems Internet Packet Monitoring Components sono un package di componenti Delphi che consentono di utilizzare WinPCap da Delphi; sono aggiornati a fine Ottobre 2005 e testati con la versione 3.1 di WinPCap, tuttavia il package (e soprattutto i demo associati) funzia anche con la versione 4 (attualmente è in beta la 4.1). [update - Marzo 2009]: l'ultima versione (1.2 del 1 Settembre 2008) è costruita sulla versione corrente di WinPCap ossia la 4.0.2. [/update] Parallelamente all'utilizzo di WinPCap, questi componenti implementano anche la tecnica Raw Socket consentendo quindi di scegliere tra l'una e l'altra. [update - Marzo 2009]: la tecnica Raw Socket viene implementata utilizzando la ICS (Internet Component Suite) (ok con la v5 che è la release ufficiale corrente ma anche con le versioni più recenti ossia v6 e v7).[/update]

[update - Marzo 2009] l'ultima versione (1.2 del 1 Settembre 2008) supporta tutte le versioni di Delphi dalla 6 alla 2009 ed è stata testata sui sistemi Windows dal 2000 in su (inclusi anche gli ultimi Vista e 2008). [/update] 

 

3) Hook delle Winsock

Facendo api hooking sulle Winsock , è possibile intercettare le varie connessioni di rete relative ai vari processi. Per un pò di divagazioni al riguardo si può far riferimento all'articolo

http://pasotech.altervista.org/blogbest/Appsniffer.htm

Nell'articolo viene trattato lo User Mode Api Hooking sulle Winsock; vi sono diversi modi per mappare la dll che implementa il Winsock Api Hooking nello spazio di memoria del processo che si vuole tracciare: se ad esempio si vuole sniffare ciò che fa Interne Explorer , la carta del Browser Helper Object è sempre valida.

 

4) Layered Service Provider

La prima volta che son venuto a conoscenza di questa tecnologia è stato nel 2001 dopo aver reversato il software p2p basato sulla rete FastTrack e denominato iMesh: l'installer ti smerdava il pc con quantità non consentite di trojan, etc... e tra questi almeno uno installava un Layered Service Provider. Rimando a Google per approfondire l'argomento.

http://www.google.it/search?q=layered+service+provider

 

 

 

 
 
Your Ad Here