Foros del Web » Programando para Internet » PHP »

Seguridad en webs modulares

Estas en el tema de Seguridad en webs modulares en el foro de PHP en Foros del Web. Buenas, Pues he ledio el artículo de zonaphp y... quería saber por ejemplo si se accede a los archivos de los modulos o de los ...
  #1 (permalink)  
Antiguo 12/12/2004, 13:38
 
Fecha de Ingreso: julio-2004
Mensajes: 31
Antigüedad: 13 años, 4 meses
Puntos: 0
Seguridad en webs modulares

Buenas,

Pues he ledio el artículo de zonaphp y... quería saber por ejemplo si se accede a los archivos de los modulos o de los temas directamente, si supondría una falta de seguridad.

Espero vuestras respuestas.

Saludos
  #2 (permalink)  
Antiguo 12/12/2004, 14:18
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 13 años, 7 meses
Puntos: 2
puedes negarles el acceso a los usuarios a dichas carpetas, por medio de un archivo .htacces, creo.

saludos
  #3 (permalink)  
Antiguo 12/12/2004, 20:42
 
Fecha de Ingreso: octubre-2004
Mensajes: 46
Antigüedad: 13 años, 1 mes
Puntos: 0
yo he solucionado esto añadiendo al archivo conf.php lo siguiente:
Código PHP:
define('MODULO_DEFECTO''error')
$conf['error']    = array('archivo'=>'mi404.php','layout'=>LAYOUT_DEFECTO
asi en index.php cuando hace la comprobacion si no existe el modulo que se pasa carga mi404.php y si no se pasa modulo carga el principal (en el ejemplo 'home')
index.php:
Código PHP:
/** Verificamos que se haya escogido un modulo
* sino tomamos el valor del modulo principal (home). 
*/
if (isset($_GET['mod'])) $modulo $_GET['mod']; 
else 
$modulo 'home'
/** Tambien debemos verificar que el valor que nos 
* pasaron, corresponde a un modulo que existe, caso 
* contrario, cargamos el modulo por defecto 
*/ 
if (empty($conf[$modulo])) $modulo MODULO_DEFECTO
como puedes ver lo unico que he hecho ha sido modificar un poco el codigo de la web modular del tutorial y le he añadido el archivo mi404.php del tutorial de zonaphp para personalizar este error.
si puede haber otros problemas de seguridad deberia comentarlo alguien mas experto pq yo llevo poco tiempo en la materia.
un saludo
__________________
:adios: Saludos
Dokan
  #4 (permalink)  
Antiguo 13/12/2004, 06:10
 
Fecha de Ingreso: julio-2004
Mensajes: 31
Antigüedad: 13 años, 4 meses
Puntos: 0
Buenas,

Yo a lo que me refiero es a entrar al modulo directamente, por ejemplo

tuweb.com/modulos/home.php

y quería saber si podría provocar problemas de seguridad, y igual que en los modulos, en los temas de la web.

Salu2
  #5 (permalink)  
Antiguo 13/12/2004, 08:11
 
Fecha de Ingreso: octubre-2004
Mensajes: 46
Antigüedad: 13 años, 1 mes
Puntos: 0
ni se me habia pasado por la cabeza, acabo de comprobarlo y los carga todos, con errores y tal. alguna manera de solucionar esto?
en www.zonaphp.com hay un manual para personalizar la pagina de error 404 que explica como funciona todo esto, pero creo que obvia algun detalle importante pq no la he conseguido hacer funcionar.
ya somos dos esperando algun consejo o algun tutorial para solucionar este problema.
en el manual de php.net no viene nada sobre el .htacces, tal vez en alguno de apache?
__________________
:adios: Saludos
Dokan
  #6 (permalink)  
Antiguo 13/12/2004, 12:07
 
Fecha de Ingreso: julio-2004
Mensajes: 31
Antigüedad: 13 años, 4 meses
Puntos: 0
Buenas,

A mi lo que se me ha ocurrido es algo asi, comprobar si está definida la variable de la ruta del modulo y sino no cargarlo.

Código PHP:
<?php if(!isset($ruta_modulo)) die("No no no..."); ?>
Pero haber si alguien comenta algo más

Saludos
  #7 (permalink)  
Antiguo 13/12/2004, 20:33
 
Fecha de Ingreso: octubre-2003
Ubicación: Veracruz, México
Mensajes: 169
Antigüedad: 14 años, 1 mes
Puntos: 0
Hola, ke tal..

Bueno cheque sus comentarios y a mi se me ocurre usar autenticacion via sesiones, o algún otro medio persistente.
Así como en algunos scripts se coloca una validación para verificar si el usuario está loggeado, se puede emplear una variable que controle:
1)El acceso al módulo.
2) La URL desde la cual se accede al módulo.
3)Si existen procesos encadenados pues se pueden crear controladores de proceso que te digan en que paso vas, y si te quieres brincar a otro no puedas, etc.
Todo sería cuestión de validación.

