Programa de recompensa por vulnerabilidades
Capgo se compromete con la seguridad y la transparencia. Todos nuestros code son de código abierto, y damos la bienvenida a los investigadores de seguridad para ayudarnos a identificar vulnerabilidades en nuestro códigobase.
Code de código abierto
Cada repositorio en la organización Capgo es de código abierto. Puedes revisar, auditar y contribuir a nuestros code.
GitHub Organización: github.com/Cap-go
Capgo Backend & Landing
Capgo backend y repositorio de producto (capgo.app API, panel de control y servicios relacionados)
Capacitor Plugin de Actualizador
El plugin de Capacitor central que maneja las actualizaciones por vía aérea en dispositivos móviles
Requisitos para Informes Válidos
Para calificar para el programa de Bug Bounty, su informe debe cumplir con TODOS los siguientes requisitos:
- Debes identificar el archivo y el número de línea exactos en nuestro repositorio GitHub donde existe la vulnerabilidad
- Su informe debe ser presentado a través de GitHub Security Advisory en el repositorio relevante
- Debes incluir una descripción clara de la vulnerabilidad y su impacto potencial
- Debes proporcionar pasos reproducibles para demostrar el problema
Importante: Si no puedes proporcionar la línea exacta de code en GitHub donde existe el problema, su informe no será elegible para el programa de Bug Bounty. Los informes deben ser presentados a través de GitHub Security Advisory solo. Los pagos se manejan a través de Algora.io; por favor, crea una cuenta allí para que podamos pagaros directamente en la plataforma.
Tiempo de Respuesta y Respeto
Somos amigables y pagamos por informes válidos, pero no podemos trabajar con personas que no respeten nuestro tiempo. Por favor, mantén la comunicación calmada y sigue este programa.
- Respondemos a los informes de seguridad y violaciones dentro de 24-72 horas.
- No nos envíes spam. Más de tres correos electrónicos en un solo día se considera spam y será bloqueado.
- No pagamos informes que ignoren estas reglas o sean spam.
- Solo se aceptan informes en el alcance de este programa de recompensa por fallos; cualquier otra cosa puede ser bloqueada.
- No pregunte por actualizaciones de estado como "¿has revisado?" o preguntas similares. Una vez que confirmemos que recibimos su informe, eso es suficiente. Después de eso, todavía hay un trabajo significativo por hacer, y preparar una solicitud de extracción puede llevar varios días.
Importante: Capgo es una empresa pequeña, por lo que nuestros montos de recompensa son más bajos que los programas de grandes empresas. Los informes sin un camino claro de explotación se pagan hasta un máximo de $30. Las explotaciones con un impacto real y reproducible en Capgo se pagan hasta un máximo de $300. Aceptamos y revisamos informes de seguridad para los plugins de Capgo, pero las recompensas pagadas por los plugins de code están limitadas a @capgo/capacitor-actualizador. Otros plugins de Capgo son gratuitos y no forman parte de nuestra oferta de producto pagada, por lo que los informes sobre ellos se revisan pero no se pagan. Los pagos se emiten solo después de que hayamos identificado el problema, hemos lanzado la corrección y usted ha verificado post-lanzamiento que la corrección funciona para usted. Abrir o vincular una solicitud de extracción sola no califica para el pago. Este proceso suele tardar unos días a unas semanas dependiendo de la gravedad y la cadencia de lanzamiento. No envíe mensajes como "para obtener pagado"; el pago solo ocurre una vez que el lanzamiento esté en vivo y haya probado y validado la corrección.
¿Cómo Informar un Bug?
- Diríjase a la carpeta relevante en GitHub
- Haga clic en la pestaña "Seguridad"
- Haga clic en "Informar una vulnerabilidad" para crear un nuevo aviso de seguridad
- Incluya el camino de archivo exacto y el número de línea(s) donde existe la vulnerabilidad
- Proporcione pasos detallados para reproducir el problema y explique el impacto de seguridad
Fuera de alcance
- Los informes sin referencias de línea exacta de code en GitHub
- Los informes no presentados a través de GitHub Security Advisory
- Las vulnerabilidades teóricas sin prueba de concepto
- Bugs en plataformas, dependencias o servicios de terceros que Capgo no puede solucionar directamente (informe esos problemas en la fuente, por ejemplo, a Supabase).
- Intentos de ingeniería social o phishing
- Ataques de denegación de servicio
- SSRF o informes de falsificación de DNS contra webhooks o vista previa de sitios web. Estas características se ejecutan en infraestructura sin servidor y no pueden usarse para alcanzar infraestructura privada de Capgo, por lo que no son explotables en nuestro entorno.
- User-owned application code or project configuration that Capgo does not own, ship, or control, including files such as capacitor.config.ts, config.capacitor.ts, app source code, and environment-specific settings.
- Acceso a archivos de paquete de Capgo o prueba de que los archivos de paquete pueden descargarse. Los archivos de paquete son activos web públicos, los usuarios están informados de esto y el acceso a ellos no se considera una violación de datos.
- No son vulnerabilidades los puntos finales de plugin/API de Capgo no autenticados que están diseñados para ser públicos — incluyendo el punto final de actualización/stats que no requiere una clave de API —.
- La etiqueta de cifrado de un subidor o interfaz de usuario para paquetes servidos a través de external_url no es una vulnerabilidad de Capgo (la cifrado de paquetes alojados en sitios externos está fuera del control de Capgo).
Supabase y Servicios de Terceros
Si la causa raíz es un error de plataforma o servicio de Supabase, informe el problema a Supabase, no Capgo. Si la lógica vulnerable, SQL, RPC, política de RLS, función de Edge o configuración fue creada o elegida por Capgo y podemos corregirlo en nuestro proyecto, está en el alcance incluso cuando Supabase sirve el punto final. Para los hallazgos sobre el comportamiento de Supabase en sí mismo, incluya un caso reproducible y el ajuste de Supabase exacto o el cambio de configuración que lo previene en un proyecto configurado como el nuestro.
Ejemplos
No válido aquí
- Un error de plataforma de Supabase, una interrupción o un comportamiento que solo Supabase puede corregir
- Un hallazgo que no se puede reproducir
- Una afirmación que culpa a Capgo por el comportamiento de Supabase sin mostrar una corrección controlada por Capgo o el ajuste de Supabase/configuración exacto
Válido aquí
- Una configuración de Supabase maliciosa controlada por Capgo que podemos corregir en las configuraciones de nuestro proyecto (con pasos)
- Un problema de SQL, RPC, RLS, función o integración propiedad de Capgo que causa un uso inseguro de Supabase
- Un problema reproducible en el proyecto de Supabase de Capgo, esquema o políticas, incluso si se expone a través de un punto final de Supabase
Limitaciones conocidas de Supabase Auth (ya informadas)
Algunos hallazgos se informan repetidamente y se deben a los valores por defecto de Supabase Auth o al comportamiento de la plataforma en lugar de Capgo code. Revisamos estos solo cuando pueden reproducirse en un proyecto de demostración de Supabase compartido configurado como el nuestro y cuando la solución es un cambio de configuración de Supabase que no requiere cambiar Capgo las reglas de seguridad. Si el cambio requiere cambiar Capgo las reglas de seguridad de SQL, RPCs, políticas de RLS, funciones o lógica de la aplicación, informe sobre ello porque eso está en el alcance.
- Proporcione un caso reproducible y identifique la solución exacta: ya sea el ajuste/configuración de Supabase que resuelve un problema de comportamiento de Supabase, o el objeto de configuración Capgo-propiedad code que debe cambiar.
- El comportamiento de verificación de correo electrónico se espera que siga los ajustes del proyecto de Supabase Auth (por ejemplo, si la confirmación de correo electrónico está deshabilitada y se utiliza la autenticación basada en captura).
- Las flujos de actualización de contraseña y recuperación de cuenta pueden no requerir siempre la reingreso de la contraseña antigua o la reverificación si Supabase Auth está configurado de esa manera.
- Si el problema está en esta lista pero puede mostrar una solución concreta de Supabase en el proyecto proporcionado o un defecto de seguridad concreto Capgo-propiedad, podemos considerarlo en el alcance.
Para preguntas sobre nuestro programa de Bug Bounty, por favor, contacte con nosotros a través de nuestras GitHub Notificaciones de Seguridad.