Payload XSS e XXE nel valore degli attributi XML

1

Sto testando un'applicazione web con funzionalità di caricamento file. L'unico formato di file possibile è XML. Il contenuto del file salvato in attributi XML viene quindi presentato nella pagina separata.

Ad esempio il file XML ha il seguente aspetto:

<?xml version="1.0" encoding="utf-8"?>
<Request xmlns="http://www.w3.org/1.0">
<Body CaseId="Test/123656">
    <person gender="female">
    <note date="2008-01-10">
</Body>
</Request>

Il valore di CaseID, sesso e data è inferiore a quello presentato su un'altra pagina. È possibile inviare in qualche modo il payload XSS nel valore dell'attributo se l'applicazione web blocca "<"? Vorrei testare anche il XXE, è possibile fare riferimento all'entità esterna nel valore dell'attributo?

    
posta user187205 16.11.2017 - 14:25
fonte

1 risposta

1

I parser XML solitamente interpretano Unicode in modo da poter utilizzare il formato \u00HH e le convalide di bypass per <> , ad esempio:

\u003Cscript\u003Ealert(1);\u003C/script\u003E

Quando XML Parser legge la struttura dei dati da mostrare sulla vista, interpreta i caratteri Unicode e il risultato è il seguente:

<script>alert(1);</script>

Spero che questa informazione ti aiuti.

    
risposta data 16.11.2017 - 17:34
fonte

Leggi altre domande sui tag