Ahora también quería comentar que en cuanto a ese tipo de problemas de seguridad tmb es muy comun que pongas por ejemplo:

tuweb.com/modulos/libraries/

y en esa ruta tu tienes almacenadas tus librerias al menos con permisos 775 para poder acceder a ellas libremente. Si un "intruso" teclea lo anterior, y tu web server le permite desplegar el contenido del directorio en el disco duro del servidor te puede exponer a perder información. Así que lo recomendable es generar archivos tipo (index.php) en las carpetas de los modulos con informacion o con procesos muy importantes para por lo menos protegerlos un poco. En ese index.php puedes redireccionar a otras páginas (el home inicial por ejemplo o la URL anterior), incluso puedes generar un archivo de texto que te informe si alguien intento entrar directamente a alguna carpeta sin pasar autenticado o sin hacerlo adecuadamente.

Si es una web modular para una intranet se le puede definir al WebServer que de el servicio web de alguna carpeta en específico solo aun grupo de direcciones. Como lo mencionó Dokan eso es cuestión de revisar la documentación de Apache. Yo en su momento lo hice pero ya no lo recuerdo pero si sé que en la documentación de Apache si viene esa info. No sé si el IIS de Microsoft tmb tenga ese tipo de consideraciones y permisiones, por aquellos de los que trabajen en servidores windows.

Gracias, espero haber colaborado en algo.

Última edición por ray_rockus; 13/12/2004 a las 20:36
  #8 (permalink)  
Antiguo 14/12/2004, 15:34
 
Fecha de Ingreso: julio-2004
Mensajes: 31
Antigüedad: 13 años, 4 meses
Puntos: 0
Buenas, ante todo gracias por tu respuesta ray_rockus,

Todas esas comprobaciones que has dicho... yo creo que sería mucho ponerlas en cada módulo, al menos algo pesado se haría.

Y antes de que se me olvide... si puedes recomendarme otra forma más segura, mejor... yo habia pensado incluir la parte de arriba y la parte de abajo en cada página, por lo que solo habría que modificar esos 2 archivos para cambiar el diseño de la página. Pero claro está que una web modular... si es segura es mejor, por eso quería solucionar esos detalles.

Y sobre la web modular... otra idea que se me había ocurrido, era poner los modulos en vez de en constantes en el archivo config, en una base de datos, asi se podrían añadir mediante un formulario y sería mas sencillo.

Bueno, haber que opinais, que yo creo que a bastante gente le interesa la forma de estructurar la web, y hacerla más segura.

Saludos
  #9 (permalink)  
Antiguo 15/12/2004, 08:49
 
Fecha de Ingreso: julio-2004
Mensajes: 31
Antigüedad: 13 años, 4 meses
Puntos: 0
Buenas,

Alguna sugerencia, please

Salu2
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 19:44.