Skip to main content
Glama

OpenZIM MCP Server

by cameronrye
SECURITY.mdโ€ข7.83 kB
# Security Policy ## Supported Versions We actively support the following versions of OpenZIM MCP with security updates: | Version | Supported | | ------- | ------------------ | | 0.2.x | โœ… Yes | | 0.1.x | โŒ No (deprecated) | ## Reporting a Vulnerability We take security vulnerabilities seriously and appreciate your help in keeping OpenZIM MCP secure. ### For Sensitive Security Issues **Please DO NOT report sensitive security vulnerabilities through public GitHub issues.** Instead, please report them privately using one of these methods: #### 1. GitHub Private Vulnerability Reporting (Preferred) 1. Go to the [Security tab](https://github.com/cameronrye/openzim-mcp/security) of this repository 2. Click "Report a vulnerability" 3. Fill out the vulnerability report form 4. Submit the report #### 2. Email Reporting Send an email to: **security@[project-domain]** (replace with actual email) Include in your email: - Description of the vulnerability - Steps to reproduce - Potential impact - Any suggested fixes - Your contact information for follow-up #### 3. Encrypted Communication For highly sensitive issues, you can use PGP encryption: ``` -----BEGIN PGP PUBLIC KEY BLOCK----- [PGP public key would go here] -----END PGP PUBLIC KEY BLOCK----- ``` ### For Non-Sensitive Security Issues For general security improvements, hardening suggestions, or non-exploitable security-related issues, you can: - Open a public GitHub issue using the "Security Vulnerability Report" template - Start a discussion in GitHub Discussions ## What to Include in Your Report Please include as much information as possible: ### Required Information - **Description**: Clear description of the vulnerability - **Impact**: What could an attacker accomplish? - **Reproduction**: Step-by-step instructions to reproduce - **Environment**: OS, Python version, OpenZIM MCP version - **ZIM Files**: Information about test files used (if relevant) ### Optional but Helpful - **Proof of Concept**: Code or commands demonstrating the issue - **Suggested Fix**: Ideas for how to address the vulnerability - **References**: Links to similar vulnerabilities or security resources - **CVSS Score**: If you can calculate one ## Response Timeline We are committed to responding to security reports promptly: | Timeline | Action | |----------|--------| | 24 hours | Initial acknowledgment of your report | | 72 hours | Initial assessment and severity classification | | 7 days | Detailed response with our planned approach | | 30 days | Target for fix development and testing | | 45 days | Target for public disclosure (coordinated) | **Note**: Complex vulnerabilities may require more time. We will keep you updated on our progress. ## Severity Classification We classify vulnerabilities using the following criteria: ### Critical (CVSS 9.0-10.0) - Remote code execution - Privilege escalation to system level - Data exfiltration of sensitive information ### High (CVSS 7.0-8.9) - Local privilege escalation - Authentication bypass - Significant data exposure ### Medium (CVSS 4.0-6.9) - Information disclosure - Denial of service - Path traversal (limited impact) ### Low (CVSS 0.1-3.9) - Minor information leaks - Security misconfigurations - Theoretical attacks with high complexity ## Security Measures OpenZIM MCP implements several security measures: ### Input Validation - Comprehensive path validation to prevent directory traversal - Input sanitization for all user-provided data - Type checking and validation using Pydantic ### Secure Defaults - Restricted file access to allowed directories only - Secure error handling that doesn't leak sensitive information - Resource limits to prevent abuse ### Code Security - Regular security scanning with bandit - Dependency vulnerability scanning - Type safety with mypy - Comprehensive testing including security tests ### Development Security - Pre-commit hooks for security checks - Automated security scanning in CI/CD - Regular dependency updates - Code review requirements ## Known Security Considerations ### ZIM File Processing - ZIM files are processed using the libzim library - Content is sanitized before processing - Large files are handled with appropriate limits ### Path Handling - All file paths are validated against allowed directories - Path traversal attacks are prevented through secure path resolution - Symbolic links are handled safely ### Caching - Cache keys are validated to prevent cache poisoning - Cached content has appropriate TTL limits - Cache size is limited to prevent memory exhaustion ## Security Best Practices for Users ### Deployment Security - Run OpenZIM MCP with minimal required privileges - Use allowed directories to restrict file access - Monitor logs for suspicious activity - Keep dependencies updated ### ZIM File Security - Only use ZIM files from trusted sources - Verify ZIM file integrity when possible - Be cautious with user-provided ZIM files ### Configuration Security - Use environment variables for sensitive configuration - Avoid logging sensitive information - Implement appropriate access controls ## Disclosure Policy ### Coordinated Disclosure We follow responsible disclosure practices: 1. **Private Reporting**: Vulnerabilities are reported privately 2. **Assessment**: We assess and develop fixes privately 3. **Coordination**: We coordinate with reporters on disclosure timing 4. **Public Disclosure**: We disclose publicly after fixes are available ### Public Disclosure After a fix is available: 1. **Security Advisory**: We publish a GitHub Security Advisory 2. **Release Notes**: Security fixes are noted in release notes 3. **CVE Assignment**: We request CVE assignment for significant vulnerabilities 4. **Credit**: We credit reporters (unless they prefer anonymity) ## Security Updates ### Notification Channels Stay informed about security updates: - **GitHub Security Advisories**: Watch this repository for security advisories - **Release Notes**: Check release notes for security fixes - **Mailing List**: Subscribe to our security mailing list (if available) ### Update Process When security updates are released: 1. **Immediate**: Critical vulnerabilities require immediate updates 2. **Scheduled**: Lower severity issues may be bundled with regular releases 3. **Backports**: Security fixes are backported to supported versions ## Bug Bounty Program Currently, we do not have a formal bug bounty program. However, we greatly appreciate security researchers who help improve our security posture. ### Recognition We recognize security contributors through: - Public acknowledgment in security advisories - Credit in release notes - Hall of fame in documentation (if desired) ## Contact Information ### Security Team - **Primary Contact**: [security email] - **Backup Contact**: [backup email] - **Response Time**: 24 hours for initial response ### General Security Questions For general security questions or discussions: - **GitHub Discussions**: Use the Security category - **Email**: [general email] ## Legal ### Safe Harbor We support security research conducted in good faith. We will not pursue legal action against researchers who: - Report vulnerabilities responsibly through proper channels - Do not access or modify data beyond what is necessary to demonstrate the vulnerability - Do not perform testing on production systems without permission - Respect user privacy and data protection laws ### Responsible Research Please ensure your security research: - Complies with applicable laws and regulations - Respects user privacy and data protection - Does not cause harm to our systems or users - Follows coordinated disclosure practices --- Thank you for helping to keep OpenZIM MCP secure! ๐Ÿ”’

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cameronrye/openzim-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server