| Version | Supported |
|---|---|
| 1.0.x | ✅ |
We take the security of True Valence Mapper seriously. If you have discovered a security vulnerability, please report it to us responsibly.
- DO NOT open a public GitHub issue for security vulnerabilities
- Email the repository owner directly through GitHub
- Include detailed information about the vulnerability:
- Type of vulnerability (XSS, injection, authentication bypass, etc.)
- Steps to reproduce
- Potential impact
- Suggested fix (if available)
- Initial Response: Within 48 hours
- Status Update: Within 7 days
- Fix Timeline: Varies based on severity (critical issues prioritized)
This application implements comprehensive security measures:
- Centralized input validation module (
input-validation.js) - HTML tag stripping and special character sanitization
- Context-aware output encoding (HTML, SVG, text)
- Safe DOM manipulation (textContent over innerHTML)
- Person names: 50 character limit, alphanumeric + safe punctuation
- Map names: 100 character limit
- Trust scores: Numeric validation (0-3 range)
- JSON imports: Deep sanitization and structure validation
- Row Level Security (RLS) policies implemented
- User-based data isolation
- Anonymous authentication with proper scoping
- SQL injection prevention through parameterized queries
- Client-side validation before storage
- Server-side RLS enforcement
- Sanitization on data load/import
- URL validation (prevents javascript: and data: protocols)
- HTML/Script injection in person names
- SQL injection attempts in map names
- Malicious JSON imports
- SVG text injection
- URL-based injection attacks
Detailed security documentation is available in the docs/security/ directory:
- XSS Protection: SECURITY.md
- RLS Implementation: RLS-TESTING-PROCEDURE.md
- Security Analysis: CRITICAL-SECURITY-ANALYSIS.md
- Phase Reports:
This implementation addresses:
- OWASP Top 10 (2021)
- A03:2021 Injection
- A07:2021 Cross-Site Scripting (XSS)
- CWE Standards
- CWE-79: Improper Neutralization of Input During Web Page Generation
- CWE-434: Unrestricted Upload of File with Dangerous Type
When contributing to this project:
- Always use InputValidator for any user input
- Never use innerHTML with user data (use textContent)
- Validate on both client and server (defense in depth)
- Test with malicious inputs before submitting PRs
- Follow principle of least privilege in database policies
- Supabase: Backend as a Service (BaaS)
- Authentication: Anonymous + future OAuth support
- Database: PostgreSQL with RLS
- Security: TLS encryption, secure API endpoints
This repository includes automated security checks:
- Weekly audits scan for hardcoded secrets
- SQL injection patterns checked in database files
- Dependency scanning (Dependabot enabled)
- Secret scanning (GitHub Advanced Security)
We appreciate responsible disclosure and will acknowledge security researchers who help improve the security of True Valence Mapper.
Last Updated: January 2025 Security Status: Production Ready Test Coverage: Comprehensive XSS and injection tests included