Un attaccante attivo che si posiziona per alterare il tuo traffico di rete può fare tutto ciò che l'ISP può fare al tuo traffico HTTP. In questo senso, un MITM (il tuo ISP) che inserisce il contenuto in una pagina non altera la capacità di un altro MTIM (un utente malintenzionato) di leggere o scrivere il tuo traffico.
Tuttavia, la preoccupazione principale sembra essere rappresentata dagli attacchi passivi che vengono miniati dal servizio da parte dei meccanismi client-side. Dal tuo primo articolo:
Even if Comcast doesn't have any malicious intent, and even if hackers don't access the JavaScript, the interaction of the JavaScript with websites could "create" security vulnerabilities in websites, Schoen said. "Their code, or the interaction of code with other things, could potentially create new security vulnerabilities in sites that didn't have them," Schoen said in a telephone interview.
Come esempio banale, supponiamo che un sito consumi JSON fornito come parametro URL come http://example.com/show?json={"foo":5,...}
. Il sito utilizza la funzione JavaScript JSON.parse
per analizzare il JSON. Nel frattempo, uno sviluppatore sconsiderato dell'ISP ha incluso la riga JSON.parse = function(e){return eval("("+e+")")};
nel loro script MITM (perché JSON.parse
non è supportato nei browser più vecchi, e il suo comportamento è fondamentalmente un sottoinsieme di eval
comunque).
Ciò consentirebbe ovviamente a un utente malintenzionato di inviarti un link come http://example.com/show?json=sendToBadGuys(document.cookie)
a un risultato potenzialmente disastroso. L'attaccante non ha bisogno di essere in grado di intercettare il tuo traffico; l'autore dell'attacco deve solo essere in grado di farti fare clic su un link . Il sito ha ricevuto una nuova vulnerabilità di sicurezza dal proprio ISP.
Naturalmente, nessuno è abbastanza sciocco da sovrascrivere completamente JSON.parse
con eval
(o, comunque, è il sogno), ma questo esempio dimostra che l'abilità del MITM di intromettersi con l'ambiente JavaScript è chiaramente pericolosa cosa, anche se ben intenzionata.
Inoltre, come preoccupazione completamente separata, qualsiasi informazione che il MITM ben intenzionato include potrebbe essere letta da un MITM malevolo. Ad esempio, se il tuo banner dell'hotel aggiunge informazioni personali come "Tempo rimanente per John Smith nella stanza 123: dieci minuti" a tutte le tue pagine Web HTTP, ovviamente è anche una preoccupazione.