Add complete French (fr) and Chinese (zh) translations for all documentation: - Root files: README, CHANGELOG, SECURITY, BETA-RELEASE - docs/: All 16 core documentation files - DOCS/: All 19 deep-dive documents including embedded/ and archive/ - package/secubox/: All 123+ package READMEs - Misc: secubox-tools/, scripts/, EXAMPLES/, config-backups/, streamlit-apps/ Total: 346 translation files created Each file includes language switcher links for easy navigation between English, French, and Chinese versions. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
194 lines
5.3 KiB
Markdown
194 lines
5.3 KiB
Markdown
[English](README.md) | [Francais](README.fr.md) | [中文](README.zh.md)
|
||
|
||
# Tableau de Bord SecuBox Security Threats
|
||
|
||
## Apercu
|
||
|
||
Un tableau de bord LuCI unifie qui integre les **risques de securite DPI de netifyd** avec **l'intelligence de menaces CrowdSec** pour une surveillance complete des menaces reseau et un blocage automatise.
|
||
|
||
## Fonctionnalites
|
||
|
||
- **Detection de Menaces en Temps Reel** : Surveille les 52 types de risques de securite de netifyd
|
||
- **Integration CrowdSec** : Correlation avec les alertes et decisions CrowdSec
|
||
- **Score de Risque** : Calcule des scores de risque 0-100 bases sur plusieurs facteurs
|
||
- **Blocage Automatique** : Regles configurables pour le blocage automatique des menaces
|
||
- **Analyse par Hote** : Suivi des menaces par adresse IP
|
||
- **Tableau de Bord Visuel** : Statistiques, graphiques et tableau de menaces en temps reel
|
||
|
||
## Architecture
|
||
|
||
```
|
||
Moteur DPI netifyd → Backend RPCD → API ubus → Tableau de Bord LuCI
|
||
↓
|
||
CrowdSec LAPI
|
||
↓
|
||
nftables (blocage)
|
||
```
|
||
|
||
## Dependances
|
||
|
||
- `luci-base` : Framework LuCI
|
||
- `rpcd` : Daemon Remote Procedure Call
|
||
- `netifyd` : Moteur d'inspection approfondie des paquets
|
||
- `crowdsec` : Intelligence de menaces et blocage
|
||
- `jq` : Traitement JSON
|
||
- `jsonfilter` : Filtrage JSON compatible UCI
|
||
|
||
## Installation
|
||
|
||
1. Compiler le package :
|
||
```bash
|
||
cd /path/to/openwrt
|
||
make package/secubox/luci-app-secubox-security-threats/compile
|
||
```
|
||
|
||
2. Installer sur le routeur :
|
||
```bash
|
||
opkg install luci-app-secubox-security-threats_*.ipk
|
||
```
|
||
|
||
3. Redemarrer les services :
|
||
```bash
|
||
/etc/init.d/rpcd restart
|
||
/etc/init.d/uhttpd restart
|
||
```
|
||
|
||
## Utilisation
|
||
|
||
### Acces au Tableau de Bord
|
||
|
||
Naviguer vers : **Admin → SecuBox → Securite → Threat Monitor → Dashboard**
|
||
|
||
### Configurer les Regles de Blocage Automatique
|
||
|
||
Editer `/etc/config/secubox_security_threats` :
|
||
|
||
```uci
|
||
config block_rule 'my_rule'
|
||
option name 'Bloquer Malware'
|
||
option enabled '1'
|
||
option threat_types 'malware'
|
||
option duration '24h'
|
||
option threshold '60'
|
||
```
|
||
|
||
Appliquer les changements :
|
||
```bash
|
||
uci commit secubox_security_threats
|
||
```
|
||
|
||
### Blocage Manuel
|
||
|
||
Via le tableau de bord :
|
||
1. Cliquer sur le bouton "Bloquer" a cote de la menace
|
||
2. Confirmer l'action
|
||
3. L'IP sera bloquee via CrowdSec
|
||
|
||
Via CLI :
|
||
```bash
|
||
ubus call luci.secubox-security-threats block_threat '{"ip":"192.168.1.100","duration":"4h","reason":"Test"}'
|
||
```
|
||
|
||
### Mettre un Hote en Liste Blanche
|
||
|
||
```bash
|
||
ubus call luci.secubox-security-threats whitelist_host '{"ip":"192.168.1.100","reason":"Poste admin"}'
|
||
```
|
||
|
||
## Algorithme de Score de Risque
|
||
|
||
**Score de Base (0-50) :** nombre_risques × 10 (plafonne)
|
||
|
||
**Poids de Severite :**
|
||
- Indicateurs de malware (MALICIOUS_JA3, DGA) : +20
|
||
- Attaques web (injection SQL, XSS) : +15
|
||
- Anomalies reseau (RISKY_ASN, tunneling DNS) : +10
|
||
- Menaces de protocole (BitTorrent, Mining) : +5
|
||
|
||
**Correlation CrowdSec :**
|
||
- Decision active : +30
|
||
|
||
**Niveaux de Severite :**
|
||
- Critique : ≥80
|
||
- Eleve : 60-79
|
||
- Moyen : 40-59
|
||
- Faible : <40
|
||
|
||
## Categories de Menaces
|
||
|
||
- **malware** : JA3 malveillant, domaines DGA, entropie suspecte
|
||
- **web_attack** : Injection SQL, XSS, tentatives RCE
|
||
- **anomaly** : Tunneling DNS, ASN risques, trafic unidirectionnel
|
||
- **protocol** : BitTorrent, mining, Tor, protocoles non autorises
|
||
- **tls_issue** : Problemes de certificat, chiffrements faibles
|
||
|
||
## Tests
|
||
|
||
### Backend (CLI ubus)
|
||
```bash
|
||
# Tester le statut
|
||
ubus call luci.secubox-security-threats status
|
||
|
||
# Obtenir les menaces actives
|
||
ubus call luci.secubox-security-threats get_active_threats
|
||
|
||
# Tester le blocage
|
||
ubus call luci.secubox-security-threats block_threat '{"ip":"192.168.1.100","duration":"4h","reason":"Test"}'
|
||
|
||
# Verifier dans CrowdSec
|
||
cscli decisions list
|
||
```
|
||
|
||
### Frontend
|
||
1. Naviguer vers le tableau de bord dans LuCI
|
||
2. Verifier que les cartes de statistiques s'affichent
|
||
3. Verifier que le tableau des menaces se remplit
|
||
4. Tester le bouton "Bloquer"
|
||
5. Verifier le polling temps reel (rafraichissement 10s)
|
||
|
||
## Depannage
|
||
|
||
### Aucune menace detectee
|
||
- Verifier si netifyd fonctionne : `ps | grep netifyd`
|
||
- Verifier les donnees netifyd : `cat /var/run/netifyd/status.json`
|
||
- Activer la detection de risques netifyd dans la config
|
||
|
||
### Blocage automatique non fonctionnel
|
||
- Verifier si le blocage auto est active : `uci get secubox_security_threats.global.auto_block_enabled`
|
||
- Verifier que les regles de blocage sont activees : `uci show secubox_security_threats`
|
||
- Consulter les logs : `logread | grep security-threats`
|
||
|
||
### Problemes d'integration CrowdSec
|
||
- Verifier si CrowdSec fonctionne : `ps | grep crowdsec`
|
||
- Tester cscli : `cscli version`
|
||
- Verifier les permissions : `ls -l /usr/bin/cscli`
|
||
|
||
## Fichiers
|
||
|
||
**Backend :**
|
||
- `/usr/libexec/rpcd/luci.secubox-security-threats` - Backend RPCD (mode 755)
|
||
- `/etc/config/secubox_security_threats` - Configuration UCI
|
||
|
||
**Frontend :**
|
||
- `/www/luci-static/resources/secubox-security-threats/api.js` - Wrapper API
|
||
- `/www/luci-static/resources/view/secubox-security-threats/dashboard.js` - Vue tableau de bord
|
||
|
||
**Configuration :**
|
||
- `/usr/share/luci/menu.d/luci-app-secubox-security-threats.json` - Menu
|
||
- `/usr/share/rpcd/acl.d/luci-app-secubox-security-threats.json` - Permissions
|
||
|
||
**Runtime :**
|
||
- `/tmp/secubox-threats-history.json` - Historique des menaces (volatile)
|
||
|
||
## Licence
|
||
|
||
Apache-2.0
|
||
|
||
## Auteurs
|
||
|
||
CyberMind.fr - Gandalf
|
||
|
||
## Version
|
||
|
||
1.0.0 (2026-01-07)
|