Solo curioso: quali sono alcune tecniche automatiche o anche semi-automatiche per il reverse-engineering dei protocolli di comunicazione?Reverse-engineering dei protocolli di comunicazione
Sono particolarmente interessato al caso quando si annusa il traffico e si cerca di capire il protocollo.
Sono riuscito a trovare uno number of papers on scholar, ma nella mia esperienza questo è un processo completamente manuale la maggior parte delle volte.
Se qualcuno ha esperienza nel settore e ha voglia di condividerlo sarebbe molto apprezzato.
Si sta tentando di reingegnerizzare il codice su una macchina a stati, o indovinare qual è il protocollo osservando solo il traffico di messaggi? –
Quest'ultimo - sto chiedendo come ottenere una specifica del protocollo solo osservando il traffico. – JohnIdol
Senza altre informazioni? Questo è estremamente difficile. Prima si assume un modello di base del protocollo, ad esempio "automi a stati finiti puri"; se ti capita di sbagliare (diciamo che ha un contatore nascosto o un timer), allora non puoi ottenere la risposta giusta, non importa quello che fai. Se hai ragione, devi ancora determinare la struttura del campo del messaggio, quali elementi attivano le transizioni del protocollo e le effettive condizioni di transizione. Le persone scrivono tesi di dottorato cercando di indurre gli FSA a "usare modelli di caso". Se non sei disposto a portare più conoscenze, avrai un momento davvero difficile. –