Ver Mensaje Individual
  #6 (permalink)  
Antiguo 18/06/2010, 06:50
Avatar de zerpico_01
zerpico_01
 
Fecha de Ingreso: enero-2008
Ubicación: Wilde - Avellaneda -
Mensajes: 421
Antigüedad: 16 años, 10 meses
Puntos: 13
Respuesta: Evitar que un script se llame directamente

Cita:
Iniciado por neodani Ver Mensaje
Pero aunque verifiques que los datos son correctos, cuando se descubre que variables se están enviando al script lo login.php puedes amañarte un script con curl que vaya probando user y pass no? puede que los datos que envies sean correctos, pero te estan enviando muchiisimas peticiones cada minuto, o cada día si el tio sigue intentandolo.

Llegados a ese punto imagino que quizás vale más la pena mirar los logs del apache y localizar la IP desde la que se hacen los intentos y bloquearla... De ahí que me digas que no es útil verificar si el código procede del mismo servidor

Muchas gracias a todos
Oop!! pero haber que no entiendes, el tema es mas complejo de lo que se te podria explicar aqui, y el solo hecho de darte un ejemplo implicaria una chorrada de codigo... lo que podemos es decirte como hacerlo para evitar problemas.

1.- tu formulario loguin debe tener un regristro de errores, si el usuario comete mas de 7 errores tomar y ejecutar accioenes:
a- banear el ip
b- relacionar el ip con cuentas de usuarios
c- almacenar log del script

2- tu archivo de llamada a la base de datos debe tener un anti flog para evitar el exeso de peticiones

3 tu archivo httaccess debe tener las configuraciones necesarias para evitar ijecciones y el abuso de peticiones

4- todas las variables que usaran datos enviados por el usuario deben ser procesado debidamente ....

5.- todos tus formularios deben ser generados dinamicamente para un solo uso y con tiempo de vencimiento.

6- toda actividad de usuarios no logueado deben ser monitoreada por la aplicacion, en el caso de que se suceda ijeccion via urls, via formulario el admin debe recibir un mail de alerta y aprobechando las nuevas tecnologias un mensaje sms

7- debes usar tecnicas token para links y formularios, debes crear una session unica que compare la fecha hora demas.... juas juaasssss

etc etc etc

y llevaria todo un dia explicar un plan de defensa


PARA TU EJEMPLO TAMBIEN PUEDES USAR variables de servidor :

'SCRIPT_NAME'
Contiene la ruta del script actual. Ésta es útil para páginas que necesitan apuntar a ellas mismas. La constante __FILE__ contiene la ruta completa y nombre del archivo actual (es decir, incluido).
'REQUEST_URI'
El URI que fue dado para acceder a esta página; por ejemplo, '/index.html'.

'HTTP_HOST'
Contenidos de la cabecera Host: de la petición actual, si existe.
'HTTP_REFERER'
La dirección de la página (si la hay) la cual refirió al agente de usuario a la página actual. Este valor es definido por el agente de usuario. No todos los agentes de usuario lo definen, y algunos proveen la capacidad de modificar HTTP_REFERER como una característica del software. En resumen, no se puede confiar realmente en este valor.

para ver mas sobre esto visita el manual oficial php !!
saludos!!!