Nella mia configurazione di codeigniter ho $config['global_xss_filtering'] = TRUE;
. Nella mia sezione di amministrazione ho un ckeditor che genera il contenuto del frontend.Codeigniter global_xss_filtering
Tutto ciò che viene digitato e inserito all'interno dell'editor funziona correttamente, le immagini vengono visualizzate in modo piacevole, html funziona. Tutti tranne flash. Ogni volta che passo alla modalità html e incollo un pezzo di codice di youtube, questo viene salvato e il codice è visibile sulla prima pagina invece di mostrare un film di YouTube.
Se si imposta $config['global_xss_filtering'] = FALSE;
il codice di youtube è passato come dovrebbe. Questo perché 'object', 'embed' ecc sono contrassegnati come "cattivi" da CI e quindi sfuggiti.
Come posso ignorare il filtro xss per questo metodo con un controller?
Stai dando a un utente malintenzionato un percorso facile per incorporare XSS. Tutto ciò che deve fare è codificare in HTML l'attacco. Ignorerà tutti i filtri XSS, quindi sarà riconvertito all'attacco da html_entity_decode. –
In quale altro modo dovrei permettere alle persone di usare l'HTML in una textarea? Lo eseguo tramite HTMLPurifier, non è abbastanza? – zechdc
Anche questo sta eliminando gli attributi di stile inline, se uso qualsiasi –