2026-09-27 1:28CVE-2026-100855VulnCheck
PUBLISHED5.2CWE-862

AzuraCast before 0.23.6 Missing Permission Check via /play

AzuraCast before 0.23.6 contains a missing permission check vulnerability in the GET /api/station/{station_id}/file/{id}/play endpoint that allows authenticated users to download media files from any station. Attackers can enumerate media files using sequential IDs and exfiltrate the complete media library of stations they lack permissions for.

Problem type

Affected products

AzuraCast

AzuraCast

< 0.23.6 - AFFECTED

0.23.6 - UNAFFECTED

References

GitHub Security Advisories

GHSA-rwfr-jcqg-x7jc

AzuraCast before 0.23.6 contains a missing permission check vulnerability in the GET /api/station...

https://github.com/advisories/GHSA-rwfr-jcqg-x7jc

AzuraCast before 0.23.6 contains a missing permission check vulnerability in the GET /api/station/{station_id}/file/{id}/play endpoint that allows authenticated users to download media files from any station. Attackers can enumerate media files using sequential IDs and exfiltrate the complete media library of stations they lack permissions for.

JSON source

https://cveawg.mitre.org/api/cve/CVE-2026-100855
Click to expand
{
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "cveMetadata": {
    "cveId": "CVE-2026-100855",
    "assignerOrgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
    "assignerShortName": "VulnCheck",
    "dateUpdated": "2026-09-27T01:28:47.099Z",
    "dateReserved": "2026-09-27T00:20:03.854Z",
    "datePublished": "2026-09-27T01:28:47.099Z",
    "state": "PUBLISHED"
  },
  "containers": {
    "cna": {
      "providerMetadata": {
        "orgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
        "shortName": "VulnCheck",
        "dateUpdated": "2026-09-27T01:28:47.099Z"
      },
      "datePublic": "2026-04-23T00:00:00.000Z",
      "title": "AzuraCast before 0.23.6 Missing Permission Check via /play",
      "descriptions": [
        {
          "lang": "en",
          "value": "AzuraCast before 0.23.6 contains a missing permission check vulnerability in the GET /api/station/{station_id}/file/{id}/play endpoint that allows authenticated users to download media files from any station. Attackers can enumerate media files using sequential IDs and exfiltrate the complete media library of stations they lack permissions for."
        }
      ],
      "affected": [
        {
          "vendor": "AzuraCast",
          "product": "AzuraCast",
          "defaultStatus": "unaffected",
          "versions": [
            {
              "version": "0",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "0.23.6"
            },
            {
              "version": "0.23.6",
              "status": "unaffected",
              "versionType": "semver"
            }
          ]
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "lang": "en",
              "description": "Missing Authorization",
              "cweId": "CWE-862",
              "type": "CWE"
            }
          ]
        }
      ],
      "references": [
        {
          "url": "https://github.com/AzuraCast/AzuraCast/security/advisories/GHSA-qff7-q5fm-8p76",
          "name": "GitHub Security Advisory (GHSA-qff7-q5fm-8p76)",
          "tags": [
            "vendor-advisory"
          ]
        },
        {
          "url": "https://www.vulncheck.com/advisories/azuracast-before-0.23.6-missing-permission-check-via-play",
          "name": "VulnCheck Advisory: AzuraCast before 0.23.6 Missing Permission Check via /play",
          "tags": [
            "third-party-advisory"
          ]
        }
      ],
      "metrics": [
        {
          "format": "CVSS"
        },
        {
          "format": "CVSS",
          "cvssV3_1": {
            "version": "3.1",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
            "attackVector": "NETWORK",
            "attackComplexity": "LOW",
            "privilegesRequired": "LOW",
            "userInteraction": "NONE",
            "scope": "UNCHANGED",
            "confidentialityImpact": "HIGH",
            "integrityImpact": "NONE",
            "availabilityImpact": "NONE",
            "baseScore": 6.5,
            "baseSeverity": "MEDIUM"
          }
        }
      ],
      "credits": [
        {
          "lang": "en",
          "value": "offset",
          "type": "reporter"
        }
      ]
    }
  }
}