Importancia: 5 - Crítica
Aplicaciones web que utilicen alguno de los siguientes lenguajes de programación:
La mejor solución es que los desarrolladores de los lenguajes afectados aleatoricen la clave utilizada ("hash seed") al computar los hashes en la inserción en tablas hash. De este, modo el atacante no podría precalcular las colisiones de hashes:
Por el momento, los operadores o desarrolladores de los sitios web puede tomar las siguientes medidas mitigadoras:
Investigadores de seguridad han presentado en el Chaos Communication Congress un ataque de denegación de servicio sobre servicios web desarrollados en varios lenguajes de programación como PHP, Java o ASP.NET.
Estos lenguajes almacenan los valores sumistrados por el usuario (tipicamente mediante peticiones POST) en tablas hash por su velocidad de recuperación.
El ataque consiste en suministrar al servicio web un gran número de valores precalculados que generan el mismo hash (colisión de hashes), por lo que se almacenarán en el mismo "slot" de la tabla hash lo que provocará un gran consumo de recursos, debido al gran número de comparaciones que hay que realizar para su insercion, que puede provocar una denegación de servicio.