CVE-2026-30859

5.3 MEDIUM

📋 TL;DR

This broken access control vulnerability in WeKnora allows any authenticated tenant to read sensitive data from other tenants, including API keys, model configurations, and private messages. The application fails to enforce tenant isolation on critical database tables, enabling unauthorized cross-tenant data access. All WeKnora deployments prior to version 0.2.12 with multiple tenants are affected.

💻 Affected Systems

Products:
  • WeKnora
Versions: All versions prior to 0.2.12
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects multi-tenant deployments. Single-tenant deployments are not vulnerable.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal all tenant API keys, access proprietary model configurations, read private messages, and potentially use stolen credentials to compromise downstream systems or exfiltrate sensitive business data.

🟠

Likely Case

Unauthorized users within the same WeKnora instance accessing other tenants' sensitive data, leading to data breaches, privacy violations, and potential credential theft.

🟢

If Mitigated

With proper tenant isolation controls, users can only access their own tenant's data, maintaining data confidentiality and compliance with data protection requirements.

🌐 Internet-Facing: HIGH
🏢 Internal Only: HIGH

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated access but is straightforward once authenticated. The vulnerability is in the database query tool's access control logic.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 0.2.12

Vendor Advisory: https://github.com/Tencent/WeKnora/security/advisories/GHSA-2f4c-vrjq-rcgv

Restart Required: Yes

Instructions:

1. Backup your current WeKnora deployment. 2. Update to version 0.2.12 or later using your package manager or by downloading from the official repository. 3. Restart the WeKnora service. 4. Verify tenant isolation is working correctly.

🔧 Temporary Workarounds

Database-level tenant isolation

all

Implement database-level access controls to enforce tenant isolation at the database layer

-- Database-specific commands would depend on your DBMS (PostgreSQL, MySQL, etc.)

Network segmentation

all

Isolate WeKnora instances per tenant in separate network segments

🧯 If You Can't Patch

  • Implement application-level middleware to validate tenant context on all database queries
  • Deploy database proxy with row-level security policies to enforce tenant isolation

🔍 How to Verify

Check if Vulnerable:

Check if your WeKnora version is below 0.2.12 and test if authenticated users can access data from other tenants through the database query tool.

Check Version:

python -c "import weknora; print(weknora.__version__)" or check the package manager output

Verify Fix Applied:

After upgrading to 0.2.12+, test that authenticated users can only access their own tenant's data and cannot query cross-tenant data.

📡 Detection & Monitoring

Log Indicators:

  • Unusual cross-tenant database queries
  • Access patterns showing users querying tables outside their tenant scope
  • Failed tenant isolation checks in application logs

Network Indicators:

  • Unusual data volume transfers from WeKnora database
  • Multiple tenant contexts accessed by single user session

SIEM Query:

source="weknora" AND ("cross-tenant" OR "unauthorized access" OR "tenant isolation violation")

🔗 References

📤 Share & Export