The GitCard Studio team takes the security of our application, API endpoints, and user data very seriously. We appreciate the responsible disclosure of any security vulnerabilities found in this repository or service.
We actively release security updates and patches for the following versions:
| Version | Supported |
|---|---|
| Latest Release (v1.x.x) | ✅ Yes |
| < 1.0.0 | ❌ No |
Do NOT report security vulnerabilities through public GitHub issues.
If you discover a potential security vulnerability, please report it privately:
- Email: Send an email to security@creativecode.com.co or contact John Alexander Toro Cortés directly.
- Details to Include:
- A clear description of the vulnerability and affected endpoint/component.
- Step-by-step instructions or Proof of Concept (PoC) script to reproduce the issue.
- Potential impact of the vulnerability.
- Response Time: We will acknowledge receipt of your report within 48 hours and provide periodic updates on patch progress.
Our codebase implements defense-in-depth security measures aligned with OWASP standards:
- Strict Input Regex Validation: All parameters (
username,repo, etc.) are validated at controller and domain use-case layers before processing:- Username:
/^[a-z\d](?:[a-z\d]|-(?=[a-z\d])){0,38}$/i - Repo:
/^[a-z\d-_.]{1,100}$/i
- Username:
- XSS & Injection Prevention: All dynamic values rendered inside SVG cards or HTML previews are strictly sanitized and XML/HTML-escaped.
- HTTP Rate Limiting: Enforced via
express-rate-limit(100 requests per 15 minutes per IP). Rate limit breaches return valid SVG error cards to prevent broken image tags in GitHub READMEs. - Metrics Key Protection: Admin analytics endpoints under
/api/metricsrequire a validMETRICS_KEY. Missing keys default to403 Forbidden. - Encrypted Token Management: User OAuth/PAT tokens are encrypted at rest using AES-256-GCM authenticated encryption.
- Non-Root Container Execution: Docker builds run under the non-privileged
nodeuser.
El equipo de GitCard Studio se toma muy en serio la seguridad del microservicio, los endpoints de la API y los datos de nuestros usuarios. Agradecemos la divulgación responsable de cualquier vulnerabilidad encontrada.
Mantenemos y aplicamos parches de seguridad activamente en las siguientes versiones:
| Versión | Estado de Soporte |
|---|---|
| Última versión liberada (v1.x.x) | ✅ Sí |
| < 1.0.0 | ❌ No |
NO reportes vulnerabilidades de seguridad a través de Issues públicas de GitHub.
Si descubres una vulnerabilidad de seguridad, por favor infórmala de manera privada:
- Correo Electrónico: Envía un mensaje a security@creativecode.com.co o contacta directamente a John Alexander Toro Cortés.
- Información a Incluir:
- Descripción detallada de la vulnerabilidad y el endpoint o componente afectado.
- Pasos detallados o código de prueba de concepto (PoC) para reproducir el fallo.
- Impacto potencial estimado.
- Tiempo de Respuesta: Confirmaremos la recepción del reporte en un plazo máximo de 48 horas y proporcionaremos actualizaciones periódicas sobre la corrección.
- Validación Estricta por Expresiones Regulares: Todos los parámetros del API se validan en los controladores y casos de uso antes de su procesamiento.
- Prevención de XSS e Inyecciones: Los insumos de usuario incluidos en tarjetas SVG son sanitizados y escapados para XML/HTML.
- Rate Limiting y Helmet: Límite de 100 peticiones cada 15 minutos con respuestas de tarjeta SVG legibles y cabeceras de seguridad Helmet.
- Protección de Métricas: Los endpoints
/api/metricsresponden con403 Forbiddensi no se especifica una variableMETRICS_KEYválida. - Cifrado de Tokens: Los tokens OAuth/PAT se cifran en reposo con AES-256-GCM.