Perché gli iframe sono ammessi nei browser moderni?

17

Ho letto un certo numero di blog sulla sicurezza IT (anche se non sono un esperto di sicurezza) e sembra che una percentuale significativa di exploit in the wild venga distribuita aggiungendo iframe malevoli a un sito Web compromesso, con l'iframe che punta al malintenzionato carico utile.

Dato questo, insieme al fatto che non ho visto quasi nessuna applicazione iframe legittima che non sia antipatica, perché sono permesse a tutti nei browser moderni? Mi sembra che un modo semplice per bloccare un numero significativo di attacchi drive-by sia semplicemente disabilitare il supporto iframe nel browser.

In alternativa, un meccanismo "click-to-load", simile ai plugin "click-to-flash" comuni per molti browser, avrebbe un effetto simile, senza impedire completamente che i siti esistenti utilizzino gli iframe.
In alternativa, probabilmente anche gli iframe che caricano il contenuto da un altro dominio sarebbero probabilmente efficaci.

Certamente non sostengo che il blocco degli iframe risolverebbe ogni soluzione di sicurezza web, ma dal punto di vista dei costi-benefici, sembra un modo molto semplice per eliminare un numero significativo di problemi di sicurezza.

    
posta Fake Name 21.02.2013 - 09:06
fonte

6 risposte

19

Dato che il framing è deprecato e AJAX ha il controllo dell'origine, iframes è praticamente l'unico modo per incorporare un'altra pagina nella tua.

Un'altra cosa è che puoi usare iframe per visualizzare PDF / ecc. Certo, puoi usare <object> anche per quello, ma gli iframe sono più semplici.

GMail è composto da iframe. La semplice UX di GMail (puoi ancora usarla quando la tua connessione internet si interrompe, una navigazione fluida senza doverla ricaricare ogni volta) proviene dagli iframe. Di nuovo, questo potrebbe essere implementato in AJAX, ma è più difficile.

Un'ultima cosa che mi viene in mente è la retrocompatibilità. Molti siti usano iframe, e disabilitandoli ne rompono troppi. Certo, click-to-enable non lo taglierà neanche qui. Uno dei precursori di AJAX era un trucco con iframe e javascript. Un sacco di siti Web utilizzati per usarlo, e "fare clic per caricare" interromperà il flusso del JS.

D'altra parte, i problemi con iframe (CSRF, clickjacking, ecc.) sono ben noti agli sviluppatori moderni e possono prendere misure per evitarlo.

Se lo guardi, gli argomenti in questa domanda potrebbero essere applicati alle applet Java. O Flash. O incorporamento di PDF. O immagini (CSRF). O biscotti Ad esempio, altri siti possono CSRF tramite le immagini. Spetta a te assicurarti che il tuo sito non sia vulnerabile a questi.

    
risposta data 21.02.2013 - 09:24
fonte
8

3-D Secure sistemi di pagamento (ad es. MasterCard SecureCode ) utilizza iframe . Le versioni precedenti utilizzavano un popup, la cui provenienza era molto più facilmente verificabile dall'utente. Apparentemente si è scoperto che gli utenti che presentano un popup VISA / MasterCard non verificano, in realtà, la provenienza del popup; invece, diventa confuso, e balla, interrompendo la sua transazione.

Da ciò possiamo trarre la seguente conclusione: gli iframe non scompariranno presto. Ora sono necessari per la retrocompatibilità con i sistemi di pagamento che, in definitiva, pagano per l'intera Internet. Inoltre, possiamo dire che non usare iframes fornisce benefici per la sicurezza solo nella misura in cui gli utenti attivano il loro cervello e non si lasciano prendere dal panico - non ci scommetterei su questo.

    
risposta data 21.02.2013 - 20:16
fonte
5

L'eliminazione degli iframe potrebbe interrompere la funzionalità e non ottenere nulla.

L'iniezione di exploit viene in genere eseguita con un iframe perché è il modo più conveniente per gli hacker di configurare e gestire il reindirizzamento. Ma gli iframe reali non hanno nulla a che fare con gli exploit. Non è come il click-to-play in cui sei protetto da veri e propri exploit nei plugin Java e Flash direttamente.

Se solo pochi utenti hanno disattivato gli iframe, ottengono un vantaggio in termini di sicurezza evitando questi attacchi. (Anche se, dato che gli iframe sono ampiamente utilizzati per molti diversi tipi di funzionalità sul web, è discutibile se ne valga la pena.)

Ma se tutti i browser disattivano il supporto iframe, gli hacker scelgono semplicemente un altro metodo per iniettare gli exploit in siti compromessi, come <script> diretto, reindirizzamento delle pagine, pop-up e così via.

Una misura di sicurezza che risolva sintomi come <iframe> anziché la causa principale del problema è utile solo se è insolita, in modo che gli aggressori non se lo aspettino. Non appena diventa mainstream, perde il suo valore. Se sei un importante fornitore di browser, poco importa implementare un controllo di sicurezza che diventerà immediatamente inutile.

    
risposta data 22.02.2013 - 11:57
fonte
1

Il world wide web è una raccolta di risorse collegate. Il iframe è il linker definitivo, collega a interi pacchetti di risorse. E come qualsiasi tecnologia, può essere usata nel bene e nel male.

Il iframe non è l'unico modo per collegarsi alle risorse malware. In definitiva, c'è uno script JavaScript o altra risorsa come un SWF o un JAR che sfrutta il browser. Il iframe è solo un modo piacevole, flessibile e compatto per gestire il caricamento di contenuti malware da fonti centralizzate.

Noscript ha il tipo di controlli che block iframes . È disabilitato di default perché rompe un sacco di cose. Molte tecnologie web si basano su iframe e molti Internet si interrompono se blocchi o chiedi iframes .

    
risposta data 21.02.2013 - 09:26
fonte
1

Il iframe è solo un elemento che consente di mescolare il contenuto da diverse fonti verso un cliente. Ci sono altri elementi come questo. Se proibisci iframe elementi, permangono gli stessi rischi per la sicurezza, ad esempio con animazioni Flash. In un elemento object o embed , un sito A che mostra annunci Flash consente a un sito B di decidere quale contenuto verrà visualizzato agli utenti del sito A. Le animazioni Flash possono eseguire script, accedere al micro-storage ... Quindi il cross i rischi del sito ci sono.

    
risposta data 23.02.2013 - 11:36
fonte
1

Il 99% dei video viene presentato negli iframe, inclusi Youtube, vimeo, Vk e la maggior parte degli host di file.

Guarda anche Paypal, 3d sicuro, la maggior parte dei sistemi bancari, EBAY, Amazon, Alibaba, Facebook, la lista è infinita.

TUTTI usano iframe. Visitate i primi 100 siti Web, visualizzate la fonte: scommettete di trovare iframe su quasi tutti.

    
risposta data 18.06.2014 - 11:55
fonte

Leggi altre domande sui tag