Il tuo nome utente Windows o Linux può essere esposto ai siti web?

7

Ad esempio:

  • L'accesso a un sito Web con javascript abilitato può esporre informazioni quali browser, caratteri e ora locale. Può, in teoria, esporre il tuo nome utente Windows o Linux?

  • Il salvataggio di un file o il collegamento di un file (come di solito fatto in webmails) espongono il tuo nome utente Windows o Linux, accedendo all'albero delle directory?

Il nome utente che utilizziamo per accedere ai sistemi operativi può essere esposto ai siti Web in qualche modo?

    
posta Strapakowsky 31.05.2013 - 09:30
fonte

1 risposta

7

Il nome utente non è comunemente esposto ai siti web. Forse può essere fatto con Java in qualche modo, ma non dal browser di default. Nota che intendo Java di Oracle, non Javascript!

Alcuni siti Web utilizzano l'autenticazione di Active Directory. Se ne visiti uno con Internet Explorer che viene eseguito nello stesso dominio Windows del tuo computer, verrà automaticamente effettuato il login. Questo utilizza una qualche forma di autenticazione a livello HTTP e trasmette il tuo dominio, nome utente e il nome host del computer. La tua password non viene trasmessa; il browser risponde solo a una sfida del server e dimostra la sua identità in questo modo.

Internet Explorer invia solo queste informazioni (nome utente, dominio e nome host) dopo che il server ha inviato una richiesta e il dominio e il dominio corrisponde al dominio del client. Ad esempio, se il server annuncia che sta eseguendo il dominio Contoso e l'utente è anche connesso al dominio Contoso , Internet Explorer procederà con l'autenticazione e fornirà un nome utente, dominio, nome host e risposta alla sfida, dove la sfida la risposta è un sostituto della password.

Se il dominio non corrisponde, ad esempio il server fa pubblicità di appartenere a Contoso2 , all'utente verranno richieste le credenziali (nome utente e password). Se gli utenti inseriscono queste credenziali, il nome utente verrà ovviamente inviato al server, insieme al nome host. La password è ancora confermata da una sfida, questa non viene mai inviata. Nota che anche se inserisci un nome utente e una password vuoti, il tuo nome host sarà comunque esposto! L'unica uscita sicura è il pulsante Annulla.

L'unico modo per recuperare automaticamente il nome utente, per quanto sono stato in grado di trovare, è conoscere il dominio a cui l'utente ha effettuato l'accesso e l'utilizzo di Internet Explorer da parte dell'utente. Suppongo che il nome del dominio sia spesso ipotizzabile, quindi il phishing mirato di alto profilo potrebbe essere possibile. Inoltre, non puoi mai recuperare automaticamente la password dell'utente, semplicemente il nome utente e il nome host, quindi non sono sicuro di quanto sia utile. Forse per rendere un attacco mirato di phishing ancora più personale.

Un altro metodo per ottenere il nome utente è il controllo ActiveX:

<script type="text/javascript">
alert(new ActiveXObject("WScript.Network").UserName);
</script>

Test di questo in Internet Explorer 9, fornisce due avvisi. Prima di tutto un avviso nella parte inferiore dello schermo che chiede se voglio attivare i componenti ActiveX sulla pagina, e un secondo avviso chiede se sono davvero sicuro perché potrebbe essere dannoso. Con alcuni social engineering potresti attivare il nome utente in questo modo ... ma probabilmente ci sono modi più semplici.

Altri browser come Firefox richiedono sempre un nome utente e una password quando visitano tali siti web. Penso che questi dati vengano inviati in chiaro, ma non l'ho ancora visto. La cosa migliore è usare sempre la sicurezza del livello di trasporto (ad es. Https) quando si esegue qualsiasi tipo di autenticazione. Ma questo tipo di autenticazione non è automatico, quindi probabilmente non è pertinente per la tua domanda.

Aggiornamento: qualcosa che ho dimenticato di indirizzare è stato chiesto se il nome utente può essere esposto quando si selezionano i file con l'elemento input type=file . In breve: no. I browser più vecchi potrebbero farlo , ma nelle versioni recenti di Chrome, Firefox e IE9 I ' l'ho provato e nessuno di loro ha esposto il percorso completo. In Firefox potresti notare mozFullPath proprietà , ma restituisce una stringa vuota quando Javascript tenta di accedervi. Solo il codice con privilegi speciali (immagino come add-on) può usare questo. Anche la specifica dell'API del file HTML5 menziona la parola "percorso" una sola volta, per dire che non dovrebbe essere esposta.

Dichiarazione di non responsabilità: gran parte delle informazioni su Active Directory sono state semplicemente testate, potrebbero esserci degli errori. Ho due domini qui in modo che sia facile vedere il comportamento con Wireshark quando si accede al proprio o all'altro dominio. Ho usato IE9 per il client e Windows Server 2008 per il server. Ho anche utilizzato un altro server di test (php) basato su questo script: link

    
risposta data 31.05.2013 - 10:03
fonte

Leggi altre domande sui tag