Vulnerabilità  XML Quadratic Blowup Attack su Drupal e WordPress, risolta con le ultime versioni

Aggiornato il: 21-02-2022 14:39
Le versioni di wordpress fino alla 3.9.1 sono affette da un bug considerato convenzionalmente minore, ma che dovrebbe destare le preoccupazioni di chiunque abbia installato il CMS per il proprio sito web: una vulnerabilità  per un attacco di tipo DoS, che potrebbe rendere il vostro sito improvvisamente inutilizzabile. Le versioni 3.9.2 di WP (e anche quelle di Drupal 7.31+ / 6.33+ ) hanno messo una patch a questo problema, che permetteva ad un attaccante di saturare le risorse del server mediante un file XML malevolo di pochi kb.

Per risolvere, l’utente non deve fare altro che aggiornare i due CMS all’ultima versione disponibile al più presto (e, al limite, disattivare del tutto il servizio RPC, qualora non fosse utilizzato, per evitare problemi futuri).

L’attacco, noto tecnicamente come “XML Quadratic Blowup Attack“, permette di sfruttare file definiti ad hoc per fare in modo di espandere le entità  del file XML in modo esponenziale, sulla falsariga del Billion Laughs, ad esempio:


 <!ELEMENT lolz (#PCDATA)>
 <!ENTITY lol1 "&lol;&lol;&lol;&lol;&lol;&lol;&lol;&lol;&lol;&lol;">
 <!ENTITY lol2 "&lol1;&lol1;&lol1;&lol1;&lol1;&lol1;&lol1;&lol1;&lol1;&lol1;">
 <!ENTITY lol3 "&lol2;&lol2;&lol2;&lol2;&lol2;&lol2;&lol2;&lol2;&lol2;&lol2;">
 <!ENTITY lol4 "&lol3;&lol3;&lol3;&lol3;&lol3;&lol3;&lol3;&lol3;&lol3;&lol3;">
 <!ENTITY lol5 "&lol4;&lol4;&lol4;&lol4;&lol4;&lol4;&lol4;&lol4;&lol4;&lol4;">
 <!ENTITY lol6 "&lol5;&lol5;&lol5;&lol5;&lol5;&lol5;&lol5;&lol5;&lol5;&lol5;">
 <!ENTITY lol7 "&lol6;&lol6;&lol6;&lol6;&lol6;&lol6;&lol6;&lol6;&lol6;&lol6;">
 <!ENTITY lol8 "&lol7;&lol7;&lol7;&lol7;&lol7;&lol7;&lol7;&lol7;&lol7;&lol7;">
 <!ENTITY lol9 "&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;">
]>
&lol9;

Qualora il parser XML dei due CMS riceva un documento del genere, rileverebbe un elemento root “lolz” che contiene il testo “&lol9;”, che a sua volta espande in una stringa di dieci “&lol8;” che, a loro volta, espandono in altrettanti “&lol7;” e cosଠvia. Un file di circa un 1Kb, seguendo questo criterio, può arrivare ad occupare fino a 3 GB di memoria (costruita di “lol” esponenziali).

Il video seguente mostra un esempio dell’attacco in questione su un WordPress su localhost.

WordPress Denial Of Service PoC Video from Nir on Vimeo.

Per la cronaca, la questione non sembra interessare Joomla! che ha RPC-XML disattivato dalla versione 1.5 in poi.

Photo by devdsp



Questo blog pubblica contenuti ed offre servizi free da 11 anni. – Leggi un altro articolo a caso – Per informazioni contattaci
Non ha ancora votato nessuno.

Ti sembra utile o interessante? Vota e fammelo sapere.

Vulnerabilità  XML Quadratic Blowup Attack su Drupal e WordPress, risolta con le ultime versioni
cyberpunk 12

Ingegnere per passione, consulente per necessità, docente di informatica; ho creato Trovalost.it e ho scritto quasi tutti i suoi contenuti. Ogni guida viene revisionata e aggiornata periodicamente. Per contatti clicca qui

6999839463 ae02bb6a7e hacker
Torna su