
SMF utiliza un captcha de audio formado por la voz de una mujer que dice cada letra del alfabeto. El usuario (que podría ser ciego) necesita escribir estas letras para superar la respuesta al desafío. La vulnerabilidad identificada por CVE-2008-2019 en realidad evita un parche introducido para corregir CVE-2007-3308. Este exploit solo utilizaba una simple comparación de cadenas (https://www.securityfocus.com/archive/1/471641/100/0/threaded). Para evitar que una comparación de cadenas funcionara, se volteaban bits aleatorios en la modulación por impulsos codificados (PCM) que compone los archivos WAV, lo que cambia el valor lo suficiente como para impedir una comparación de cadenas, pero suena como una ligera señal de ruido para un humano.
El fuzzing de coincidencias utilizando un cálculo de distancia de Hamming o la distancia de Levenshtein puede usarse para comparar la modulación por impulsos codificados (PCM) de la fuente de audio original con la respuesta de desafío compuesta generada por el captcha de audio. Usando un cálculo de distancia de Hamming para buscar coincidencias cercanas basadas en una heurística estática, un corte de unos pocos cientos frente a unos pocos miles es suficiente para determinar la respuesta necesaria para resolver la respuesta al desafío del captcha.
Un cálculo de distancia de Hamming funciona aquí porque el ruido introducido por Simple Machine Form (SMF) solo volteaba bits aleatorios, no se emplearon inserciones ni eliminaciones. Una revisión posterior del captcha añadió pausas cortas al PCM; estas inserciones de espacio en blanco podrían identificarse con Levenshtein, mientras que incluso una pequeña inserción descartaría un cálculo de distancia de Hamming.
publicado: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-2019 https://www.exploit-db.com/exploits/32462 https://simplemachines.org/community/index.php?P=c3696c2022b54fa50c5f341bf5710aa3&topic=236816.0