Título: Evitar DoS en mail() Publicado por: nØFi# en 25 Junio 2008, 11:36 am Buenas,
Estoy haciendo un formulario para que los usuarios puedan enviar mails a una cuenta de correo en concreto con la función mail(). Si dejo la función tal cual, cualquier usuario malintencionado podria enviar mails sin limite y colapsar el servidor o cuenta de correo. Para evitar esto he pensado en hacer una pausa (con la funcion pause()) de 2 o 3 segundos antes de ejecutar el mail(). Asi evito que se hagan muchas peticiones en poco tiempo. Lo veis correcto esto? Alguna alternativa mejor? Título: Re: Evitar DoS en mail() Publicado por: Hans el Topo en 25 Junio 2008, 11:55 am lo ideal sería crear un script php basado en cookies o sesiones o en tablas mysql de control que eviten que una misma ip pueda enviar más de x mails en x tiempo
Título: Re: Evitar DoS en mail() Publicado por: nØFi# en 25 Junio 2008, 12:03 pm Si también lo he pensado esto, pero si un usuario coge una lista de proxys y va haciendo peticiones con diferentes ips me quedo igual.
No creo que alguien se interese en hacer esto, pero mejor prevenir :) El problema que le veo al pause, es que cuando se conecten varios usuarios a la vez y quieran enviar mail, se van a tener que esperar un rato.. Por eso nose si hay alguna alternativa mejor. Gracias por contestar ;) Título: Re: Evitar DoS en mail() Publicado por: #!drvy en 25 Junio 2008, 12:30 pm Buenas, que tal con codigo captcha ? eso mismo estoy utilizando para un script en el que estoy ahora.... asi antes de enviar un email el usuario debe introducir el codigo y en caso de que no sea valido le echa xD..
Saludos Título: Re: Evitar DoS en mail() Publicado por: дٳŦ٭ en 25 Junio 2008, 18:50 pm Tambien puedes usar sleep(segundos). ;) Yo usaría una tabla para las ips y un captcha.
|