Programmazione API a basso livello
Martina Knaus <[email protected]> Fri, 6 Mar 2009 09:06:57 +0100
| Newsgroups | gmane.comp.security.italian.devel,gmane.comp.security.italian |
|---|---|
| Message-ID | <[email protected]> |
Scusa Koba per l'errore, ho disabilitato la voce "formattazione speciale" e spero di inviare il testo correttamente Buongiorno a tutta la lista, mi chiamo Martina e sono una neoiscritta. Perdonate se la prima volta non quoto correttamente. Vi chiedo se possibile qualche suggerimento. Il mio professore mi ha dato da risolvere un problema di questo tipo: devo fare un programma che intercetti le chiamate API e che logghi, permetta o impedisca determinate azioni su un file (posso scegliere un'azione a piacimento). Deve essere piccolo e poco invasivo per la macchina ospitante. Dovrei sviluppare il tutto con C++ ma non =E8 condizione sine qua non. Fino ad ora ho usato Borland C e mi trovo in difficolt=E0 per il compito assegnatomi. Mi =E8 stato consigliato, per semplificare le cose, di dare uno sguardo a Detours che ho installato e studiato. Ho studiato decine di documenti su google, tesi di laurea di varie universit=E0, i codici di alcuni rootkit e keylogger, ecc. Mi =E8 tutto chiaro inerente le API, gli hooks, ecc ma sono in difficolt=E0 su questo punto: 1) ho bisogno di trovare un "telaio" di programma, o un flusso di programma, o una documentazione che spieghi come costruire, passo passo, programmi con API/Hook/Detour functions (non =E8 indispensabile usare Detours) In un certo senso =E8 come voler cercare le regole base di composizione del codice di un banale programma in C, ma fatto con api e hook, che sono per=F2 pi=F9 sofisticate e complesse di un generico codice C (almeno per me). Il problema che ho =E8 quello di capire come, quando, perch=E8 usare una certa funzione/chiamata, nell'interfaccia utente; forse servono le caratteristiche per costruire progetti di programma, in BC o VC, che si rifanno alle applicazioni server, o console, o altro, che ancora non conosco bene: questi tipi di progetti che il compilatore BC o VC gestisce, attivano, nel telaio di programma che mettono a disposizione, le funzioni principali, come winproc, winmain, windll, per cui si parte gi=E0 con qualcosa di preimpostato. Se poi si trova anche un po di documentazione sul come usare le api/hook in un programma... Scusatemi per la lunghezza della mail. Cordiali saluti. Martina K. ________________________________________________________ http://www.sikurezza.org - Italian Security Mailing List