Skip to content
Heist/ feed
Back to feed
High

Dify: IDOR in AppMCPServer PUT Endpoint Allows Modification of Other Apps' MCP Servers

Type: advisorySources: OSV

Dify is an open-source LLM app development platform. Prior to 1.16.0, the PUT /console/api/apps/<app_id>/server endpoint in api/controllers/console/app/mcp_server.py used AppMCPServerController.put() to retrieve an AppMCPServer by the client-supplied server ID without verifying that the server belonged to the requested application and tenant. An authenticated workspace member could therefore change another application's MCP server status and parameters, potentially redirecting data or disabling the service. This issue is fixed in version 1.16.0.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-105761
Confirmed fixed CVEs
Not specified
Updated in this feed
7 Nov 2026, 15:59 UTC · Revision 1

Source evidence

Dify: IDOR in AppMCPServer PUT Endpoint Allows Modification of Other Apps' MCP Servers

core-osv · Original source

Published 5 Oct 2026, 23:03 UTC

Dify is an open-source LLM app development platform. Prior to 1.16.0, the PUT /console/api/apps/<app_id>/server endpoint in api/controllers/console/app/mcp_server.py used AppMCPServerController.put() to retrieve an AppMCPServer by the client-supplied server ID without verifying that the server belonged to the requested application and tenant. An authenticated workspace member could therefore change another application's MCP server status and parameters, potentially redirecting data or disabling the service. This issue is fixed in version 1.16.0.

osv:CVE-2026-105761
Complete source record
{
  "id": "14c85b5195a1a1a2e5f17228ddeb2a1dd2890375f0f031c062a374fb7d3002f0",
  "url": "https://osv.dev/vulnerability/CVE-2026-105761",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Dify: IDOR in AppMCPServer PUT Endpoint Allows Modification of Other Apps' MCP Servers",
    "summary": "Dify is an open-source LLM app development platform. Prior to 1.16.0, the PUT /console/api/apps/<app_id>/server endpoint in api/controllers/console/app/mcp_server.py used AppMCPServerController.put() to retrieve an AppMCPServer by the client-supplied server ID without verifying that the server belonged to the requested application and tenant. An authenticated workspace member could therefore change another application's MCP server status and parameters, potentially redirecting data or disabling the service. This issue is fixed in version 1.16.0.",
    "evidence": "osv:CVE-2026-105761",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-105761",
      "aliases": [
        "CVE-2026-105761",
        "GHSA-ccrj-frp2-c945"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/langgenius/dify",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "5c6372d2f76d240265b92fd27c16bc772ffcb107"
                },
                {
                  "fixed": "62cb5b586504b730731e28e743c038b72950058e"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "1.16.0"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "62cb5b586504b730731e28e743c038b72950058e"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "5c6372d2f76d240265b92fd27c16bc772ffcb107"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "1.16.0"
                  }
                ]
              }
            }
          ],
          "versions": [
            "1.15.0",
            "1.14.2",
            "1.14.1",
            "1.14.0",
            "1.13.3",
            "1.13.0",
            "1.12.0",
            "1.6.0",
            "1.11.3",
            "1.11.2",
            "1.11.1",
            "1.11.0",
            "1.10.1",
            "1.10.0",
            "1.9.1",
            "1.9.0",
            "1.8.1",
            "1.8.0",
            "1.7.2",
            "1.7.1",
            "1.7.0",
            "1.5.1",
            "1.5.0",
            "1.4.3",
            "1.4.2",
            "1.4.1",
            "1.4.0",
            "1.3.0",
            "1.3.1",
            "1.2.0",
            "1.0.0",
            "1.1.3",
            "1.1.2",
            "1.1.1",
            "1.1.0",
            "1.0.1",
            "0.15.3",
            "0.10.2",
            "0.15.2",
            "0.15.1",
            "0.15.0",
            "0.14.2",
            "0.14.1",
            "0.8.3",
            "0.14.0",
            "0.13.2",
            "0.13.1",
            "0.13.0",
            "0.12.1",
            "0.12.0",
            "0.11.2",
            "0.11.1",
            "0.11.0",
            "0.10.1",
            "0.10.0",
            "0.9.2",
            "0.9.1",
            "0.9.0",
            "0.8.2",
            "0.8.1",
            "0.8.0",
            "0.7.3",
            "0.7.2",
            "0.7.1",
            "0.7.0",
            "0.6.16",
            "0.6.15",
            "0.6.14",
            "0.6.13",
            "0.6.12-fix1",
            "0.6.12",
            "0.6.11",
            "0.6.10",
            "0.6.9",
            "0.6.8",
            "0.6.7",
            "0.6.6",
            "0.6.5",
            "0.6.4",
            "0.6.3",
            "0.6.2",
            "0.6.1",
            "0.6.0-fix1",
            "0.6.0",
            "0.5.11-fix1",
            "0.5.11",
            "0.5.10",
            "0.5.9",
            "0.5.8",
            "0.5.7",
            "0.5.6",
            "0.5.5",
            "0.5.4",
            "0.5.3",
            "0.5.2",
            "0.5.1",
            "0.5.0",
            "0.4.9",
            "0.4.8",
            "0.4.7",
            "0.4.6",
            "0.4.5",
            "0.4.4",
            "0.4.3",
            "0.4.2",
            "0.4.1",
            "0.4.0",
            "0.3.34",
            "0.3.33",
            "0.3.32",
            "0.3.31-fix3",
            "0.3.31-fix2",
            "0.3.31-fix1",
            "0.3.31",
            "0.3.30",
            "0.3.29",
            "0.3.28",
            "0.3.27",
            "0.3.26",
            "0.3.25",
            "0.3.24",
            "0.3.23",
            "0.3.22",
            "0.3.21",
            "0.3.20",
            "0.3.19",
            "0.3.18",
            "0.3.17",
            "0.3.16",
            "0.3.15",
            "0.3.14",
            "0.3.13",
            "0.3.12",
            "0.3.11",
            "0.3.10",
            "0.3.9",
            "0.3.8",
            "0.3.7",
            "0.3.6",
            "0.3.5",
            "0.3.4",
            "0.3.3",
            "0.3.2",
            "0.3.1",
            "0.3.0",
            "0.2.2",
            "0.2.1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-105761.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:51.392447043Z",
      "provider": "osv",
      "references": [
        "https://github.com/langgenius/dify/releases/tag/1.16.0",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/105xxx/CVE-2026-105761.json",
        "https://github.com/langgenius/dify/security/advisories/GHSA-ccrj-frp2-c945",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-105761",
        "https://github.com/langgenius/dify/commit/62cb5b586504b730731e28e743c038b72950058e",
        "https://github.com/langgenius/dify/pull/38177"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-639"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/105xxx/CVE-2026-105761.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-105761",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 519817,
  "published_at": "2026-10-05T23:03:44.949+00:00"
}