Files
Omarchy-Big-PC b6f22ad7c1 Traduction française complète + courriel de divulgation responsable
- README, PROTOCOL, FINDINGS, endpoints, rapport et outils traduits en français
- docs/DISCLOSURE.md : courriel prêt à envoyer à hello@boti.education
  (compte démo codé en dur, transmission en clair, logging de production)
- extract_endpoints.py vérifié après traduction (100 points d'accès toujours extraits)
2026-09-01 17:29:25 +01:00

2.5 KiB

Constats de sécurité (com.botieducation.greenwood 2.4.14)

Éditeur : Boti Education (boti.education). Tous les constats proviennent de l'analyse statique de l'APK distribué publiquement ; un seul appel de connexion réel a servi à vérifier le protocole.

F1. Identifiants codés en dur dans la build de production [GRAVE]

extracted/assets/public/1028.js (composant de la page de connexion) contient :

reconnectUser={id:12745, phone:"0649014703", password:"0649014703"}

Il s'agit d'un compte de démonstration oublié (reconnexion biométrique) avec le numéro de téléphone comme mot de passe, compilé dans le bundle de production. Quiconque possède l'APK connaît donc un identifiant et un mot de passe. Statut réel de ce compte côté serveur : inconnu ; signalement à l'éditeur recommandé.

F2. Transmission des identifiants en clair [MOYEN]

POST /login envoie le mot de passe comme champ de formulaire en clair (password=...). TLS protège le transport, mais l'identifiant reste en texte clair dans tout journal intermédiaire qui enregistre les données de formulaire ; même schéma dans forgot-password et change-password. Pas de hachage côté client. Courant pour cette classe d'application, à signaler quand même.

F3. Journalisation verbeuse en production [FAIBLE]

L'ApiService journalise (console.log) les paramètres, les en-têtes et le jeton d'accès dans la build release (visibles via adb logcat / débogage WebView distant s'il est activé).

F4. Pas d'épinglage de certificat, pas d'obfuscation [INFO]

Aucune configuration de pinning dans le bundle, aucune restriction network_security_config au-delà des valeurs par défaut, bundle JS entièrement lisible. Coût de la rétro-ingénierie : environ une heure.

F5. Permissions larges mais plausibles [INFO]

CAMERA, localisation fine+grossière, micro (plugin enregistreur vocal), stockage externe, FCM. Cas d'usage de la localisation : suivi des trajets (points d'accès pick*) ; caméra pour l'envoi de photos. Aucun abus observé (SMS, contacts, accessibilité).

Notes de divulgation responsable

  • Contact éditeur via boti.education ; l'école (Green Wood School, tél 0520744100 d'après le message officiel d'accueil) peut relayer.
  • F1 est le seul constat avec un potentiel de prise de contrôle de compte et il est trivialement vérifiable par l'éditeur.
  • Ne pas tester F1 contre le serveur réel au-delà de confirmer sa présence dans le bundle : au-delà, cela devient un accès non autorisé.