
[ Home | Liste | F.A.Q. |
Risorse | Cerca... ]
Archivio: Gennaio 2006 ml@sikurezza.org Soggetto: Re: [ml] Idea di algoritmo di autenticazione Mittente: matteo Data: Tue, 24 Jan 2006 08:53:21 +0100 (CET)
billiejoex ha scritto:
Salve a tutti. Premetto che non sono assolutamente pratico di crittografia
quindi le cose riportate di seguito potrebbero essere concettualmente errate
se non addirittura inapplicabili. In ogni caso, provo a chiedere ugualmente
il vostro aiuto. :-)
Sto sviluppando un semplice applicativo di port knocking daemon in cui il
server, previa ricezione di determinati pacchetti TCP con flag SYN attivo
mandati dal client su determinate porte, nella giusta sequenza, esegue un
comando (nel dettaglio: l'apertura di una porta tramite iptables).
Il programma allo stato attuale è completo ma gradirei aggiungere
un'ultioriore funzione di sicurezza implementando un rudimentale sistema di
autenticazione.
Il problema di un applicativo di questo tipo è che non stabilendo una
connessione TCP vera e propria (di fatto i pacchetti viaggiano solo dal
client verso il server) non dà modo di implementare algoritmi di cifratura a
chiave pubblica, ad esempio.
L'idea (malsana) che mi è venuta è stata quindi questa:
- Il client manda, all'interno del pacchetto TCP, un hash MD5 risultante dai
valori di [password + data locale + ora_locale (hh:mm:ss)] (ad es:
"mia_password|1-17-2006|15:23.33" = "uijXHuxjX9Xj9").
- Il server riceve il pacchetto (diamo per scontato che il server al momento
della ricezione del pacchetto riporti il medesimo orario di sistema
(15:23:33)) ed esegue la medesima di funzione di hash
("mia_password|1-17-2006|15:23.33" = "uijXHuxjX9Xj9"). Se i due hash
collimano si assume che l'autenticazione sia avvenuta in modo corretto e il
port knocking daemon può eseguire il comando.
Utilizzando un sistema di questo tipo il valore di hash trasmesso è sempre
variabile e un attaccante che sniffa l'hash alle ore 15:23:33 del 1-17-2006
non potrà impiegare lo stesso hash un minuto dopo, ad esempio. Tolte le
debolzze "di terze parti" (es: se l'ora di sistema delle due macchine è
diversa non funziona un bel niente) quella appena descritta può apparire
un'idea sensata?
Piccolo contributo, attendendo gli esperti.
Ciao a tutti Matteo
[ Home | Liste | F.A.Q. |
Risorse | Cerca... ]
www.sikurezza.org - Italian Security Mailing List
(c) 1999-2005