Par manque de temps, j'ai délégué l'analyse au stagiaire transistoré :
Vue Générale
Type d’extension: Correcteur / réécriture linguistique injecté sur toutes les pages (http(s):///, file:///*), via extension-loader.js et CSS associés.
Permissions clés: activeTab, storage, contextMenus, scripting, alarms. Portée très large du matching d’URL (toute navigation + fichiers locaux).
Surface D’Injection
Content scripts globaux: Injection sur toutes les pages, y compris documents locaux (), Google Docs/Slides (scripts dédiés), site LanguageTool, et éditeurs riches détectés dynamiquement.
Détection d’éditeurs: Analyse d’éléments contentEditable, textarea, certains input (types texte/recherche). Les mots de passe sont exclus (type password non inclus dans la condition).
Executor / loader: executor.js permet d’injecter et relier propriétés (value, selectionStart/End...) de wrappers aux vrais champs → accès direct au texte saisi.
Données Textuelles Collectées / Envoyées
Texte complet soumis: Chaînes envoyées aux endpoints de vérification / réécriture: https://api.languagetool.org/v2, fallback, serveurs premium (api.languagetoolplus.com, rewriting server).
Métadonnées de contexte: textSessionId, instanceId, parfois motherTongue, variantes préférées, niveau (level), règles cachées activées.
Email / destinataire: Si disponible recipientInfo.address / recipientInfo.fullName → inclus dans metaData (donc adresses et noms de destinataires peuvent partir aux serveurs).
Réécriture: Corps JSON inclut text, userID, language, éventuellement email, token, indicateur premium.
Ajout dictionnaire: Endpoint /words/add envoie word + identifiants (username, password ou tokenV2).
Aucune preuve ici de cryptage ou cycle d’effacement automatisé.
Limites / Protection Observées
Exclusion champs sensibles: Password non traité (condition ne prend que text / search). Pas d’indication explicite d’exclusion pour input[type=email], données financières, formulaires médicaux.
Scoping partiel: Focalisation sur zones éditables; pas de balayage global DOM non textuel, mais injection universelle permet lecture potentielle si heuristiques élargies.
Minimisation partielle: Découpage par phrases / paragraphes mais texte intégral peut être assemblé par serveur (offsets + segments).
Politique externe: Liens vers privacy/terms; aucune validation côté code sur classification sensible du contenu avant envoi.
Risques de Données Privées
Ampleur: Toute rédaction sur le web (emails, documents internes, messagerie web, intranets chargés dans navigateur) peut être transmise.
Destinataires Email: Adresse & nom → risques de corrélation sociale / mapping relationnel.
Credential leakage surface: Password exclus, mais mots de passe accidentellement tapés dans champs texte normaux (ex: erreurs utilisateur) pourraient être envoyés.
PII implicite: Noms propres, adresses, numéros présents dans le texte non filtrés.
Shadow DOM / iframes: Large surface; vérifier que détection n’inclut pas champs masqués / scripts de sécurité.
Campaign tracking: Documenter clairement finalité (statistiques vs profil marketing).
Conclusion
L’extension collecte et transmet principalement du texte saisi et des métadonnées linguistiques / de compte (email, userID, token, langue maternelle, variantes). Les limites actuelles protègent les champs password mais pas d’autres formes de PII textuelles.
La combinaison injection universelle + réécriture + destinataire email introduit un risque élevé de fuite de données privées si l’utilisateur rédige du contenu sensible.
Des mesures de minimisation, filtrage PII, transparence d’envoi, et restriction de portée devraient être priorisées pour réduire l’exposition.
[^] # Re: DOM
Posté par jtremesay (site web personnel) . En réponse au journal J'ai failli le faire. Évalué à -9.
Par manque de temps, j'ai délégué l'analyse au stagiaire transistoré :
Vue Générale
Surface D’Injection
Données Textuelles Collectées / Envoyées
Identifiants et Auth
Stockage Local / Persisté
Limites / Protection Observées
Risques de Données Privées
Ce Qui Ne Semble PAS Être Collecté
Points de Vigilance Technique
L’extension collecte et transmet principalement du texte saisi et des métadonnées linguistiques / de compte (email, userID, token, langue maternelle, variantes). Les limites actuelles protègent les champs password mais pas d’autres formes de PII textuelles.
La combinaison injection universelle + réécriture + destinataire email introduit un risque élevé de fuite de données privées si l’utilisateur rédige du contenu sensible.
Des mesures de minimisation, filtrage PII, transparence d’envoi, et restriction de portée devraient être priorisées pour réduire l’exposition.