Come risolvere i problemi di sicurezza XSS in FCKeditor / CKeditor?

11

Un rapporto sulla sicurezza che abbiamo condotto tramite una società esterna ha segnalato le vulnerabilità XSS in FCKeditor che stiamo utilizzando nella nostra applicazione PHP.

Hanno sottolineato che l'accesso a URL come:

http://www.ourdomain.com/fckeditor/editor/filemanager/browser/mcpuk/connectors
    /php/connector.php?Command=837<script>alert(0)</script>&Type=837
    <script>alert(1)</script>&CurrentFolder=837<script>alert(2)</script>
    &ExtraParams=837<br><br><br><iframe src=http://www.google.com/ 
    height=100% width=100%></iframe>

Conduce a codice come quello che viene generato (dal browser - > visualizza sorgente):

Invalid command.Array<br />
(<br />
[Command] => 837<script>alert(0)</script><br />
[Type] => 837<script>alert(1)</script><br />
[CurrentFolder] => 837<script>alert(2)</script><br />
[ExtraParams] => 837<br>
<br>
<br>
<iframe src=http://www.google.com/ height=100% width=100%></iframe><br />
)<br />

Non ho idea di cosa faccia questo script php interno di FCKeditor e se possa diventare una fonte di contenuto XSS nel mio sistema? È un vero problema?

    
posta siliconpi 05.01.2011 - 13:28
fonte

2 risposte

11

Di solito non c'è molto che puoi fare riguardo a vulns in componenti di terze parti.
Tra le tue opzioni:

  • Inizia aggiornando all'ultima versione. Se lo risolve, hai finito.
  • Contatta il fornitore in modo responsabile e ottieni una soluzione da loro.
  • Se è open source, prova a correggerlo da solo o trova qualcuno che lo abbia fatto. Assicurati solo di farlo bene e correggere XSS può essere complicato e / o confuso.
  • Se nessuna delle opzioni di cui sopra è possibile, prendere in considerazione la rimozione di questo componente dal sistema. È sempre un rischio, quando prendi qualche altro componente alla cieca, se non sei in grado di farlo riparare ...
  • In effetti, diventa un criterio per eseguire una revisione della sicurezza su qualsiasi codice di terze parti precedente che lo integri nel tuo sistema.
  • Se DEVE assolutamente continuare a utilizzare un componente vulnerabile, riconsiderare :). Ma in realtà, se è un affare fatto, considera di proteggerlo con un WAF (web application firewall). Non risolve il problema, ma può aiutare a prevenire lo sfruttamento ...
risposta data 05.01.2011 - 23:34
fonte
11

FCKEditor è un editor di testo indipendente dalla piattaforma per applicazioni web.

Questo tipo di exploit è un vettore di attacco XSS riflesso. Puoi leggere ulteriori informazioni su questa domanda qui: can-anybody-explain -Xss.

Questo sta succedendo perché FCKEditor non disinfetta l'input dato nelle variabili, portando l'applicazione a riflettere le variabili all'utente.

Consiglierei i seguenti passaggi:

  • upgrade all'ultima versione di FCKEditor
  • Aggiustalo da solo e, se ciò non risolve il problema, correggilo io stesso applicando una corretta sanitizzazione alla sceneggiatura. Nel tuo caso sembra che un cast semplice (int) sia sufficiente per risolvere questo problema.
  • Richiedi la patch del fornitore APPENA POSSIBILE

Puoi anche vedere un elenco di altri exploit per FCKEditor su at exploit-db.com . Ricordati solo di continuare a correggere le tue applicazioni!

    
risposta data 05.01.2011 - 13:42
fonte

Leggi altre domande sui tag