Prendre RDV

Dossier technique de sécurité

La sécurité d’un LMS ne se démontre pas par une page de promesses. Nous maintenons un dossier technique de sécurité, mis à jour à chaque audit, que nous communiquons intégralement à votre DSI, à votre RSSI ou à votre délégué à la protection des données. Cette page en résume la substance.

Le document de référence couvre l’architecture d’authentification, le modèle d’autorisation, la gestion des sessions, la couverture OWASP, la défense en profondeur, la gestion des secrets, la journalisation, les dépendances tierces, la procédure de divulgation responsable et la conformité RGPD. Il est daté, versionné, et suit la version du produit que vous exploitez.

Le dernier audit de sécurité global a été mené en avril 2026. Ses conclusions et les correctifs associés sont publics : ils figurent dans notre changelog sous le label « Sécurité ».

Couverture OWASP Top 10 (2021)

Les dix catégories du référentiel OWASP font l'objet de mesures identifiées et documentées.

CATÉGORIE MESURES
A01 — Contrôle d’accès défaillant Modèle de droits appliqué sur tous les points d’entrée, jeton anti-CSRF sur les actions sensibles, validation stricte de la prise de contrôle de compte.
A02 — Défaillances cryptographiques Mots de passe en bcrypt, signature HMAC-SHA256 des cookies et des webhooks, comparaisons de secrets en temps constant, clés uniques par installation.
A03 — Injection Requêtes SQL systématiquement protégées (typage, échappement, listes blanches de colonnes et de tris), requêtes préparées, échappement HTML systématisé sur tout ce qui reflète une saisie utilisateur.
A04 — Conception non sécurisée Garde-fou contre les redirections ouvertes, réinitialisation de mot de passe repensée autour d’un jeton, protection contre le Zip Slip à l’import d’archives, contrôle des traversées de chemin à la lecture de fichiers.
A05 — Mauvaise configuration Secrets hors du dépôt avec fichier d’exemple documenté, cookies HttpOnly / Secure / SameSite, listage de répertoire désactivé, protection des dossiers sensibles portée par le produit.
A06 — Composants vulnérables Audits réguliers des dépendances PHP et JavaScript, ligne de dépendances volontairement réduite, politique de mise à jour trimestrielle.
A07 — Défaillances d’identification Limitation du nombre de tentatives avec délai croissant, régénération de session après connexion, cookie « rester connecté » signé, jeton de réinitialisation à usage unique, réponses anti-énumération de comptes.
A08 — Défaut d’intégrité Désérialisation contrainte (aucune instanciation d’objet non autorisée), signature des webhooks entrants et sortants, vérification de l’état des échanges OAuth2.
A09 — Journalisation insuffisante Journaux applicatifs structurés et typés (authentification, échecs, webservices, e-mails), horodatage, adresse IP et agent utilisateur, intégration Sentry en option.
A10 — SSRF Tous les appels sortants passent par un client durci : schémas HTTP/HTTPS uniquement, liste blanche d’hôtes, rejet des adresses privées et réservées, pas de suivi de redirection, vérification TLS et délais d’attente conservateurs.