# [CVE-2017-7998] Gespage stored cross-site-scripting (XSS) vulnerability ## Description Gespage is web solution providing a printer portal. Official Website: http://www.gespage.com/ The web application does not properly filter several parameters sent by users, allowing XSS code injection. These vulnerabilities allow attackers to inject code inside the client web browser, such as malicious scripts in Javascript. Exploitation leads to a full takeover of the web browser and potentially of the operating system. **CVE ID**: CVE-2017-7998 **Access Vector**: remote **Security Risk**: high **Vulnerability**: CWE-79 **CVSS Base Score**:7.3 **CVSS Vector String**: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L ### Proof of Concept 1 (stored XSS) From the admin panel, it is possible to add a printer with a crafted name: ``` "> ``` If an authenticated user loads the "My Jobs" ("https://URL:7181/gespage/users/prnow.jsp") page, his browser processes the Javascript payload, triggering the "printer xss" pop-up message. ### Proof of Concept 2 (reflected XSS) From the registration page, it is possible to inject malicious web code inside all parameters. The POST request looks like the following: ``` POST /gespage/webapp/users/user_reg.jsp HTTP/1.1 Host: IP:7180 User-Agent: Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:51.0) Gecko/20100101 Firefox/51.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: fr,fr-FR;q=0.8,en-US;q=0.5,en;q=0.3 Referer: http://IP:7180/gespage/webapp/users/user_reg.jsp Cookie: JSESSIONID=YOUR_COOKIE_HERE Connection: close Upgrade-Insecure-Requests: 1 Content-Type: application/x-www-form-urlencoded Content-Length: 129 New_User=New&username=test">&email=test%40test.fr&passwd=testtest&repasswd=testtest&fullname=test&accept_term=accept&OK=Enregistrer ``` ## Timeline (dd/mm/yyyy) * 06/03/2017 : Initial discovery * 13/03/2017 : First contact attempt (Web form) * 21/04/2017 : Second contact attempt (public e-mail address) * 23/06/2017 : Phone call and successful e-mail contact * 23/06/2017 : Technical details sent to the editor * 20/07/2017 : No reply, follow-up e-mail * 27/07/2017 : Reply: fix planned for major release 7.5.0 in late September * 17/09/2017 : Informing the editor that we would publish in October * 3/10/2017 : Feedback from Gespage informing us that the issue has been fixed with version 7.4.9. * 02/01/2018 : Release of the advisory ## Fixes Upgrade to Gespage 7.4.9 ## Affected versions * Versions up to 7.4.9 ## Credits * Mickael KARATEKIN -- SYSDREAM Labs GPG : 47D1 E124 C43E F992 2A2E 1551 8EB4 8CD9 D5B2 59A1 * Website: https://sysdream.com/ * Twitter: @sysdream