Estoy leyendo la documentación de Kentico donde describe el uso de hashes para validar cadenas de consulta
EX:http://localhost/KenticoCMS8/cms/getfile/2d003444-9a27-43c9-be97-4f5832474015/Partners_logos_silver.aspx?latestfordocid=75&hash=eee41e027bd45142fd1f44d173d61950f34d6e98f4e35018fda70542322adc77&chset=013bca78-6bf2-42ac-8959-b8bbbeb0a8e8
Documentación enlace
Estoy haciendo una suposición: en su propio hash de una cadena de consulta y su inclusión como parte de la cadena no es útil. Cualquiera que conozca el algoritmo (publicado en el documento de ayuda) puede simplemente generar el hash de su nueva cadena de consulta maliciosa e incluirlo como parte de la solicitud.
La protección adicional que usa Kentico es un sal estático que se incluye cuando se utiliza la función hash de la cadena de consulta. Esto debería hacer que generar tu propio hash no sea tan simple.
Mi pregunta es ¿qué tan difícil sería resolver esta sal? Un atacante podría generar fácilmente muchas cadenas de consulta diferentes. Conocerían la entrada, la salida y el algoritmo. ¿Podrían simplemente descubrir la sal?
Y si conocen la sal, ¿pueden entonces, sin ninguna dificultad, generar sus propias cadenas de consulta?