Carlo's profileBlog semiserio di CarloPhotosBlogListsMore Tools Help

Blog


    March 18

    Compleanno

    E sono 32. Si oggi son passati 32 anni dal primo vagito, giornata tranquilla, una pizza in compagnia niente di più niente di meno, unico neo che la mia connessione ADSL con Tele2 sta andando mooolto ma mooolto più lenta di una vecchia 56k (scarico a 2 K al secondo quando si decide a muoversi) e non vorrei nei prossimi giorni unirmi a quel comitato AntiTele2 che avevo visto proprio a Maggio 2006 quando ero in procinto di passare dalla mamma Telecom a Tele2: i primi 3 mesi di navigazione erano stati più che perfetti ma poi una settimana di assenza totale (con conseguenti segnalazioni telefoniche) nel mese di Novembre m'aveva fatto tornare in mente quella paginettina sul web dove una folla inferocita convogliava con perfetta sincronia e decisione tutta la sua scazzatura verso Tele2. Poi la risoluzione del problema ed il ritorno agli antichi splendori m'avevano fatto offuscare nuovamente gli istinti bellicosi. Però adesso ci risiamo, azzzz. Mi consolo col fatto che so di gente che ha le palle girate a volte anche con Telecom e poi anche con Fastweb: insomma ste palle almeno una volta ogni tot devono arrotolarsi (meglio adeguarsi quindi e restare prevenuti).  
     
    Beh, mi sono scaricato WinPcap 4.0 (i binari, il kit di sviluppo ed i sorgenti completi) ed ho una mezza idea di adattare la conversione in Delphi che già ho;
     
    Installer (contenente driver + DLLs) 
     
    Development Kit
     
    Sorgenti
     
    Ok, mettiamoci al lavoro
     
     
     
     
     
     
      
    March 05

    Tante cose ...

    Questa è una di quelle giornate in cui ti metti a navigare sul web, trovi un sacco di cose nuove, per lo più interessanti, cerchi di approfondirle tutte ... ed alla fine non hai concluso nulla: troppe cose, troppe ... e soprattutto troppo diverse tra loro; che dire ad esempio di quello che ho aperto adesso sul portatile:
     
    1) ho la cartella con la Detours Library in versione Express (downloadabile dal web all'url http://research.microsoft.com/sn/detours/) e mi sto studiando il file creatwth.cpp che contiene una validissima implementazione di creazione di un nuovo processo e seguente injection di una dll nel suo spazio di memoria: il concetto di base è lanciare in forma SUSPENDED il processo in questione e poi modificare la tabella IAT del .exe associato al processo direttamente nell'immagine caricata in memoria; in questo modo quando vado ad eseguire il Resume del processo, la nostra dll viene caricata dal Loader di Windows che la rileva appunto tra i moduli inclusi nella tabella IAT del .exe. Sto cercando di compilare il file creatwth.cpp con Borland C++ 5.5 commandline compiler (che guardacaso non riesco più a trovare in rete ma che fortunatamente ho recuperato dai salvataggi vari di un paio d'anni fa): in questo modo ottengo infatti un .obj conforme al formato OMF (Object Model Format) e non un COFF così come viene creato da Visual C++. In questo modo lo posso usare anche da dentro Delphi. Risultato? Behh dopo avere sbattuto nel file in questione tutte le dichiarazioni utili incluse negli altri file (ed aver quindi ottenuto un file autonomo in tutto e per tutto) il file obj viene creato ma all'atto del linking da Delphi mi da errori inerenti alcune funzioni che non vengono trovate. Quindi ancora nulla. Sarebbe il massimo riuscire a farlo funzionare perchè in questo modo riuscirei nella maniera migliore a risolvere i problemi legati al malfunzionamento di alcuni miei applicativi basati su dll injection su tutti i processi: è risaputo infatti che eseguire un CreateRemoteThread (per mappare la dll) su un processo Suspended, il più delle volte fa crashare il processo all'atto del Resume.    
    2) ho aperto Mozilla Firefox per visualizzare un articolo storico dell'hacking in User Mode: "Invisibility On NT Boxes" (articolo downloadabile all'url http://vx.netlux.org/lib/vhf00.html) del grande "Holy_Father" (http://hxdef.org/); sto facendo gli ultimi ragionamenti riguardo all'api hooking sull'api Native LdrInitializeThunk (implementata in ntdll.dll) che viene eseguita appena prima dell'esecuzione del main del .exe.
    3) Sto allestendo con Microsoft Visio una serie di grafici sul formato PE
    4) Sto aggiungendo pagine al mio sito
    5) Sto guardando un progetto di api hooking sulle Winsock
    6) Ho trovato un bel sito www.hackerscenter.com da cui sto scaricando centinaia di mega di sorgenti e docs
    7) Son capitato per caso su sto indirizzo http://blogs.hackerscenter.com/xdisclose/?p=4 dove si spiega come accedere al database degli indirizzi internet BlackListed da Google e altro; da li poi sono passato al valido sito dell'autore http://www.xdisclose.com/ che, tra le tante cose include anche una semplice interfaccia web per i principali programmi di messaggistica: utile per chi ad esempio lavora ed in ambito aziendale ci sia un firewall che blocchi i pacchetti associati.
    8) Devo decidermi a stare una settimana (non mi servirà di più) a rifinire la versione in PHP+MySQL del mio sito
    9) Guardo un pò di libri su GigaPedia
    10) Ho visto Michele, amico di 10 anni fa e m'è tornata la passione per gli aerei da combattimento (eravamo assidui frequentatori dell'areoporto di Miramare di Rimini ai tempi in cui era ancora militare e c'erano i mitici F-104)... ma questo sarà l'argomento di un altro intervento
    11) Sto impratichendomi col formato djvu e software affini per comprimere immagini di pagine di libri
    12) Ogni tanto spezzo con l'ultimo album dei Beneath The Massacre
    13) http://www.btframework.com/download.htm evvai con la gestione del BlueTooth da software (VCL ed ActiveX)
    14) Lorenzo m'ha segnalato questo forum http://www.opensc.cjb.net/ ed ha quindi buttato benzina sul fuoco (bel forum davvero Lorenzo)
    15) Stasera mi guarderò 2 film che mi rilassano parecchio: "pirati di Silicon Valley" ovvero la storia di Bill Gattes e Steve Jobs e poi "Borotalco" di Verdone ("...mi imbarcai su un cargo battente bandiera liberiana...")
     
     
     
     
    March 02

    Delphi e WinPCap

    WinPCap è il driver per antonomasia usato per lo sniffing dei pacchetti di rete: non è il caso di fare un elenco di software che ne facciano uso in quanto tutti (e dico tutti) i software detiti al packet sniffing ricorrono a WinPCap. L'home page del progetto (giunto oggi alla versione 4) è http://www.winpcap.org/ dove si può trovare tutto l'occorrente (sorgenti, binari, documentazioni, etc...). Verso la fine del 2005 è stato eseguito e pubblicato il porting (non totale ma quasi) degli header .h (che appunto includono definizioni di tipi e dichiarazioni di funzioni relativamente al pacchetto) in Delphi:
     
     
    Ho scaricato il pacchetto e mi sono compilato gli esempi (naturalmente prima mi sono installato WinPCap) e devo dire che lo sniffing funziona ed ho apportato anche alcune modifiche ai sorgenti dei demo con risultati soddisfacenti. Per la precisione il porting fa riferimento alla versione 3.1 di WinPCap (5 Agosto 2005) che tra l'altro è anche inclusa nel pacchetto.  
     
    Behh, quindi anche da Delphi possiamo fare una bella sniffatina ...
     
     
      

    Anonimato in rete con TOR

    TOR consente di effettuare connessioni anonime in rete: siano esse connessioni web o ssh o istant messaging, etc..., con tor si risulta anonimi nel senso che, nell'ambito delle connessioni eseguite, non risulta mai il proprio indirizzo IP; usando TOR le connessioni vengono reindirizzate verso una rete di server distribuiti detti Onion Routers: si è protetti ad esempio nei confronti del profiling che viene eseguito dai server Web, ossia nel log del web server non risulterà mai il proprio indirizzo IP (per intenderci quello che viene assegnato dal proprio provider ADSL all'atto dell'apertura di una normale connessione internet e che quindi ci identifica univocamente). Ma lo stesso discorso vale ad esempio anche nel caso di intercettazioni locali che possono loggare l'elenco dei siti web visitati e questo perchè appunto le nostre connessioni vengono reindirizzate verso i server della rete TOR. L'home page del progetto (al quale può partecipare chiunque mettendo a disposizione i propri server e la propria banda installando ad esempio TOR server sulle proprie macchine) è la seguente:
     
     
    Qui si può accedere alla documentazione (ben fatta) e scaricare il software che è disponibile sia per Windows sia per Mac OS X sia per Linux: Tor Client, Tor Server, Vidalia (interfaccia grafica per Tor che è in effetti un applicativo da linea di comando) e Privoxy che è un filtro Web Proxy.
     
    Per poter utilizzare il proprio software con TOR (e quindi rendere anonime le connessioni effettuate col software stesso) è disponibile sul web una marea di informazioni; sicuramente una delle procedure più immediate è quella che riguarda Mozilla Firefox: il TorButton, disponibile come Plugin da scaricare, si integra in Firefox e consente di abilitare/disabilitare con un semplice click l'interazione della Volpe infuocata con gli Onion Routers:
     
     
    Per quanto riguarda la navigazione anonima va sicuramente segnalato TorPark, una versione modificata di Firefox Portable (http://portableapps.com/apps/internet/firefox_portable) che si collega in automatico alla rete TOR; il bello è che poi non richiede installazione: si posono mettere i file in una chiavetta USB e via. Disponibile chiaramente anche il sorgente. TorPark è a detta di molti la soluzione migliore per il browsing anonimo in rete in quanto tutto il programma è stato ottimizzato per questo tipo di funzionalità. 
     
     
    Degna di nota è anche la documentazione su come integrare la connettività con la rete TOR in Azureus
     
    Azureus: client BitTorrent : http://azureus.sourceforge.net
     
     
     
     
      
    March 01

    Caldino estivo e virtualizzazione

    Ebbene ... mi accingo ad aggiungere il primo intervento in questo blog personale: behh che dire, bella giornata, un caldo decisamente esagerato e fuori luogo per un 1° Marzo, mi sa che se progredisce alla pari degli altri anni, verso Luglio bisognerà girare con un congelatore in testa. Sto spataccando un po con Altiris SVS: ottimo software di virtualizzazione delle applicazioni; ti crei un oggetto "applicazione" (proprio come in VMWare o Virtual PC o Parallels ti crei un oggetto "sistema operativo") ed a quel punto tramite i suoi driver su File System e Registro intercetta tutte le modifiche sui medesimi (creazione/modifica di file, creazione/modifica di chiavi e valori di registro) effettuate dall'installer dell'applicazione: tutte le modifiche al sistema vengono registrate e quando non si vuole più l'applicativo installato, basta cancellarlo dall'elenco di Altiris SVS, e ... TAAAC eccolo scomparso dal sistema che risulta tale a quale a com'era prima del lavoro (a differenza di una installazione comune). Il concetto base è il concetto di layer: tutte le modifiche stanno in un layer che va a sovrapporsi al layer base che è quello rappresentato dal sistema operativo; in pratica è un discorso analogo ai layer di Photoshop: ho ad esempio 2 layer uno sull'altro e l'immagine risultante è la sovrapposizione dei 2; poi basta che elimino un layer che mi rimane l'altro; la stessa cosa fa Altiris SVS: intercetta tutte le modifche al sistema e le mette su un layer che va a sovrapporsi al layer di base costituito dal sistema operativo (il quale rimane intatto in quanto le modifche vengono redirette e tradotte in oggetti aggiunti al nuovo layer); basta togliere il layer per tornare ad avere solo il layer di base ossia il sistema operativo com'era in origine prima dell'installazione. Il bello è che è disponibile per il download una versione trial di 120 giorni con tutte le caratteristiche abilititate, ma anche una versione Personal senza scadenza (che è quella che sto provando) e che ha già notevoli funzionalità.
     
    links:
     
    Home Page
     
    Ottimo pdf di riferimento con la spiegazione del meccanismo di funzionamento (drivers, etc...)
     
    Behh, promette proprio bene questo programma, siamo nell'era della virtualizzazione ... e con VMWare siamo alla versione 6