Come verificare se NTLM v2 o v1 è utilizzato per l'autenticazione?

3
  1. Quale strumento dovrei usare per verificare quale autenticazione NTLM è utilizzata? Considera il fatto che io sono un utente dell'applicazione web e non il proprietario.
  2. Vi sono problemi di sicurezza se un sito utilizza l'autenticazione NTLM rispetto all'autenticazione basata su modulo?
posta one 11.07.2016 - 17:13
fonte

1 risposta

1

L'autenticazione basata su form su TLS appropriato e convalidato è la soluzione moderna per l'autenticazione di applicazioni Web che richiede funzionalità SSO (Single Sign On) (ad esempio, SAML, OpenID, OAuth2, FIDO e altri).

L'autenticazione NTLM viene utilizzata solo nelle reti legacy. Microsoft non lo attiva più per impostazione predefinita da IIS 7. Dominio e / o foreste Microsoft con Windows Server 2012 R2 livello funzionale non supporta nemmeno l'autenticazione NTLM per impostazione predefinita. Pertanto, il suo uso è controindicato.

L'autenticazione Cleartext, come via non-SSL / TLS HTTP, si tradurrà in una compromissione delle credenziali dell'app web, indipendentemente da quanto sia strong l'autenticazione NTLM (o altra autenticazione), principalmente a causa di Man-in-the Middle (MITM) scenari, ma anche per molti altri motivi di raccolta di credenziali (vedere il net-creds o PCredz strumenti).

Se vuoi vedere come si presenta NTLM sul filo (scenario MITM opzionale), controlla questo post di blog che afferma quanto segue:

The essential difference between NTLM and NTLMv2 is how the response is calculated. NTLM uses MD4 and DES in a weak way which is well known (5 NULL bytes yada yada yada); NTLMv2 uses HMAC-MD5 based on more than just the password and challenge, which is where the “blob” comes in. So that’s covered off the “challenge”, “HMAC-MD5″ and “blob” that’s missing from the John hash I’m having to build up from scratch.

L'autore continua quindi a mostrare un messaggio HTTP con lo strumento Wireshark.

In alcuni scenari, credo sia possibile invertire quale protocollo NTLM esatto è in uso connettendosi semplicemente a un server Web di autenticazione HTTP-NTLM.

Come si vede nel libro, Network Security Assessment, 3rd Edition:

root@kali:~# telnet 192.168.0.10 80
Trying 192.168.0.10...
Connected to 192.168.0.10.
Escape character is '^]'.
GET / HTTP/1.1
Host: iis-server
Authorization: Negotiate TlRMTVNTUAABAAAAB4IAoAAAAAAAAAAAAAAAAAAAAAA

HTTP/1.1 401 Access Denied
Server: Microsoft-IIS/5.0
Date: Mon, 09 Jul 2007 19:03:51 GMT
WWW-Authenticate: Negotiate TlRMTVNTUAACAAAADgAOADAAAAAFgoGg9IrB7KA92AQAAAAAAAAAAGAAYAA+AAAAVwBJAEQARwBFAFQAUwACAA4AVwBJAEQARwBFAFQAUwABAAgATQBBAFIAUwAEABYAdwBpAGQAZwBlAHQAcwAuAGMAbwBtAAMAIABtAGEAcgBzAC4AdwBpAGQAZwBlAHQAcwAuAGMAbwBtAAAAAAA=
Content-Length: 4033
Content-Type: text/html

Upon decoding the data, the following strings are revealed:

NTLMSSP0
WIDGETS
MARS
widgets.com
mars.widgets.com

Per comprendere queste variabili e un'ulteriore autenticazione NTLM basata su HTTP, controlla le risorse qui - link - così come nella vecchia presentazione su Cracking NTLMv2 Authentication - link (per i diversi interni del provider SLL NTLM)

    
risposta data 21.07.2016 - 23:25
fonte

Leggi altre domande sui tag