Todas las solicitudes provienen de una docena de direcciones IP distribuidas en alemán y
Los nombres de host de Amazon AWS de EE. UU., Pero como los términos de consulta que están usando son
No del todo sin relación (son secuencias de números que pasan y
nombres completos raros) para nuestro negocio, tengo que pensar si esto es realmente un
ataque.
A primera vista, parece típico de un ataque de inundación usando servidores proxy y colocando solicitudes de tipo de acción repetidas o indirectas en su servidor web con el objetivo de buscar términos que causen la mayor cantidad de resultados de búsqueda, por lo que consumen la mayor cantidad de uso de CPU como sea posible del servidor de base de datos.
Los números de secuencia podrían ser un ejercicio para romper la memoria caché, ya que el problema con el uso de servidores proxy es que muchos de ellos almacenan en caché para que el atacante quiera que cada envío sea una solicitud real en su servidor web.
Un ejemplo podría ser www.yoursite.com/?searchword=aeroplanes&randomfieldname=100001
Si bien el servidor web ignorará el nombre de campo aleatorio porque no lo está buscando, tomará el valor de la palabra de búsqueda y aplicará la solicitud.
Sin embargo, un proxy de almacenamiento en caché verá lo siguiente
www.yoursite.com/?searchword=aeroplanes&randomfieldname=100001
www.yoursite.com/?searchword=aeroplanes&randomfieldname=100002
www.yoursite.com/?searchword=aeroplanes&randomfieldname=100003
www.yoursite.com/?searchword=aeroplanes&randomfieldname=100004
etc
como nuevas solicitudes, por lo tanto, siempre pase la solicitud a su servidor aunque la palabra de búsqueda no haya cambiado.
Este es un ejemplo de un ataque con martillo.
Sin embargo, normalmente, las herramientas de Hammer son básicas, ya que pueden no comprender una validación más avanzada de una solicitud legítima. Por ejemplo, una solicitud de búsqueda validada podría significar utilizar la validación de imagen, o exigir una respuesta de cookie, o incluso exigir que el navegador de visualización entienda javascript para ejecutar una solicitud de búsqueda válida.
Sin embargo, estas comprobaciones de seguridad adicionales pueden ser molestas para los espectadores de sitios legítimos, por ejemplo, la validación de imágenes.
Eche un vistazo a clase CMS CMS de jabón de inteligencia de contador para obtener ideas de cómo el autor está utilizando una combinación inteligente de sesiones y javascript para exigir que el navegador de visualización entienda js antes de aceptar la solicitud de página. Entonces se inicia un contador de solicitudes y se le niega el acceso a la dirección IP si las solicitudes son demasiado frecuentes ... es decir. como suele ser el caso en los ataques de martillo.
Aunque esa clase fue escrita hace casi una década, sus conceptos son tan válidos hoy como el día en que fueron escritos, aunque es necesario que se actualicen a los últimos estándares de codificación de PHP.