Skip to content
Heist/ feed
Back to feed
Medium

LibreChat: Image Upload Route Bypasses Agent Permission Check — Incomplete Fix for File Upload Authorization

Type: advisorySources: OSV

LibreChat is an enhanced ChatGPT clone that supports multiple AI providers. Prior to 0.8.4-rc1, the POST /api/files/images endpoint allows any authenticated user to upload files into any agent's tool_resources (e.g., context, execute_code) without verifying ownership or EDIT permission on the target agent. A permission check was added to the POST /api/files route in a previous patch, but the image upload route was never updated with the same check. An attacker can simply use the image endpoint instead of the file endpoint to bypass the authorization entirely. This vulnerability is fixed in 0.8.4-rc1.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-54027
Confirmed fixed CVEs
Not specified
Updated in this feed
5 Nov 2026, 10:13 UTC · Revision 1

Source evidence

LibreChat: Image Upload Route Bypasses Agent Permission Check — Incomplete Fix for File Upload Authorization

core-osv · Original source

Published 25 Jun 2026, 15:52 UTC

LibreChat is an enhanced ChatGPT clone that supports multiple AI providers. Prior to 0.8.4-rc1, the POST /api/files/images endpoint allows any authenticated user to upload files into any agent's tool_resources (e.g., context, execute_code) without verifying ownership or EDIT permission on the target agent. A permission check was added to the POST /api/files route in a previous patch, but the image upload route was never updated with the same check. An attacker can simply use the image endpoint instead of the file endpoint to bypass the authorization entirely. This vulnerability is fixed in 0.8.4-rc1.

osv:CVE-2026-54027
Complete source record
{
  "id": "9c390e5d7c7a520444ff7937f4f69381eb74ef910464d5eb26587c0cb2bb4fb9",
  "url": "https://osv.dev/vulnerability/CVE-2026-54027",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "LibreChat: Image Upload Route Bypasses Agent Permission Check — Incomplete Fix for File Upload Authorization",
    "summary": "LibreChat is an enhanced ChatGPT clone that supports multiple AI providers. Prior to 0.8.4-rc1, the POST /api/files/images endpoint allows any authenticated user to upload files into any agent's tool_resources (e.g., context, execute_code) without verifying ownership or EDIT permission on the target agent. A permission check was added to the POST /api/files route in a previous patch, but the image upload route was never updated with the same check. An attacker can simply use the image endpoint instead of the file endpoint to bypass the authorization entirely. This vulnerability is fixed in 0.8.4-rc1.",
    "evidence": "osv:CVE-2026-54027",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-54027",
      "aliases": [
        "CVE-2026-54027",
        "GHSA-c55r-p24w-hcj5"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/LibreChat-AI/LibreChat",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "b5a55b23a4b2f5f6428679b1ee358f18b02d51d8"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "0.8.4-rc1"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "cpe": "cpe:2.3:a:librechat:librechat:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "last_affected": "0.8.3"
                      }
                    ],
                    "source": "CPE_RANGE"
                  }
                ]
              }
            }
          ],
          "versions": [
            "chart-2.0.1",
            "v0.8.3",
            "chart-2.0.0",
            "v0.8.3-rc2",
            "chart-1.9.9",
            "v0.8.3-rc1",
            "chart-1.9.8",
            "v0.8.2",
            "chart-1.9.7",
            "v0.8.2-rc3",
            "chart-1.9.6",
            "v0.8.2-rc2",
            "chart-1.9.5",
            "v0.8.2-rc1",
            "v0.8.1",
            "chart-1.9.4",
            "v0.8.1-rc2",
            "chart-1.9.3",
            "v0.8.1-rc1",
            "chart-1.9.2",
            "v0.8.0",
            "chart-1.9.1",
            "v0.8.0-rc4",
            "chart-1.9.0",
            "v0.8.0-rc3",
            "v0.8.0-rc2",
            "v0.8.0-rc1",
            "v0.7.9",
            "librechat-1.8.9",
            "v0.7.9-rc1",
            "v0.7.8",
            "v0.7.8-rc1",
            "v0.7.7",
            "v0.7.7-rc1",
            "v0.7.6",
            "v0.7.6-rc1",
            "v0.7.5",
            "v0.7.5-rc2",
            "v0.7.5-rc1",
            "v0.7.4",
            "v0.7.4-rc1",
            "v0.7.3",
            "v0.7.3-rc2",
            "v0.7.3-rc",
            "v0.7.2",
            "v0.7.1",
            "v0.7.0",
            "v0.6.10",
            "v0.6.9",
            "v0.6.6",
            "v0.6.5",
            "v0.6.1",
            "v0.6.0",
            "v0.5.9",
            "v0.5.8",
            "v0.5.7",
            "v0.5.6",
            "v0.5.5",
            "v0.5.4",
            "v0.5.3",
            "v0.5.2",
            "v0.5.1",
            "v0.5.0",
            "v0.4.8",
            "v0.4.7",
            "v0.4.6",
            "v0.4.5",
            "v0.4.4",
            "v0.4.3",
            "v0.4.2",
            "v0.4.1",
            "v0.4.0",
            "v0.3.3",
            "v0.3.0",
            "v0.2.0",
            "v0.1.1",
            "v0.1.0",
            "v0.0.6",
            "v0.0.3",
            "v0.0.2",
            "v0.0.1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54027.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:43.729950429Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54027.json",
        "https://github.com/danny-avila/LibreChat/security/advisories/GHSA-c55r-p24w-hcj5",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-54027"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-862"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54027.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-54027",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 511590,
  "published_at": "2026-06-25T15:52:02.234+00:00"
}