Skip to content

Security: fakturapp/faktur

SECURITY.md

Faktur

Politique de sécurité


Signaler une vulnérabilité

La sécurité des données de nos utilisateurs est une priorité absolue. Si vous découvrez une vulnérabilité, merci de la signaler de manière responsable.

Ne créez pas d'issue publique. Envoyez un email à :

contact@fakturapp.cc

Incluez dans votre rapport :

  • Une description claire de la vulnérabilité
  • Les étapes pour la reproduire
  • L'impact potentiel estimé
  • Une suggestion de correctif, si possible

Nous nous engageons à :

  • Accuser réception sous 48 heures
  • Fournir une évaluation initiale sous 7 jours
  • Corriger les vulnérabilités critiques dans les plus brefs délais

Architecture de chiffrement

Faktur utilise une architecture de chiffrement zero-access inspirée de Proton Mail. Le serveur ne stocke jamais aucune clé de déchiffrement en clair.

Hiérarchie des clés

Mot de passe ─── Argon2id (64 Mo, 3 itérations) ───→ KEK (Key Encryption Key)
                                                          │
                                                   AES-256-GCM
                                                          │
                                                          ▼
                                                    DEK (Data Encryption Key)
                                                    Unique par équipe
                                                          │
                                                   AES-256-GCM (IV unique)
                                                          │
                                                          ▼
                                                   Champs chiffrés

Données protégées

Donnée Méthode
Noms et contacts clients AES-256-GCM par champ
Adresses email AES-256-GCM par champ
Adresses postales AES-256-GCM par champ
IBAN / BIC AES-256-GCM par champ
Notes et commentaires AES-256-GCM par champ
Mots de passe Scrypt (hash, jamais stockés en clair)
Secrets 2FA Chiffrés avec APP_KEY (AdonisJS)

Ce que le serveur ne stocke jamais

  • Le mot de passe en clair
  • La KEK (dérivée à chaque session, jamais persistée)
  • La DEK en clair (stockée uniquement sous forme chiffrée)

Scénario de compromission

Même avec un accès complet au serveur (base de données, code source, variables d'environnement), un attaquant n'obtient que des données chiffrées illisibles.

Élément État
Champs sensibles Chiffrés : v1:<salt>:<iv>:<ciphertext>
DEK Chiffrée avec la KEK (inutilisable sans le mot de passe)
Salt Argon2id Inutile sans le mot de passe
APP_KEY N'intervient pas dans le chiffrement zero-access

Bonnes pratiques

  • Utilisez un mot de passe fort (12 caractères minimum)
  • Activez l'authentification à deux facteurs (2FA)
  • Conservez vos codes de récupération 2FA en lieu sûr
  • Ne partagez jamais votre mot de passe ou vos tokens d'accès

Versions supportées

Seule la dernière version de Faktur reçoit les correctifs de sécurité.

Version Support
Dernière version Correctifs de sécurité actifs
Versions antérieures Non supportées

Dépendances

Les dépendances sont régulièrement auditées. Les mises à jour de sécurité critiques sont appliquées en priorité.


Voir le README principal pour la vue d'ensemble du projet.

There aren't any published security advisories