DeepTutor missing MCP tool authorization allows non-admin users to invoke unrestricted tools
DeepTutor before version 1.4.10 contains an authorization bypass vulnerability that allows low-privilege users to invoke unrestricted MCP tools due to the allowed_mcp_tools function returning None instead of a denied result when mcp_tools is omitted from a user's grant in deeptutor/multi_user/tool_access.py. Attackers or prompt-injected content acting within a user session can enumerate and invoke any configured MCP tool, including filesystem, shell, and browser servers, gaining unauthorized access to sensitive deployment resources.
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Python (PyPI) | deeptutor | < 1.4.10 | 1.4.10 |
References
- https://nvd.nist.gov/vuln/detail/CVE-2026-58168
- https://github.com/HKUDS/DeepTutor/pull/579
- https://github.com/HKUDS/DeepTutor/commit/90046374b3dcd4f8a866d2d64a64440bc08eb2ef
- https://github.com/HKUDS/DeepTutor
- https://github.com/HKUDS/DeepTutor/releases/tag/v1.4.10
- https://www.vulncheck.com/advisories/deeptutor-insecure-default-grants-unrestricted-mcp-tool-access-to-non-admin-users
- https://pypi.org/project/deeptutor
- https://github.com/advisories/GHSA-jg88-rvpc-qvxj
- CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H- Weakness (CWE)
CWE-862- Platform
- Python (PyPI)
- Package
deeptutor- Disclosed
- 30.06.2026
- Updated
- 15.10.2026 18:17
Sources and licenses
OSV / GitHub Advisory Database - PYSEC-2026-4206 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - GHSA-jg88-rvpc-qvxj - CC BY 4.0
Vulnerability history: deeptutor
All published vulnerabilities of this package (Python (PyPI)), newest first. Shows whether this is a one-off slip or a package that needs watching.
This is the only known vulnerability of this package.
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.