📄 Descripción General
El Programa Bug Bounty UParticipa 2025 del proyecto UParticipa (de ahora en adelante, “el programa”) es un concurso para encontrar y reportar vulnerabilidades que puedan existir en la plataforma UParticipa. El concurso está abierto a personas pertenecientes a la comunidad de la Universidad de Chile (estudiantes, académicos/as, funcionarios/as y alumni), interesados/as en el área de Ciberseguridad (de ahora en adelante, “hackers”).
Las vulnerabilidades reportadas serán asociadas a una cierta categoría, asociada al área del sistema de votación electrónico que potencialmente afectaría. En el programa se premiarán las mejores vulnerabilidades encontradas por cada categoría, las cuales serán puntuadas y decididas por un jurado externo al equipo de UParticipa.
👩🏻💻 Sobre las/los Hackers
El público objetivo del programa son miembros de la comunidad de la Universidad de Chile, en particular estudiantes, académicos/as, funcionarios/as y alumni de la Casa de Bello. Por la naturaleza del programa, se espera que las personas participantes sean personas con conocimientos en áreas como Ciberseguridad, Hacking Ético y Criptografía Aplicada.
Para participar del programa, y poder enviar un reporte, las personas deben tener una dirección de correo electrónico institucional de la Universidad de Chile.
Al momento de enviar un reporte, no es necesario indicar los datos personales del (de la) autor(a) o hacker. Al finalizar el concurso, sin embargo, se van a solicitar a las/los ganadores/as algunos datos como nombre, estamento y unidad académica para poder entregar el premio durante la ceremonia de premiación.
🌐 Despliegue del Sistema
El sistema de UParticipa tendrá un despliegue específico para este programa, el cual correrá la versión más actualizada del software desarrollado. Este despliegue está realizado utilizando el servicio cloud de Hetzner Online.
El despliegue realizado posee 3 elecciones, las cuales están configuradas para que se asemejen a elecciones con configuraciones muy cercanas a la realidad. Las elecciones tienen las siguientes características:
- Elección Simple: es una elección con dos preguntas: una de opción única (el votante puede escoger solamente una opción entre las candidaturas) y otra de opción múltiple (el votante puede escoger hasta tres opciones entre las candidaturas).
- Elección Masiva: es una elección con una única pregunta, la cual posee una lista masiva de candidaturas (se utiliza este tipo de elección cuando se tiene más de 20 candidaturas). Además, el votante puede escoger hasta 6 opciones entre las candidaturas.
- Elección con Opciones Excluyentes: es una elección con una única pregunta, la cual posee opciones excluyentes, es decir, donde solamente se puede marcar una preferencia por grupo al que pertenece cada opción.
Las elecciones desplegadas tienen las siguientes características comunes:
- El padrón se compone de 50 votantes. Los nombres de usuario de los votantes son
testXX (XX de 01 a 50). En la plataforma de autenticación, existen cuentas de usuario testXX (XX de 51 a 99) que NO están en el padrón - Cada elección se renovará cada 3 o 4 días, lo cual implica que la elección se eliminará y se configurará una, con las mismas características, pero totalmente nueva, lo que significa que los votos y estado de la elección se eliminan completamente.
- Cada elección tendrá un único Custodio de Clave, cuyas credenciales no serán entregadas de manera pública.
- Las elecciones no serán escrutadas de manera pública. Si algún/alguna hacker necesita conocer el escrutinio de alguna elección, deberá comunicarlo directamente al equipo de UParticipa.
🗓 Fechas del Programa
INICIO: miércoles 29 de octubre
FIN: viernes 28 de noviembre
CEREMONIA DE PREMIACIÓN: miércoles 10 de diciembre a las 12:00 h
👾 Categorías de Vulnerabilidades
Las vulnerabilidades reportadas se dividirán en alguna de las siguientes categorías, de las cuales se premiará la mejor vulnerabilidad reportada en cada categoría (se entregarán 4 premios en total):
- Confidencialidad del Voto: vulnerabilidades que permiten conocer las preferencias que marcó algún otro votante, o bien, que el propio votante pueda demostrar cómo votó a otra persona.
- Escalamiento de Privilegios (Votantes y/o Administrador): vulnerabilidades que permiten a un votante o usuario externo ingresar al panel de administrador, o bien, le permita votar a algún usuario externo que no esté en el padrón de la elección.
- Integridad de los Resultados: vulnerabilidades que afecten que el resultado reportado por el sistema, no corresponde a la suma de todos los votos válidos emitidos durante la jornada electoral.
- Ingeniería Criptográfica: cualquier vulnerabilidad que explote alguna mala implementación o diseño en las primitivas criptográficas utilizadas por la plataforma (funciones de hash, esquemas de encriptación, generación de ZKP, entre otras).
📝 Envío de Reportes
Los reportes se enviarán a través de un formulario dispuesto para ello. Un mismo hacker puede enviar más de un reporte. Un reporte refiere al detalle de una sola vulnerabilidad, y la manera en que se puede explotar y replicar. No se puede enviar, en un mismo reporte, más de una vulnerabilidad encontrada. Si la vulnerabilidad tiene diferentes maneras de explotarse y/o replicarse, se pueden enviar varios reportes (a medida que se vayan encontrando esas diveras maneras), pero finalmente se evaluará como un solo reporte extendido.
Ir al formulario de envío
Ver Términos y Condiciones
🏅 Ceremonia de Premiación
Se realizará una Ceremonia de Premiación el día miércoles 10 de diciembre de 2025 en el Departamento de Ciencias de la Computación de la Universidad de Chile (Beauchef #851). En dicha Ceremonia se entregarán los premios de los reportes ganadores en cada una de las categorías, además de que se realizará un Conversatorio de Vulnerabilidades y Desafíos UParticipa, donde se comentará sobre las vulnerabilidades encontradas, y las actualizaciones que se planificarán para poder solucionarlas. Se contactará de antemano a las/los hackers que hayan ganado, para que puedan asistir a la Ceremonia.
Premios
A cada reporte ganador, en cada una de las categorías, se le entregará un premio, el cual se definirá en los próximos días.
🤝 Términos y Condiciones
1. Eligibilidad del Reporte
- Si una vulnerabilidad es reportada por más de un/una hacker, solo se le contabilizará al primer envío recepcionado.
- La vulnerabilidad reportada debe demostrar un impacto de seguridad en la plataforma UParticipa, utilizando los recursos disponibles en el presente programa (credenciales, nivel de autorización y tipo de elecciones).
- Múltiples explotaciones y problemas causados por una única vulnerabilidad subyacente, se considerará como un solo reporte (el cual puede extenderse, enviando varias respuestas al formulario).
- Se espera y solicita que las/los participantes (hackers) no divulguen públicamente una vulnerabilidad encontrada antes de que el reporte sea recibido y se te otorgue el permiso para divulgarla.
- Todo reporte de vulnerabilidades debe proporcionar explicaciones detalladas con pasos reproducibles. Si el reporte no es lo suficientemente detallado para reproducir el problema por parte de los organizadores, no será elegible para ser premiado.
2. Activos
https://bugbounty2025.uparticipa.cl/*
3. Fuera de alcance (out of scope)
3.1. Dominios
- Cualquier dominio que no esté listado en la sección "Activos" está fuera del alcance del programa.
- En particular, estará fuera del alcance el servicio Participa UChile:
https://participa.uchile.cl/* y https://psifos-participa.uchile.cl/* - El portal de autenticación de CLCERT:
https://auth.labs.clcert.cl/*
3.2. Aplicación Web
Los siguientes ataques se consideran fuera del alcance para el concurso.
- Toma de control de cuentas pre-autenticación / Ocupación de OAuth (OAuth squatting).
- Self-XSS que no puede ser utilizado para explotar a otros usuarios.
- Mensajes/archivos/listados de directorios detallados (verbose) sin divulgar información sensible.
- Configuración incorrecta de CORS en endpoints no sensibles.
- Falta de encabezados de seguridad.
- Cross-site Request Forgery (CSRF) sin impacto o con bajo impacto.
- Presencia del atributo de autocompletar en formularios web.
- Reverse tabnabbing.
- Omitir límites de tasa (rate-limits) o la no existencia de los mismos.
- Violaciones de buenas prácticas (complejidad de contraseña, expiración, reutilización, etc.).
- Clickjacking sin impacto demostrado o con interacción de usuario poco realista.
- Inyección de CSV.
- Tokens filtrados a terceros
- Inyección de contenido sin poder modificar el HTML.
- Enumeración de nombres de usuario/correo electrónico.
- Contrabando de solicitudes HTTP (HTTP Request Smuggling) sin impacto demostrado.
- Ataques de homógrafos.
- XMLRPC habilitado.
- Captura de banners/Divulgación de versiones.
- No eliminar los metadatos de los archivos.
- Same-site scripting.
- Toma de control de subdominio (Subdomain takeover) sin llegar a tomar control del subdominio.
- SSRF ciego sin impacto de negocio demostrado (los pingbacks no son suficientes).
- Inyección de encabezado Host sin impacto de negocio demostrado.
3.3. General
Los siguientes ataques teóricos o vulnerabilidades se consideran fuera del alcance para el concurso.
- Problemas de seguridad teóricos sin escenarios de explotación realistas o superficies de ataque, o problemas que requerirían interacciones complejas del usuario final para ser explotados.
- Spam, ingeniería social e intrusión física.
- Ataques DoS/DDoS o ataques de fuerza bruta.
- Vulnerabilidades que solo funcionan en software que ya no recibe actualizaciones de seguridad.
- Ataques que requieren acceso físico a la computadora/dispositivo de una víctima, ataques de intermediario (man-in-the-middle) o cuentas de usuario comprometidas.
- Las vulnerabilidades de día cero descubiertas recientemente en activos dentro del alcance, dentro de los 14 días posteriores a la publicación de un parche o mitigación, pueden ser reportadas, pero generalmente no son elegibles para ser premiadas.
- Reportes que indican que el software está desactualizado/vulnerable sin una prueba de concepto.
3.4. Vulnerabilidades Conocidas
El sistema tiene vulnerabilidades conocidas, las cuales de ser reportadas no serán consideradas. Ellas son
- Ballot Stuffing: esta vulnerabilidad hace relación a la posibilidad de que el administrador del sistema pueda enviar votos a nombre de votantes válidos. Esta vulnerabilidad comúnmente se soluciona exigiendo a que los votantes deban enviar firmados sus votos. El contexto actual en que está desplegado el sistema de UParticipa (comunidad de la Universidad de Chile), no permite aplicar esta solución debido a la inexistencia de una infraestructura de clave pública (PKI). Además, el modelo de seguridad permite depositar confianza en que el administrador se comportará de manera honesta.
- Malware en dispositivo y Coerción: una vulnerabilidad común en sistemas de votación electrónica remota es la posibilidad de que se instale malware malicioso en los dispositivos de los votantes, y así alterar o revelar las preferencias marcadas. Así mismo, la votación remota habilita la opción de que un ataque de coerción sea exitoso, es decir, realizar algún tipo de acción que obligue a un votante a votar por alguna preferencia específica. Esto tiene que ver con compra/venta de votos, o presiones indebidas.
- Robo de Credenciales: si se realiza un ataque de phishing, podrían robarse las credenciales de un votante, o del administrador, y realizar acciones de manera indebida.
NOTA: el equipo de UParticipa maneja una lista interna de otras vulnerabilidades conocidas, las cuales no se revelarán durante el programa, debido a que espera que las/los hackers puedan encontrarlas y reportarlas. De todas maneras, independientemente si son encontradas o no, el equipo de UParticipa se compromete a revelar dicha lista al momento de finalizar el programa, y así transparentar la información que maneja sobre el sistema.
UParticipa agradece el patrocinio y apoyo de las siguientes entidades para la realización del Programa Bug Bounty UParticipa 2025:
Gracias a su apoyo, es posible incentivar a la comunidad universitaria a involucrarse en la mejora continua de la plataforma UParticipa, y así fortalecer la seguridad del sistema de votación electrónica.
Para cualquier consulta u observación sobre el programa, enviar un correo a: participa [at] uchile [dot] cl
¡Mucho éxito y entretención para l@s Hackers!
¿Estaremos preparad@s para sus ataques?