Matrix / Element — dossier de preuves individuel (référence : 13 octobre 2026)¶
Registre de preuves — Phase 2
Ce dossier est une pièce de recherche datée. La conclusion canonique est celle du rapport final 1.0. Les synthèses antérieures et renvois à la Phase 3 restent historiques. UNKNOWN reste UNKNOWN.
Périmètre. Matrix est un protocole/API fédéré; un homeserver (Synapse ou autre) stocke et réplique l’état des salons; Element est un ensemble de clients et services d’hébergement, pas « le réseau Matrix ». La politique de matrix.org ne vaut que pour le homeserver matrix.org. Les données et garanties dépendent donc de l’opérateur, des réglages E2EE, des clients, des bridges et des services annexes. Spécification Matrix, politique matrix.org
Registre de preuves en 30 catégories¶
Chaque ligne distingue fait établi, déclaration éditeur, preuve indépendante, inférence et inconnue. Un point d’interrogation ne signifie pas que la donnée n’existe pas.
| # / catégorie | FACT | VENDOR CLAIM | INDEPENDENT EVIDENCE | INFERENCE | UNKNOWN |
|---|---|---|---|---|---|
| 1. Architecture | Matrix fédère des homeservers par API serveur-à-serveur; événements et médias sont répliqués selon les membres/permissions des salons. | Matrix Foundation présente un réseau sans point de contrôle unique; Element vend clients et hébergement Synapse/EMS. | La politique matrix.org confirme la réplication vers homeservers distants, éventuellement hors contrôle de la Foundation et sous d’autres lois. | Fédération distribue la confiance, mais chaque serveur demeure un point de concentration pour ses propres comptes et journaux. | Proportion des comptes par hébergeur; topologie/réplication réelle d’un salon spécifique. |
| 2. Protocole cryptographique | E2EE est optionnel par salon/client. Element utilise Olm pour échanges appareil-à-appareil et Megolm pour groupes; Megolm spécifie AES-256-CBC, HKDF-SHA-256, HMAC-SHA-256 tronqué à 64 bits, Ed25519. Spec | Element annonce E2EE Olm/Megolm, vérification SAS/QR et sauvegarde de clés avec clé de récupération. | Analyse formelle 2024 : Olm+Megolm comparable à Signal+Sender Keys si les préclés Olm sont signées; PCS moins bonne si elles ne le sont pas. Papier | E2EE protège le contenu d’événements chiffrés si appareils vérifiés et implémentation saine; ne masque pas membership, IP, événements de contrôle ni salons non chiffrés. | Profil réellement négocié par build/client, state post-quantique et configuration actuelle sur chaque plateforme. |
| 3. Création d’identité | Identité de protocole = MXID @nom:serveur. Matrix ne requiert pas en lui-même email/téléphone; matrix.org exige aujourd’hui email vérifié dans ses conditions. | Matrix.org indique stocker username, hash de mot de passe, email, téléphone vérifié si fourni; pas de mot de passe en clair. | Politique effective 25 août 2025 : bcrypt avec au moins 4096 rounds, sel et pepper; username conservé indéfiniment pour éviter recyclage. | Un MXID sans téléphone peut rester pseudonyme, mais email, SSO, alias, serveur choisi et réutilisation de nom sont corrélables. | Données conservées par autres homeservers; suppression après désactivation et sauvegardes. |
| 4. Contact discovery | Identifiants tiers email/téléphone peuvent être associés à un MXID via Identity Service facultatif; matrix.org utilise son service d’identité. API | Matrix.org dit que email/téléphone peuvent permettre à d’autres de retrouver le MXID. | La spec définit vérification et lookup 3PID; ce n’est pas requis par le protocole global. | Si un utilisateur enregistre un 3PID, le service d’identité peut l’associer à son MXID, en dehors du chiffrement E2EE. | Rétention, limitation et résistance à l’énumération du service d’identité actuel. |
| 5. Métadonnées serveur | Homeserver traite MXID, device IDs, membership, room/event IDs, horodatages et événements de contrôle; corps chiffré en salon E2EE, structure de routage non cachée. | Matrix.org dit ne pas profiler et limiter la collecte aux besoins du service. | Étude forensique 2026 a extrait relations usager-salon, membership, appareils, IP, horaires, receipts, API calls de Synapse de test. | Le homeserver peut produire graphe social et chronologie même sans lire le contenu E2EE. | Durée des événements/logs/receipts/typing et rétention par instance, backups et services secondaires. |
| 6. IP utilisateur | Matrix.org déclare logger IP, device ID, user-agent et dernière connexion; IP logs jusqu’à 180 jours. Element déclare IP 180 jours pour Element chat, 30 jours pour IP des clients EMS, rageshake 180 jours. Matrix, Element | Logs présentés comme prévention abus, diagnostic, gestion d’appareils. | Synapse 1.133.0 sur Ubuntu 22.04 a produit IP/user-agent/device/heure dans logs et table user_ips lors de l’étude 2026. | Connexion directe expose nécessairement l’IP source au homeserver; VPN/Tor déplacent le point d’observation et peuvent affecter les services. | Proxy/CDN en amont et IP loggée réellement; rétention/purge par serveur tiers. |
| 7. IP exposée au correspondant | Appel WebRTC peut utiliser chemin direct ou TURN/SFU. Element Call déclare traiter IP participants, MXID/device, timestamps et type d’appel. | Element dit que Element Call est E2EE; ESS utilise LiveKit auto-hébergé par défaut, call.element.io LiveKit Cloud. | Politique Element distingue métadonnées d’appel du contenu E2EE; l’étude Synapse 2026 n’évalue pas les fuites ICE côté client. | P2P peut révéler IP aux pairs; relay la cache au pair mais le relay connaît IP. E2EE du média ne cache pas IP/horaires au relais. | Chemin ICE réellement choisi par build/config, IPv6 et métadonnées conservées par LiveKit; pas de mesure packet-level ici. |
| 8. Messages | Événements Matrix persistent et se répliquent. En salon non chiffré le contenu est visible aux homeservers; en salon E2EE le corps est ciphertext si le client chiffre correctement. | Element précise que chiffrement est par salon et n’est pas automatiquement actif partout. | La spec définit événements chiffrés; étude 2026 retrouve contenus plaintext des échanges non chiffrés et dit que le contenu E2EE reste protégé. | E2EE ne protège pas salons non chiffrés, bots/bridges/membres lecteurs ni terminaux compromis. | Défaut exact par client, caches/prévisualisations, rétention, redaction propagée aux homeservers distants. |
| 9. Groupes | Membership, invitations, rôles/permissions et état du salon sont gérés comme événements; chiffrement ne cache pas en soi la membership au serveur. | Element dit chiffrer salons E2EE et vérifie les appareils. | Spec + étude Synapse 2026 montrent membership et liens room-user extractibles; recherche académique 2024 analyse limites Olm/Megolm. | Serveur compromis peut voir/perturber membership et distribution; vérification inter-appareils réduit le risque, sans l’annuler. | Résistance des versions actuelles à homeserver malveillant, historique des nouveaux membres et propagation suppressions. |
| 10. Appels | Matrix sert à la signalisation; Element Call peut employer WebRTC/MatrixRTC, TURN et LiveKit SFU. | Element présente média comme E2EE. | Sa politique expose IP, MXID/device, timestamps et type d’appel au service. | P2P expose plus les IP aux pairs; SFU centralise visibilité réseau/disponibilité; contenu et métadonnées sont couches différentes. | Chiffres crypto actuels, conservation LiveKit, appel P2P vs SFU par configuration. |
| 11. Fichiers | Media repository stocke fichiers et URI. En salon E2EE client peut chiffrer fichier et transmettre la clé dans l’événement chiffré; sinon media service lit le fichier. | Matrix.org dit utiliser AWS pour certains fichiers et que l’opérateur ne lit pas le contenu E2EE. | BSI a trouvé en 2023 média téléchargeable sans authentification si URL connue; Element dit corrigé par authenticated media Matrix 1.11 en juin 2024. | Partager un média hors fonction E2EE ou une URL/clé divulguée contourne la protection; EXIF/thumbnail dépend du client. | Purge cache/CDN et copies fédérées; assurance que chaque client chiffre thumbnails et fichiers. |
| 12. Multi-device | Chaque appareil a identifiants/keys propres; sync passe par homeserver; cross-signing établit confiance entre appareils. | Element documente QR/SAS et synchronisation/vérification appareils. | Vulnérabilités E2EE critiques 2022 touchaient certaines intégrations JS/iOS/Android SDK; Element X/Rust SDK n’était pas dans le groupe annoncé comme affecté. | Appareil ajouté non vérifié ou sauvegarde mal configurée élargit les détenteurs de clés. | UX et défauts d’ajout par version; comportement d’ignorance de vérification et export des clés actuels. |
| 13. Notifications push | Homeserver utilise Push Gateway puis APNs/FCM. Element indique OS peut voir roomID/eventID et token tandis que traitement restant est local. | Element dit que contenu déchiffré n’est pas partagé par ce chemin. | Politique Element liste métadonnées visibles Apple/Google; aucune capture du payload de release actuelle n’a été faite. | IDs/horaires push peuvent permettre corrélation avec installation et compte via d’autres données OS. | Payload exact par OS/config/région; liaison token↔MXID dans gateways et télémétrie OS. |
| 14. Stockage local | Clients conservent cache/sync state et clés locales pour fonctions multi-device; chiffrement est par appareil. | Element présente stockage de clés sécurisé selon plateforme/OS. | Étude 2026 précise que l’examen forensique complet des clients Element desktop/mobile/web reste à faire. | Appareil déverrouillé/compromis peut donner le contenu clair même si serveur n’a que ciphertext. | Algorithmes DB, gestion de clés keystore/keychain, caches supprimés/fichiers temporaires par version. |
| 15. Sauvegardes | Key backup Matrix stocke potentiellement clés de salon chiffrées côté serveur avec clé de récupération côté client; données distinctes des messages. | Element décrit sauvegarde chiffrée et récupération d’historique. | Étude 2026 observe des opérations backup dans logs, pas le déchiffrement de backup sans secret utilisateur. | Backup étend surface/copies; une recovery key ou un appareil autorisé compromis réduit séparation. | KDF, paramètres, rétention/suppression versions et defaults exacts par client. |
| 16. Analytics / telemetry / SDK | Matrix.org utilise PostHog agrégé basé sur MXID en centres UE. Element propose Matomo opt-in, Sentry/rageshake (potentiellement IP/hostname/nom/email) et MapTiler pour cartes. | Politiques décrivent analytics opt-in et crash reports volontaires. | Policies séparent analytics du serveur et des clients; aucune inspection des binaires/traffic faite ici. | Consentement, crash reports et SDK sont distincts d’E2EE; un rapport de crash volontaire peut identifier. | Liste exhaustive SDK/endpoints par build, activation par défaut et rétention actuelle des rapports. |
| 17. Code source | Spécification, Synapse, Element Web, Element X Android/iOS, matrix-rust-sdk et vodozemac ont des repos publics. | Element présente Element X et ses services comme code ouvert selon composants/licences. | Repos contiennent releases/CI; Element Classic Android reste maintenu sécurité mais sans nouvelles fonctions, migration recommandée vers X. Classic | Code public ne rend pas l’instance hébergée, config, CI/signing, binaire Store ou service tiers vérifiables. | Nombre mainteneurs réellement actifs; composants commerciaux fermés et différences de build. |
| 18. Reproductibilité | Workflows CI/build sont publics. Repos publient artifacts et tags. | Les équipes fournissent instructions de compilation. | Releases vérifiées: Element X Android 26.09.4 (29 sept., commit 8f07865), iOS 26.09.2 (23 sept., 47f881c signé), Synapse 1.162.0 (29 sept., 63dc0cb signé), Element Web 1.12.31 (13 oct., 959eb55 signé). Android, iOS, Synapse, Web | Signature de tag authentifie objet Git mais n’établit pas identité entre source et binaire Store. | Rebuild bit-à-bit indépendant APK/IPA/desktop et provenance des artifacts non réalisés. |
| 19. Supply chain | Plusieurs SDK, dépendances et opérateurs tiers nécessaires; repos montrent CI, dépendances et advisories. | Element évoque Dependabot/outillage qualité et correctifs coordonnés. | Deux bugs E2EE critiques SDK publiés en 2022; buffer overflow CVE-2021-44538 dans libolm/matrix-js-sdk corrigé pour Element Web/Desktop 1.9.7; advisory ne vaut pas état actuel. Disclosure | Déploiement d’instances/forks mis à jour à des rythmes différents maintient risque post-fix. | SBOM et provenance des builds Store; mainteneurs dépendances et comparaison version publiée/source. |
| 20. Infrastructure | Matrix.org mentionne AWS pour certains fichiers, Cloudflare anti-DDoS, PostHog UE; Element documente EMS, Element Call/SFU, identity server, Matomo, Sentry; homeservers du réseau tiers. Domaines EMS | Matrix/Element indiquent choix de serveur et région d’hébergement selon offre. | Docs publient endpoints matrix.org, vector.im, element.io, call.element.io, sfu.call.element.io et services tiers. | Fédération ne retire pas dépendances à cloud/CDN/push propres à une config. | DNS/IP/ASN/CDN/région actuelle horodatés en passif; hébergeur de chaque serveur précis. |
| 21. Juridiction | Matrix.org Foundation CIC à Londres; politique couvre matrix.org seulement et cite Element comme processor. Autres homeservers gouvernés par opérateur/juridiction. | Foundation se présente comme custodian neutre du protocole; Element propose déploiements régionaux. | Politique reconnaît fédération/transferts potentiellement partout et hors contrôle de matrix.org. | Choix serveur est choix de confiance, mais copie d’un salon peut dépasser ce pays. | Région réelle de l’instance précise et transferts sous-traitants. |
| 22. Demandes policières | Matrix.org exige warrant UK IPA 2016 ou demande étrangère via MLAT; notification sauf interdiction; conservation 90 jours sur demande valide; urgence de mort/blessure grave imminente peut permettre disclosure sans warrant. Guide | Foundation dit ne pas remettre volontairement données et ne pas accéder au corps E2EE. | Guide fixe procédure, non compte réel de demandes/remises. Aucun transparency report agrégé repéré dans cette passe. | Un serveur peut produire ce qu’il détient : IP, identifiants, events non chiffrés, membership; homeservers fédérés sont opérateurs distincts. | Champs remis réellement dans chaque affaire, nombre demandes et ordres secrets/interceptifs. |
| 23. Affaires judiciaires | Le guide n’est pas un dossier judiciaire ni preuve d’une remise précise. | Foundation dit notifier utilisateur sauf interdiction. | Aucun cas primaire avec Matrix.org/Element et liste des champs divulgués retrouvé dans cette recherche. | Absence de cas public identifié ne prouve pas absence de demandes/remises. | Ordonnances, affidavits, FOIA et données effectivement obtenues. |
| 24. Audits | Rapports publics NCC 2016, Least Authority 2022 et BSI/MGM 2023 détaillés ci-dessous. | Matrix/Element mettent en avant les audits et corrections. | Périmètres/versions datés; aucun n’est audit complet de l’écosystème Matrix 2026 et tous les clients/serveurs. | Résolution d’un finding historique ne certifie pas version actuelle. | Audit indépendant 2026 du client X, Synapse courant, LiveKit, bridges, push et cloud. |
| 25. Vulnérabilités | Historique : bugs E2EE SDK critiques en 2022; CVE-2021-44538 buffer overflow; CVE timing libolm révélées en 2024; Synapse advisories; vulnérabilités state-resolution hautes sévérités annoncées 2025 (dont CVE-2025-49090). 2025 | Matrix publie advisories et versions corrigées. | Conditions et plages de versions varient; release disclosure 2022 indiquait aucun signe d’exploitation observée à cette date. | Écosystème fédéré dépend de patch rate de serveurs indépendants, forks et clients. | Inventaire complet 2026, exposition réelle et compliance des instances, exploitation d’instances précises. |
| 26. Recherche académique | Papier formel 2024 étudie Olm/Megolm; papier DFRWS 2026 étudie Synapse 1.133.0. | Éditeur met en avant standard ouvert et chiffrement. | Les papiers formels/serveur ne certifient pas UI, builds mobiles ni configurations courantes. | Résultats guident tests, ne remplacent pas retest des releases. | Recherche récente indépendante sur Element X, push, federation et multi-device courant. |
| 27. Incidents historiques | Advisories documentent défauts de code/protocole et correctifs; disclosures 2021/2022 ont précisé conditions/versions. | Matrix a dit ne pas avoir observé exploitation de vulns 2022 au moment de publication. | CVE-2021-44538 était déclenchable à distance mais jugé peu pratique; bugs de clients ont été corrigés par release. | Vulnérabilité n’implique pas incident ou exploitation; garder capacité adversaire et période. | Exploit non divulgué ou impact sur instances non patchées. |
| 28. Gouvernance / société / financement | Foundation est CIC britannique custodian du protocole; Element société distincte développe Synapse/clients et vend hébergement; rapport annuel Foundation public. 2025 report | Foundation revendique neutralité/transparence; Element dit financer équipes sécurité via offres commerciales. | Rapport annuel établit activités/finances de Foundation, pas actionnariat/financement interne complet d’Element. | Fournisseur principal concentré peut faciliter cohérence et centraliser influence technique. | Mainteneurs clés, répartition exacte budget sécu, risques de succession et influence par service. |
| 29. Résistance à la censure | Standard ouvert, federation et auto-hébergement permettent changement d’instance et clients tiers. | Matrix affirme le choix du serveur et décentralisation. | APIs fédérées établies par spec; aucune mesure actuelle par pays/ISP de blocage n’a été conduite. | Migration possible si utilisateurs disposent de DNS/instances alternatifs; domaines, stores, FCM/APNs et internet peuvent être filtrés. | Résistance mesurée par pays/DPI, onboarding en censure, mécanisme anti-blocage officiellement déployé. |
| 30. Maintenance actuelle | Repos publient releases fréquentes et contribs multiples; état des versions exactes ci-dessus au 13 oct. 2026. | Element distingue Classic/X et niveaux de support de plateformes. | Element Web 1.12.31 mentionne un nouveau défaut de vérification device, avec réversion identifiée pour staging; Synapse 1.162.0 signé. | Activité amont n’assure pas mise à jour de tous les homeservers ni reproductibilité de builds. | Mainteneurs actifs mesurés, délai patch des opérateurs, artifact Store comparé au source et versions supportées exactes. |
Matrix / Element — extraction d’audits¶
| Organisme / date / commanditaire | Version / commit | Durée / méthode | Scope / exclusions | Findings / sévérité | Recommandations, correctifs, retest |
|---|---|---|---|---|---|
| NCC Group Crypto Services, mandat Matrix financé par Open Technology Fund; rapport public 1 nov. 2016, v2.0. PDF lu | libolm 1.3.0; pas de commit SHA publié. | 2 consultants, 19–30 sept. 2016, 15 jours-personnes; revue source crypto, fuzzing entrées/pickling; suivi seconde moitié d’octobre. | Olm Double Ratchet/API, Megolm, C et entrées. matrix-js-sdk/clients hors scope; après 5 jours, l’audit a réorienté davantage de temps vers Megolm. | Initial : 1 HIGH, 1 MEDIUM, 6 LOW, 1 INFO (9); après retest : 1 HIGH, 1 MEDIUM, 5 LOW, 1 INFO restant (8). UKS Olm/Megolm, replay de groupes, forward/backward secrecy Megolm, transcript consistency, champs pre-key non MACés, bounds-check DoS. | Recommande lier identité aux prekeys, revue Megolm, rotation de sessions, canal sûr et protections timing/mémoire. Plusieurs protections appliquées dans matrix-js-sdk, mais findings marqués non fixés dans libolm lui-même; un bounds issue fixé. Pas de retest public clients actuels. |
| Least Authority TFA GmbH; audit vodozemac commandé par Matrix, final 30 mars 2022. PDF lu | Revue initiale 7c11a501bc316a0bf92a5fe06fee8582aad24897; vérification 57d8d87a747653d6d7b7a53acb9a8d8f8de48285. | Revue 20 déc.–25 janv.; rapport initial 28 janv.; retest 28–29 mars; rapport final 30 mars. Le PDF ne donne pas de jours-personnes. | Librairie Rust vodozemac Olm+Megolm; dépendances et bindings Android/Java, Python, JS hors scope sauf cas cités. | A–H résolus selon dashboard; G session Olm invalide consommait OTK/DoS; H conservation d’ancien ratchet. I secrets en mémoire vulnérables au swap/side-channel et J MAC trop court restent non résolus; suggestion 8 sur configuration de chain/message keys non résolue. | Recommande amélioration secrets mémoire, rétention de ratchet et réexaminer MAC; retest confirme certains fixes sur commit donné. Aucun retest indépendant de version 2026. |
| MGM Security Partners, financé par BSI CAOS; rapport publié 2024. PDF BSI, réponse Element | Synapse 1.90.0 et Element 1.11.39, releases du 15 août 2023. | Tests 1 sept.–17 nov. 2023; scans sept.-oct.; white-box, analyse statique outillée + analyse dynamique. Jours-personnes non trouvés. | Synapse + Element dans déploiement combiné; pas audit crypto complet, federation générale, clients X courants ni infra cloud. PDF BSI renvoie 403 ici; résumé technique recoupé via réponse Element, pas rapport téléchargé intégralement dans cet environnement. | 3 findings vulnérabilité de faible sévérité selon Element : E3.1 média accessible URL connue; E4.1 clore sondage d’un autre utilisateur (Element conteste la qualification sécurité); E6.1 décrit comme bypass de CVE-2023-32683 (Element conteste et dit MGM suivait CVE-2023-49953). Autres : enumeration username, politique password client, version serveur, logs reset, session longue, fichiers, scan antivirus, headers Web, dépendances, TODO/FIXME et duplication. | Element dit média authentifié ajouté Matrix 1.11 en juin 2024; E7.1 réglé avec OIDC. D’autres points qualifiés de configuration/non-security (password serveur non activé au test, antivirus au download, headers du serveur Web). Retest public complet non retrouvé. |
Recherche académique, non audit. The Matrix Reloaded (Ginesin & Nita-Rotaru, arXiv v2, 7 déc. 2024) formalise Olm/Megolm dans Verifpal et précise que conclusion comparative dépend de signature des préclés Olm. Le modèle ne valide pas les SDK/UI/builds particuliers. Papier
Matrix / Element — repositories, builds et supply chain¶
- Dépôts principaux : Synapse, Element Web, Element X Android, Element X iOS, matrix-rust-sdk, vodozemac. Element Classic est à distinguer d’Element X.
- Les tags consultés sont signés/vérifiés GitHub et les workflows CI sont publics. Cela authentifie objets Git, pas identité binaire/source; aucune reproduction bit-à-bit d’APK, IPA ou desktop n’a été effectuée.
- Repositories exposent releases, CI, dependabot et advisories; nombre des mainteneurs actifs estimé sur une fenêtre trimestrielle non calculé. Les contributors d’une release ne sont qu’un proxy.
- Instance hébergée matrix.org est administrée opérationnellement par Element; ESS/EMS, push, LiveKit Cloud, MapTiler, analytics/crash et serveurs tiers créent des dépendances distinctes du code protocole.
Mobile privacy — store labels et code/permissions¶
| Surface | Élément observé ou déclaré | Limite |
|---|---|---|
| Google Play — Element X Android | Data Safety déclare « pas de données partagées avec tiers »; collecte possible : email, nom optionnel, photos/vidéos/audio/fichiers/messages optionnels selon usage et interactions pour analytics; chiffrement en transit. Play | Auto-déclaration développeur variable par version/région/usage, non vérifiée par Google; ne recouvre pas nécessairement données de protocole chez le homeserver. |
| Apple App Store — Element X iOS | Store US déclare email, IDs user/device, location précise et diagnostics liés à identité; analytics également déclarés; Apple dit réponses non vérifiées. App Store | Label spécifique au storefront consulté; déclaration n’est pas preuve indépendante d’exfiltration/track publicitaire. |
| Permissions | Caméra/micro selon appel; photos/fichiers selon pièces jointes; localisation si partage location; contacts selon découverte choisie. | Manifest/entitlements du build Store actuel et permissions effectivement accordées non extraits ici. Permission déclarée ≠ accès effectivement utilisé. |
| SDK/analytics | Policies décrivent Matomo opt-in, Sentry/rageshake et MapTiler; release Android montre dépendance Sentry. | Aucun APK/IPA inspecté; pas de capture endpoint, tracker, trafic ou activation consentement. |
| Push | Policy Element indique APNs/FCM, token et métadonnées roomID/eventID possibles. | Aucune capture comparée Android/iOS et aucun payload évalué sur version actuelle. |
Matrix / Element — infrastructure OSINT passive et juridiction¶
Documenté publiquement : Matrix.org dit AWS pour certains fichiers, Cloudflare anti-DDoS, PostHog hébergé en UE. Element publie endpoints EMS, Element Call, SFU, Identity Service, Matomo et Sentry; le réseau Matrix n’a pas de région globale car chaque homeserver est géré par son opérateur. La liste d’endpoints est dans docs Element.
Observation de cette enquête : un snapshot DNS A/AAAA/CNAME et BGP/ASN limité a été acquis pour les noms principaux matrix.org/Element et figure dans le complément ci-dessous. Il manque encore l’archive DNS historique, une observation du résolveur indépendant, les origines derrière CDN, les régions des backends et la cartographie des autres services; aucun scan ni test de ports n’a été fait.
Frontières de confiance : homeserver (IP, session, membership/events); homeservers fédérés (réplicas/juridictions); Identity Service (3PID↔MXID); Push Gateway/APNs/FCM (token/metadata); LiveKit/TURN/SFU (IP/temps/type call); AWS/media; Cloudflare selon endpoint; Matomo/Sentry/MapTiler selon fonctionnalités.
Matrix / Element — forensics¶
| Étude / outil | Système + versions + date | Résultat | Limites |
|---|---|---|---|
| Wang et al., « DFRWS down the Rabbit-Hole: A forensic analysis of the Matrix protocol and Synapse server », FSI: Digital Investigation 56 (2026), DOI 10.1016/j.fsidi.2026.302049; outil open source SynExtract. PDF lu | Ubuntu Server 22.04; Synapse 1.133.0 Docker, Synapse Admin 0.11.1, SQLite; Element Desktop Ubuntu, Element Android 1.6.44 / Android 13; trois comptes de test. | Extraction de 175 tables annoncées et logs Docker : user/device IDs, IP/user-agent, login, salons/membership, horaires, receipts, API calls, media transfer, événements de clé/backup. Corps E2EE demeure chiffré; plaintext observé dans échanges non chiffrés. | Homeserver unique; fédération/bridges exclus; pas d’interception active de clés; les auteurs disent que forensique clients Element desktop/mobile/web reste à faire. Ce n’est pas Cellebrite/GrayKey/Magnet ni un cas de divulgation policière. |
| Schipper, Seelt & Le-Khac, « Forensic analysis of Matrix protocol and riot.im application », FSI: Digital Investigation 36 (2021), 301118. DOI | Riot.im pré-Element, étude publiée 2021. | Étude historique de client et structures LevelDB/SQLite, référencée par les auteurs 2026. | Build/appareil/outil commercial doivent être relus dans PDF avant toute transposition; ne prouve rien sur Element X actuel. |
Cellebrite / GrayKey / Magnet. Pas de preuve publique vérifiée retrouvée ici qui donne simultanément outil, OS/build, version exacte Element, date et résultat d’extraction. On ne conclut ni impossibilité ni capacité actuelle. Les traces DB/keys/fichiers/caches doivent être testées en labo avec versions exactes; l’étude de serveur ne s’applique pas à un téléphone.
Matrix / Element — law enforcement : ce qui est disponible et ce qui a réellement été remis¶
| Niveau | Résultat |
|---|---|
| Techniquement disponible | Matrix.org déclare MXID, email/téléphone éventuellement vérifiés, device ID, IP, user-agent, last seen et contenu/événements selon chiffrement. Pour salon E2EE, contenu ciphertext côté serveur; metadata de protocole demeure. Autres serveurs ont politiques propres. |
| Officiellement annoncé | Warrant UK IPA 2016 ou MLAT étranger; preservation jusqu’à 90 jours sur demande valide; notification sauf interdiction; transfert de données E2EE vers l’agence; exception d’urgence de danger imminent grave selon politique. |
| Effectivement remis dans un cas documenté | Aucun cas primaire avec Matrix.org/Element, ordonnance et champs effectivement transmis retrouvé dans cette phase; aucun rapport public agrégé repéré. « Non identifié publiquement ici », pas « jamais remis ». Ne pas confondre avec l’opération du 3 décembre 2024 contre un service criminel distinct nommé « MATRIX » : Europol dit que 2,3 millions de messages de ce service ont été interceptés/déchiffrés, et a confirmé à Matrix.org que le service n’a aucun lien avec le protocole Matrix; la police néerlandaise confirme également la distinction. Ce n’est donc pas une preuve d’accès à Matrix.org, Synapse ou Element. Europol [accès à vérifier], clarification Matrix.org rapportant la réponse d’Europol, police néerlandaise [accès à vérifier]. |
Matrix.org — complément probatoire sur politique, infrastructure et demandes (contrôle du 14 octobre 2026)¶
Cette mise à jour précise le périmètre matrix.org à partir de la notice effective du 25 août 2025 et du guide LE actuellement publié. Elle ne s’étend pas automatiquement aux autres homeservers, aux autres clients Matrix, ni à un retour policier réel.
| Sujet | FACT — texte publié / observation | VENDOR CLAIM | INDEPENDENT EVIDENCE | INFERENCE | UNKNOWN |
|---|---|---|---|---|---|
| Identité et compte | La notice matrix.org énumère MXID/username, hash de mot de passe, display name, email, téléphone vérifié si fourni, SSO liés et type de compte; username conservé indéfiniment pour éviter le recyclage. | La Foundation dit limiter ces champs et ne pas profiler les utilisateurs du homeserver. | Politique primaire de l’opérateur, pas inspection indépendante de la base de production. | Un compte sans nom civil reste pseudonyme seulement si email/SSO/alias et autres liens ne l’identifient pas. | Suppression réelle et expiration des sauvegardes, rétention des emails/3PID et données par fournisseur SSO. |
| Sessions, IP et appareil | La notice cite création/fin/dernière activité de session, dernière IP, user-agent initial, client utilisé; par appareil: identifiant configurable, IP, user-agent, dernière connexion. Les journaux IP d’accès seraient conservés au plus 180 jours. | Motifs annoncés: gestion des appareils, anti-abus, diagnostic et tendances de trafic. | Étude Synapse 1.133.0 reproduit la disponibilité de champs similaires en laboratoire; elle ne mesure pas le cluster matrix.org ni sa purge. | Un serveur peut produire une chronologie de compte et lier sessions/IP/device IDs; la politique ne prouve pas la purge effective. | Routage proxy, IP visible dans les logs app vs réseau, vérification de purge; pratiques d’autres homeservers. |
| Analytics | Plausible pour le site, sans cookies/identifiants persistants; PostHog pour usage du compte, décrit comme agrégé à partir du MXID, hébergé dans l’UE. | La Foundation présente l’usage comme agrégé et destiné à améliorer les performances, sans profilage. | Politique seulement; pas d’instrumentation du client ni capture de télémétrie faite. | « Agrégé » et « sans profilage » ne signifient pas qu’aucun événement ne soit associé au MXID avant agrégation. | Schéma d’événements, base d’agrégation, IP/champs transmis, rétention exacte et activation selon client. |
| Hébergeurs/régions | La même notice dit que la majorité du service est hébergée dans des centres Mythic Beasts, certains services dans des centres UpCloud, et nomme Element comme processeur. Elle place PostHog en centres UE. | Des documents officiels distincts citent aussi AWS pour certains fichiers et Cloudflare anti-DDoS. | Les documents établissent des déclarations d’opérateur, pas le mapping hostname→fournisseur/région actuellement actif. | Les références peuvent concerner des services distincts ou des périodes différentes; il serait prématuré de désigner l’une comme fausse. | Répartition exacte des médias, API, anti-DDoS, backups, logs et appels; régions physiques et chaîne de sous-traitance actuelle. |
| Procédure de demandes | Le guide LE dit qu’un ordre valide est requis pour les informations non publiques; le canal opérationnel présenté exige une autorisation UK au titre de l’IPA 2016 et les demandes étrangères via MLAT. Conservation: 90 jours, extensible sur requête valide. | Notification des personnes visées sauf interdiction; urgence sans mandat si danger imminent de mort ou blessure physique grave; données transférées à l’agence sous chiffrement de transport. | Guide primaire de politique, non preuve du nombre ou des champs effectivement produits dans un cas. Aucun rapport agrégé ni dossier de production attribué à Matrix.org identifié dans cette recherche. | Le transport E2EE de la réponse ne signifie pas que le fournisseur déchiffre un salon applicatif E2EE; il signifie que le fichier de réponse est protégé en transit. | Catégories exactes déjà remises, conservation après demande, ordres secrets/interception et cas non publics. |
| Résultats judiciaires | Aucun dossier public primaire consulté ne relie une demande à des champs effectivement remis par Matrix.org/Element. | Le guide annonce notification et non-remise volontaire pour la surveillance. | La mention d’un service criminel distinct « MATRIX », intercepté/démantelé en 2024, ne concerne pas le protocole Matrix; Matrix.org indique qu’Europol lui a confirmé l’absence de lien. | Consigner séparément « données techniquement détenues », « cadre de réponse annoncé » et « production observée »; le troisième état reste inconnu ici. | Dockets, retours de warrant, FOIA et dossiers étrangers ou scellés. |
Mise à jour de la matrice d’observateurs. Pour le homeserver matrix.org seulement: IP = CONFIRMÉ, rétention annoncée ≤180 jours; email = CONFIRMÉ comme champ de compte; téléphone = POSSIBLE/CONFIRMÉ s’il est fourni et vérifié; MXID/device/session/timestamps = CONFIRMÉ; graphe social/membership = CONFIRMÉ par l’architecture et les données de salon; contenu = lisible en salons non chiffrés, ciphertext côté serveur pour salons E2EE selon politique; push = élément lié à l’appareil selon Element, tandis que l’OS peut voir roomID/eventID. Pour les autorités, ces catégories sont techniquement possibles si elles existent encore, mais aucune remise Matrix.org avec champs concrets n’a été établie ici. Pour un homeserver tiers, chaque cellule doit être remplacée par sa propre politique et sa configuration.
Observation DNS/BGP publique, limitée et datée. Entre environ 00:23 et 00:27 le 14 octobre 2026, heure Europe/Paris (22:23–22:27 UTC le 13 octobre), les noms ci-dessous ont été résolus par le résolveur configuré localement avec des requêtes DNS A/AAAA/CNAME; ce résolveur n’a pas été identifié. RIPEstat network-info/as-overview a ensuite été interrogé sur les IP obtenues. Les TTL sont ceux vus dans les réponses et peuvent varier. L’ASN désigne le réseau annonçant l’adresse résolue, pas nécessairement l’hébergeur d’origine ni l’entité contrôlant les données.
| Nom / rôle documenté | DNS observé (TTL approx.) | Préfixes annoncés / ASN RIPEstat | Interprétation et limites |
|---|---|---|---|
matrix.org (homeserver public/nom de service) et matrix-client.matrix.org (utilisé comme endpoint média par un projet officiel Matrix) |
A: 172.66.139.239, 172.66.135.3; AAAA: 2606:4700:10::ac42:8bef, 2606:4700:10::ac42:8703; TTL 30–300 s. Les deux noms partagent les mêmes réponses observées. |
IPv4 172.66.128.0/20, IPv6 2606:4700:10::/44, AS13335 — CLOUDFLARENET / Cloudflare, Inc. |
Les adresses visibles sont sur Cloudflare; origine, chemin jusqu’au homeserver et distinction entre site/API/media non établis par cette résolution seule. Le client Matrix peut aussi découvrir une base URL selon son serveur. |
vector.im (identity service listé dans la documentation Element) |
A: 172.67.144.66, 104.21.28.52; AAAA: 2606:4700:3030::ac43:9042, 2606:4700:3030::6815:1c34; TTL ~300 s. |
172.67.144.0/20, 104.21.16.0/20, 2606:4700:3030::/48, AS13335 — Cloudflare. |
Edge DNS observé; backend, région et journaux de l’Identity Service inconnus. |
call.element.io (client web Element Call) |
A: 104.20.39.237, 172.66.165.154; AAAA: 2606:4700:10::ac42:a59a, 2606:4700:10::6814:27ed; TTL ~300 s. |
104.20.32.0/20, 172.66.160.0/20, 2606:4700:10::/44, AS13335 — Cloudflare. |
Cela attribue le frontend/hostname observé à l’edge Cloudflare, pas le chemin du média ni le SFU. |
sfu.call.element.io et livekit-jwt.call.element.io (SFU et service JWT selon docs Element) |
Les deux CNAME ont abouti à k8s-core-coreingr-b3bd03665a-d205ac2886bcb3d3.elb.eu-central-1.amazonaws.com; A 3.72.129.101 pour les deux. AAAA 2a05:d014:f9c:f200:3c8b:2a0e:96a7:bbc2 observé pour sfu.call.element.io. TTL vus ~16–300 s selon la réponse/le moment. |
IPv4 3.64.0.0/12, IPv6 2a05:d014:c00::/38, AS16509 — AMAZON-02 / Amazon.com, Inc. |
Le CNAME porte le label régional AWS eu-central-1 (Europe/Francfort). Ce point de présence concerne les noms résolus à cet instant; il ne démontre ni l’unicité de région ni la résidence des logs, des clés, ou de toutes les données d’appel. Régions AWS. |
Références de contrôle BGP: RIPEstat AS13335, RIPEstat AS16509, endpoint Matrix/Element et identity service, endpoint média Matrix dans le dépôt officiel, spécification de découverte homeserver. Ces sources documentent les rôles ou ASN; les enregistrements DNS listés sont des observations faites pendant cette enquête, pas des archives historiques. Aucun scan ni test de ports n’a été effectué.
Sources primaires: notice Matrix.org, guide Law Enforcement, spécification d’architecture, politique Element.
Matrix / Element — matrice des métadonnées par observateur¶
| Métadonnée | Fournisseur / homeserver | Contact | ISP / réseau | Apple / Google | Autorités |
|---|---|---|---|---|---|
| IP | CONFIRMÉ : connexion, matrix.org indique jusqu’à 180 j | POSSIBLE lors appel P2P ICE; sinon relay | CONFIRMÉ : source/destinations/timing | POSSIBLE via push/store/OS | PROBABLE si logs conservés; remise réelle inconnue |
| Téléphone | POSSIBLE s’il est donné/lié comme 3PID | POSSIBLE si profil/partage | CONFIRMÉ par opérateur téléphonique, mapping MXID non automatique | PROBABLE via compte OS/store, lien MXID inconnu | POSSIBLE via opérateur/service; remise non documentée |
| CONFIRMÉ sur matrix.org; dépend serveur ailleurs | POSSIBLE si divulgué/lookup 3PID | NON ACCESSIBLE PAR DESIGN sous TLS seul | PROBABLE via compte OS/store; liaison inconnue | POSSIBLE si homeserver le détient; cas de remise inconnu | |
| Identifiant | CONFIRMÉ : MXID, device IDs | CONFIRMÉ pour interlocuteurs/salons connus | POSSIBLE par corrélation, pas MXID lisible sous TLS | POSSIBLE ID application/installation | POSSIBLE via instance et compte; cas inconnu |
| Graphe social | CONFIRMÉ : membership/rooms; étude 2026 retrouve ces liens | CONFIRMÉ pour salons connus | POSSIBLE par timing multi-point | POSSIBLE via room/event IDs push | PROBABLE si homeserver ciblé possède les événements; disclosure inconnue |
| Timestamps | CONFIRMÉ : événements, connexion, receipts selon config | CONFIRMÉ pour échanges reçus | CONFIRMÉ via métadonnées trafic | PROBABLE via événements push | PROBABLE si logs/events retenus; cas inconnu |
| Volumes | CONFIRMÉ : ciphertext/media et transferts | CONFIRMÉ pour reçus/appels | CONFIRMÉ octets/durées | POSSIBLE taille/rythme push | POSSIBLE serveur/ISP, champs remis inconnus |
| Groupes / salons | CONFIRMÉ membership/IDs/état, contenu chiffré si E2EE | CONFIRMÉ pour salons partagés | POSSIBLE motifs trafic | POSSIBLE IDs de notification | PROBABLE au homeserver pertinent; cas non documenté |
| Appareils | CONFIRMÉ IDs/clés publiques/agent/last seen | POSSIBLE via vérification/liste selon client | POSSIBLE nombre sessions/IP | PROBABLE device/token OS; mapping variable | POSSIBLE données serveur ou saisie terminal |
| Push tokens | CONFIRMÉ au Push Gateway/serveur selon flux | NON ACCESSIBLE PAR DESIGN token d’un autre appareil | POSSIBLE destinations APNs/FCM | CONFIRMÉ token installation et metadata policy | POSSIBLE auprès homeserver/Apple/Google; cas Matrix non identifié |
Matrix / Element — matrice provisoire TM1–TM15 (pas un classement)¶
| TM | Valeur | Justification |
|---|---|---|
| TM1 — fournisseur curieux | 🟡 | Salon E2EE vérifié cache contenu; IP, sessions, membership/rooms, appels et salons non chiffrés restent visibles au serveur. |
| TM2 — fournisseur compromis | 🟡 | Ciphertext protège corps historique, mais serveur maîtrise disponibilité, fédération, metadata et livraison de clés; bugs historiques montrent risque versionnel. |
| TM3 — fournisseur malveillant | 🟡 | Vérification SAS/cross-signing peut signaler changement, mais client/versions et distribution de clés restent surfaces; choix du homeserver est central. |
| TM4 — ISP/Wi-Fi | 🟠 | TLS masque le corps, pas IP, horaires, volume; P2P peut divulguer l’IP au correspondant. |
| TM5 — adversaire passif multi-points | 🟠 | Serveur, push, SFU/TURN et FAI peuvent corréler temps/volumes; pas de mixnet démontré. |
| TM6 — adversaire global passif | 🔴 | Pas de protection documentée contre corrélation globale d’un réseau fédéré IP; métadonnées observables à plusieurs points. |
| TM7 — contact malveillant | 🟠 | Contact membre voit messages, peut capturer/partager et inviter bot/bridge; appel P2P peut exposer IP. |
| TM8 — doxxer OSINT | 🟡 | MXID/serveur compartimentés favorisent pseudonymat; email/téléphone, alias, avatars et salons publics corrèlent. |
| TM9 — demande judiciaire ordinaire | 🟠 | Guide Matrix.org spécifie mandat/conservation; homeserver détient IP, IDs, membership et contenu non E2EE; remise réelle inconnue. |
| TM10 — enquête sophistiquée | 🟠 | Étude Synapse 2026 montre extraction serveur de IP/appareils/rooms/timeline; contenu E2EE reste ciphertext sans clés. |
| TM11 — appareil verrouillé saisi | ❓ | Pas d’étude Cellebrite/GrayKey/Magnet actuelle avec OS/build/app Element précis retrouvée. |
| TM12 — appareil déverrouillé | 🔴 | Client/OS rendent les contenus accessibles en clair à l’utilisateur/processus; acquisition précise non testée. |
| TM13 — spyware ciblé | 🔴 | Spyware endpoint peut saisir écran, entrées, mémoire ou audio avant/après chiffrement; E2EE ne protège pas l’endpoint. |
| TM14 — supply-chain compromise | 🟠 | Source ouvert et tags signés, mais store/CI/cloud/tiers peuvent diverger; builds non reproduits. |
| TM15 — censure étatique | 🟡 | Auto-hébergement/fédération aide migration; domaines, DNS, stores, push et accès réseau peuvent être filtrés; pas de mesure pays par pays. |
Matrix / Element — contradictions, zones inconnues, expériences à mener¶
- « Matrix est E2EE » est trop large : chiffrement par salon/client, optionnel dans le standard; salon non chiffré est lisible par homeservers.
- « Décentralisé donc sans point central » confond réseau et opération : un homeserver centralise les données de ses comptes; replication et federation ajoutent détenteurs/juridictions et empêchent d’assurer suppression globale.
- « Calls E2EE donc rien visible » est contredit par la politique Element Call, qui déclare IP, MXID/device, timestamps et type d’appel. Média et métadonnées sont deux couches.
- NCC 2016 findings de crypto/protocole, mitigations applicatives annoncées; formalisation 2024 montre dépendance aux signatures de préclés. Cela ne prouve ni vulnérabilité présente ni absence de vulnérabilité en release courante.
- BSI 2023 : le rapport décrit findings faibles; Element conteste certaines qualifications et annonce corrections. PDF BSI renvoie 403 ici, donc finding-level recoupé via l’éditeur, non lecture intégrale indépendante.
- Forensics 2026 : 175 tables concerne Synapse 1.133.0 de labo, pas un téléphone, pas outil commercial, pas disclosure à la police, et pas chaque déploiement. Paper distingue corps E2EE ciphertext de messages non chiffrés.
- Law enforcement : guide établit procédure/capacité, pas un cas de champs réellement remis. Cas documenté inconnu, pas preuve de non-remise.
- Expériences nécessaires : (1) payload APNs/FCM et analytics avec consentement sur builds exacts; (2) WebRTC direct vs TURN/SFU/IPv6; (3) build Store reproductible, manifests/entitlements/SDK/permissions; (4) tests de suppression, federation, retention/logs/media; (5) extraction forensique téléphone verrouillé/déverrouillé avec modèle+OS/build+Element+outil notés; (6) DNS/ASN/CDN passif horodaté; (7) cas judiciaire primaire montrant champs effectivement divulgués; (8) retest indépendant des fixes NCC/Least Authority/BSI sur commits actuels. Aucun test de cette liste n’est présenté comme réalisé.