[ Home | Liste | F.A.Q. | Risorse | Cerca... ]


[ Data: precedente | successivo | indice ] [ Argomento: precedente | successivo | indice ]


Archivio: Febbraio 2004 ml@sikurezza.org
Soggetto: Re: R: proxy protocollo NTLM di IIS con squid
Mittente: Simo Sorce
Data: 19 Feb 2004 15:06:05 -0000
On Sun, 2004-02-15 at 15:04, gabriele wrote:

> Mi pare di ricordare che NTLM non si possa "proxare", cioe' 
> quando tu ti autentichi su un nodo di rete tramite NTLM non
> puoi piu' compiere un altro salto poiche' il nodo che ti ha 
> autenticato non dispone delle tue credenziali  di rete.

Questo è falso.
Infatti in samba abbiamo sviluppato winbindd che non solo proxa (lo
facevamo anche prima) ma lo fa in modo efficiente e autenticato (la
macchina con winbindd deve essere aggregata* al dominio e quindi
fidata**.
Infatti in questo modo si verifica un challenge response di questo tipo:


client ------- proxy -------- domain controller

conn----------->
<----------nonce
nonce+
pass+
rc4=
secret---------->  -----------nonce+secret
                              mumble-mumble
                              noonce+pass+rc4 == secret ???
                  <-----------answer

ovviamente il domain controller accetta la coppia nonce + secret perchè
si fida del proxy, altrimenti il proxy può proxare anche tutta la prima
parte della comunicazione al domain controller, ma ciò è più lento e più
oneroso anche per il dc.

Dimenticavo, altra caratteristica del mondo win è che le password sono
degli HASH e non sono altro che dei clear-text equivalent e il server ne
mantiene una copia. Entrare in possesso dell'hash della paswword
equivale ad entrare in possesso della password a tutti gli effetti
(salvo modificarsi i tool per usare direttamente l'hash al posto della
password da line di comando).

> Proprio questo e' uno dei motivi per cui e' stato introdotto kerberos 
> windows 2000, infatti una volta che tu ti eri autenticato su un 
> IIS con NTLM il web server non poteva "impersonarti" verso un 
> eventuale database di backend, con kerberos invece si puo' 
> "proxare" il tuo ticket.

Kerberos è stato introdotto perchè interopera bene col DNS e LDAP e
perchè NTLM è ormai obsoleto e la sua sicurezza veramente molto bassa.

> Quello che chiedi quindi potrebbe risultare non fattibile in senso 
> letterale, quello che puoi fare e' fare autenticare un ipotetico
> utente_1 verso lo squid con ntlm e poi fare in modo che il tuo
> utente_1 venga mappato su un altro utente_2 e squid, con le credenziali
> di utente_2 (credo debba averle "a bordo") si autentichi verso il 
> server IIS remoto.

Molto fattibile e molto poco ipotetico, conosco un soggetto che usa
batterie di squid+winbind con decine di domini fidati** e decine di
migliaia di utenti.


Simo.


* non trovo traduzione migliore al termine join :)
** non trovo traduzione migliore al termine trusted :)
-- 
Simo Sorce - simo.sorce@xxxxxxx
Xsec s.r.l. - http://www.xsec.it
via Garofalo, 39 - 20133 - Milano
mobile: +39 329 328 7702
tel. +39 02 2953 4143 - fax: +39 02 700 442 399

________________________________________________________
http://www.sikurezza.org - Italian Security Mailing List




[ Home | Liste | F.A.Q. | Risorse | Cerca... ]

www.sikurezza.org - Italian Security Mailing List
(c) 1999-2005