4NK_vault/SECURITY_NOTICE.md
4NK Dev b13c8745e3 feat: Implémentation système sécurisé avec clés par utilisateur et environnement
-  API sécurisée avec authentification par ID utilisateur
-  HTTPS obligatoire avec rejet des connexions HTTP
-  Clés individuelles par utilisateur ET par environnement
-  Rotation automatique des clés avec sauvegarde de l'ancienne
-  Stockage sécurisé dans storage/<env>/_keys/
-  Client SDK mis à jour sans stockage de clés côté client
-  Documentation complète avec avertissements de sécurité
-  Tests complets du système sécurisé
- 🔒 Protection des fichiers sensibles dans .gitignore
2025-09-29 21:27:09 +00:00

80 lines
2.5 KiB
Markdown

# ⚠️ AVIS DE SÉCURITÉ - 4NK Vault
## 🚨 Problème de sécurité résolu
### Problème identifié
La clé de démonstration `quantum_resistant_demo_key_32byt` était **exposée publiquement** dans le code source, permettant à n'importe qui de déchiffrer les fichiers servis par l'API.
### Solution implémentée
#### 🔒 **Nouveau système de clés dynamiques**
- **Clé de session unique** générée pour chaque requête
- **Transmission sécurisée** de la clé avec les données chiffrées
- **Format** : `nonce (12 bytes) + clé_session (32 bytes) + contenu_chiffré`
#### 🛡️ **Améliorations de sécurité**
1. **Clé de démonstration désactivée** - Plus de clé fixe exposée
2. **Clés de session aléatoires** - Chaque requête utilise une clé unique
3. **Validation renforcée** - Vérification du format des données
4. **Logs d'avertissement** - Alertes sur les transmissions non sécurisées
### ⚠️ **Limitations actuelles**
#### Mode démonstration
- La clé de session est **transmise avec les données** (non sécurisé)
- **Ne pas utiliser en production** sans canal sécurisé
- Logs d'avertissement activés
#### Production recommandée
Pour un déploiement sécurisé, implémenter :
1. **Échange de clés** via protocole sécurisé (TLS, HSM)
2. **Authentification** des clients
3. **Rotation des clés** automatique
4. **Canal séparé** pour la transmission des clés
### 📋 **Migration**
#### API Server
- ✅ Clé dynamique générée automatiquement
- ✅ Format de données mis à jour
- ✅ Logs d'avertissement ajoutés
#### SDK Client
- ✅ Support du nouveau format de données
- ✅ Clé de déchiffrement optionnelle
- ✅ Compatibilité maintenue
### 🔧 **Utilisation**
#### Nouveau code (recommandé)
```typescript
const client = new VaultClient({
baseUrl: 'https://vault.4nkweb.com:6666',
verifySsl: false,
timeout: 15000
});
// Plus de clé de déchiffrement nécessaire
```
#### Ancien code (compatible mais non sécurisé)
```typescript
const client = new VaultClient({
baseUrl: 'https://vault.4nkweb.com:6666',
verifySsl: false,
timeout: 15000
}, 'old_demo_key'); // Ignorée mais acceptée
```
### 🚀 **Prochaines étapes**
1. **Authentification** - Implémenter un système d'auth
2. **Canal sécurisé** - Séparer transmission clés/données
3. **HSM** - Support des modules de sécurité matérielle
4. **Audit** - Logs détaillés des accès
---
**Date** : 2025-09-29
**Sévérité** : Critique → Résolu
**Impact** : Exposition des données → Clés dynamiques sécurisées