High-Tech Bridge Security Research Lab discovered multiple vulnerabilities in Claroline version 1.11.8, which can be exploited to perform Cross-Site Scripting (XSS) attacks against vulnerable web application visitors and administrators.
Cross-Site Scripting (XSS) in Claroline: CVE-2013-6267
1.1 The vulnerability exists due to insufficient sanitisation of user-supplied data in "box" HTTP GET parameter passed to "/claroline/messaging/messagebox.php" script. A remote attacker can trick a logged-in user to open a specially crafted link and execute arbitrary HTML and script code in browser in context of the vulnerable website.
The exploitation example below uses the "alert()" JavaScript function to display "ImmuniWeb" word:
http://[host]/claroline/messaging/messagebox.php?box=%22%3E%3Cscript%3Ealert%28%27ImmuniWeb%27%29;%3C /script%3E
1.2 The vulnerability exists due to insufficient filtration of user-supplied data in "cidToEdit" HTTP GET parameter passed to "/claroline/admin/adminregisteruser.php" script. A remote attacker can trick a logged-in administrator to open a specially crafted link and execute arbitrary HTML and script code in browser in context of the vulnerable website.
The exploitation example below uses the "alert()" JavaScript function to display "immuniweb" word:
http://[host]/claroline/admin/adminregisteruser.php?cidToEdit=94102_001%22%3E%3Cscript%3Ealert%28%27 imuniweb%27%29;%3C/script%3E
1.3 The vulnerability exists due to insufficient sanitisation of user-supplied data in "cidToEdit" HTTP GET parameter passed to "/claroline/admin/admin_user_course_settings.php" script. A remote attacker can trick a logged-in administrator to open a specially crafted link and execute arbitrary HTML and script code in browser in context of the vulnerable website.
The exploitation example below uses the "alert()" JavaScript function to display "immuniweb" word:
http://[host]/claroline/admin/admin_user_course_settings.php?ccfrom=culist&cidToEdit=94102%22%3E%3Cs cript%3Ealert%28%27imuniweb%27%29;%3C/script%3E&uidToEdit=1
1.4 The vulnerability exists due to insufficient sanitisation of user-supplied data in "module_id" HTTP GET parameter passed to "/claroline/admin/module/module.php" script. A remote attacker can trick a logged-in administrator to open a specially crafted link and execute arbitrary HTML and script code in browser in context of the vulnerable website.
The exploitation example below uses the "alert()" JavaScript function to display "immuniweb" word:
http://[host]/claroline/admin/module/module.php?module_id=4%22%3E%3Cscript%3Ealert%28%27imuniweb%27% 29;%3C/script%3E
1.5 The vulnerability exists due to insufficient sanitisation of user-supplied data in "offset" HTTP GET parameter passed to "/claroline/admin/right/profile_list.php" script. A remote attacker can trick a logged-in administrator to open a specially crafted link and execute arbitrary HTML and script code in browser in context of the vulnerable website.
The exploitation example below uses the "alert()" JavaScript function to display "immuniweb" word:
http://[host]/claroline/admin/right/profile_list.php?cmd=exLock&offset=0%22%3E%3Cscript%3Ealert%28%2 7imuniweb%27%29;%3C/script%3E
Solution: Update to Claroline 1.11.9
References:
- High-Tech Bridge Advisory HTB23179 - Multiple Cross-Site Scripting (XSS) in Claroline.
- Claroline - Claroline is an Open Source software to easily deploy a platform for learning and collaboration online.