Foros del Web » Programando para Internet » Javascript »

Evitar carga desde dentro iframe

Estas en el tema de Evitar carga desde dentro iframe en el foro de Javascript en Foros del Web. Estoy intentando crear una serie de operaciones basicas para evitar un poco el XSS en mi pagina y hoy tocaba evitar que se cargara dentro ...
  #1 (permalink)  
Antiguo 25/10/2007, 12:25
 
Fecha de Ingreso: diciembre-2004
Mensajes: 278
Antigüedad: 19 años, 4 meses
Puntos: 0
Evitar carga desde dentro iframe

Estoy intentando crear una serie de operaciones basicas para evitar un poco el XSS en mi pagina y hoy tocaba evitar que se cargara dentro de un frame.

En gmail he visto que usan este codigo para evitar esto:
Código:
function wfs() {

try {
if (parent!=window && parent.wfs) {
return false;
}
}catch(e){}


if (top.location.href.indexOf('nocheckbrowser')!=-1) {
return true;
}
Esto devuelve false si se carga dentro de algun frame externo;
Si devuelve true, cargan el codigo de la aplicacion dentro de un frame que tienen ellos, de lo contrario la pagina se queda en blanco.

Mi pagina no contiene ningun frame donde YO cargue el contenido. Es una pagina normal sin frames, por lo tanto debo adaptar el codigo para conseguir que si esta función devuelve false, la carga de la pagina se detenga.

Una primera aproximación fué esta:
Código:
function noIframe()
{
	try
	{
		if( window.parent!=window && !parent.noIframe() )
			return false;
		else
			return true;
	}
	catch(e){}	
}
if( !noIframe() )
{	window.stop();
}
Lo que hace es detener la carga de la pagina. EL problema esque IE como siempre da por culín, y no se traga el window.stop().

Por lo que he optado por:
Código:
if( !noIframe() )
     parent.location.href = self.document.location;
Que hace que el parent (quien supuestamente esta cargando nuestra pagina desde un iframe) se redirija a nuestra dirección correctamente.

Esta función tiene contemplado el hecho de que existan varios Iframes anidados y que el ultimo cargue nuestra pagina.

Mi duda es si esto es eficaz, ya que si hay muchos iframes, cada uno de ellos realizará una redirección a nuestra pagina, todos a la vez y consecutivamente hacia arriba... nose si me explico... puede esto ser un peligro a su vez??
  #2 (permalink)  
Antiguo 25/10/2007, 12:34
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Evitar carga desde dentro iframe

Hola clinisbut

¿No te serviría este sencillo código?

Código:
<script type="text/javascript">
  if (location != top.location)
    top.location = 'tupagina.html';
</script>
Saludos,
  #3 (permalink)  
Antiguo 25/10/2007, 12:44
 
Fecha de Ingreso: diciembre-2004
Mensajes: 278
Antigüedad: 19 años, 4 meses
Puntos: 0
Re: Evitar carga desde dentro iframe

Ah... posi


JAJAJAJAJA
sisi...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:33.