Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/09/2004, 20:10
Avatar de Takitei
Takitei
 
Fecha de Ingreso: septiembre-2004
Ubicación: Venezuela
Mensajes: 1.231
Antigüedad: 19 años, 7 meses
Puntos: 5
Evitar acceso a páginas incluidas()

Hola a todos.

Tengo un sitio web realizado tipo plantilla, donde el diseño se ecuentra en index.php y las distintas secciones son llamadas mediante index.php?go=seccion.

Aca les pongo el code:

Código PHP:
cabecera en HTML... bla bla bla
<?php
$inclussion 
= isset($_GET['go'])?basename("$_GET[go].php"):'';
if(empty(
$inclussion)){
  include(
'main.php');
}else{
  if(
file_exists($inclussion)){
    include(
"$inclussion");
  } else {
    echo 
"Sección inválida";
  }
}
?>
pie en HTML... bla bla bla
Mi problema... es que no se cómo hacer para que no se pueda acceder directamente a los archivos correspondientes a las secciones.

Si entramos a index.php?go=muestras entonces se incluye() el archivo muestras.php. Pero si entramos a muestras.php directamente...se verá el contenido de dicho archivo y no quiero que eso pase.

He estado pensando como validar eso, pero no se me ocurre nada. Ni con sesiones, ni cookies funciona. Con variables sencillas no funcionaría, ya que cualquier usuario podría colocar la variable via URL en caso de que el servidor tenga register_globals=on.

Tantas horas de trabajo me han frustrado. ¿se les ocurre algún buen método para resolver este agujero de seguridad?

Mil gracias y un saludo!
__________________
Takitei
Ingeniarte.com
DannyHerran.com
"Dadme un punto de apoyo y moveré la tierra" - Arquímedes.