Agujeros en HTML5

Las aplicaciones actuales como widgets de Twitter, los comentarios de Facebook sobre un artículo o incluso la integración de páginas mediante el empleo de IFRAME. Pueden provocar agujeros de seguridad.

html5

El Sandbox de HTML5.
Sabemos que un IFRAME es bulnerable. Sabemos que el atributo sandbox bloquea el contenido.

Mediante tu navegador puedes confirmar que soporta el atributo sandbox para iframes con JS
if( "sandbox" in document.createElement( "IFRAME" ) ) {
} else {
}

Si tu navegador no soporta este atributo, actualiza la versión.
Personalizando el sandbox con allow-forms.
Si quieres que los formularios puedan enviar datos, indica el valor allow-forms en el atributo sandbox:
<iframe sandbox=»allow-forms» src=»pagina.html»></iframe>
Para habilitar el JavaScript indicamos el valor allow-scripts:
<iframe sandbox=»allow-scripts» src=»pagina.html»></iframe>
Si cargas una página de tu mismo dominio en un iframe utiliza allow-same-origin.
<iframe sandbox=»allow-same-origin» src=»pagina.html»></iframe>
Por sí solo, este valor no es muy útil, tendremos que añadir algún script.
Por ejemplo, si lo que queremos es acceder a un elemento en local del dominio actual:
function loadFromStorage( key ) {
if( localStorage ) {
return localStorage.getItem( key );
}
});

Y también necesitaremos añadirle al atributo sandbox el valor allow-scripts:
<iframe sandbox=»allow-scripts allow-same-origin» src=»pagina.html»></iframe>

Ahora este agujero de html5 lo tenemos mas o menos cubierto.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.