
Arnés de validación de prueba de concepto para el endurecimiento de límites de Electron, modelando el aislamiento del proceso renderizador/principal, la aplicación de políticas IPC y los controles de navegación para estudiar vulnerabilidades de seguridad de aplicaciones de escritorio.
Este repositorio es un banco de pruebas de validación de prueba de concepto para el endurecimiento de límites de Electron en arquitecturas de escritorio estilo Discord. Modela la separación renderer/proceso principal, la política del puente de preload, la exposición de canales IPC, los controles de navegación y la supervisión en tiempo de ejecución para estudiar cómo una mala configuración puede debilitar las garantías de aislamiento de una aplicación.
Los detalles del caso de referencia se registran en: https://bugbounty.com/211356433
El caso de estudio se basa en la cadena de vulnerabilidades de la aplicación de escritorio de Discord de 2020 que involucra a Electron CVE-2020-15215 (omisión del aislamiento de contexto) y CVE-2020-15174 (fallo de protección de navegación / framebusting), combinado con una condición XSS aguas arriba en contenido incrustado de terceros [web:5][web:19][web:20].
El banco de pruebas se centra en condiciones relevantes para la seguridad, tales como:
src/main/
src/runtime/
src/ipc/
src/preload/
src/security/guards/
src/security/policies/
src/network/rest/
src/network/gateway/
src/network/rpc/
src/modules/guilds/, src/modules/channels/, src/modules/voice/src/modules/auth/, src/modules/presence/, src/modules/experiments/src/cache/, src/database/, src/commands/, src/sessions/, src/state/src/rendering/ para superficies de diseño/tema/lienzosrc/media/ para etapas del pipeline de audio/imagen/videosrc/search/ para almacenes de índice/consulta/rankingsrc/ml/ para gráficos de características/inferencia/pipelinesrc/billing/ para rutas de plan/factura/libro mayorsrc/moderation/ para filtros/informes/accionessrc/compliance/ para catálogos de políticas y pistas de auditoríasrc/bots/ para el estado de runtime/almacén/gateway de botssrc/platform/ para adaptadores linux/windows/macEl PoC proporciona rutas deterministas y estocásticas para la validación del análisis de límites:
scripts/simulate-history.ps1).scripts/generate-fixture.js).npm install
node scripts/generate-fixture.js
node -e "const fs=require('fs');const path=require('path');function walk(d){for(const e of fs.readdirSync(d)){const p=path.join(d,e);const s=fs.statSync(p);if(s.isDirectory())walk(p);else if(p.endsWith('.js')) require('./'+p);}} walk('src'); console.log('ok');"
git checkout -B main
node scripts/generate-fixture.js > fixtures/generated.json
create*, set*, get* y transiciones de trabajadores por etapas para simplificar el trazado diferencial a través de los límites de los subsistemas.Nishant
Autores: