Commit Graph

7 Commits

Author SHA1 Message Date
9ee3d01059 feat(dashboard): thème auto, config centralisée, dates UTC→TZ navigateur, tooltip Anubis
- ThemeContext: thème par défaut 'auto' (suit prefers-color-scheme du navigateur)
- config.ts: fichier de configuration centrale (API_BASE_URL, DEFAULT_THEME,
  PAGE_SIZES, seuils, description du mécanisme d'identification Anubis)
- dateUtils.ts: utilitaire partagé formatDate/formatDateShort/formatDateOnly/
  formatTimeOnly/formatNumber — convertit les dates UTC ClickHouse dans le
  fuseau horaire et la locale du navigateur (plus de 'fr-FR' hardcodé)
- tooltips.ts: ajout TIPS.anubis_identification — explique que les bots sont
  identifiés par UA (regex), IP/CIDR, ASN, pays via les règles Anubis
- DetectionsList: colonne Anubis avec icône ⓘ affichant le tooltip explicatif
- DataTable: Column.label étendu à React.ReactNode (pour JSX dans les headers)
- 24 composants mis à jour: fr-FR remplacé par locale navigateur partout

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-19 18:01:11 +01:00
da6fef87fd feat: tooltips universels sur l'ensemble du site
- CampaignsView: Score menace, JA4, ASN, Tendance, Score, Détections, Confiance
- FingerprintsView: colonnes avec tooltips via DataTable
- JA4InvestigationView: IPs Uniques, JA4, ASN, Score
- SubnetInvestigation: colonnes clés avec tooltips
- CorrelationGraph: légende et badges
- EntityInvestigationView: sections headers, JA4, ASN
- IncidentsView: stat cards, sévérité, ASN, Score de risque
- Fix: suppression des imports dupliqués dans CampaignsView

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-19 12:24:53 +01:00
b0999ee83a feat: tooltips InvestigationView/BruteForce/HeaderFingerprint + fix RouteTracker
- InvestigationView: InfoTip sur Risk Score, JA4 Rotation, TCP Spoof,
  Persistance, UA/CH mismatch, Browser score, JA4 distincts, JA4 rares,
  JA4 Légitimes (baseline)
- BruteForceView: tooltip Params combos, Top JA4, Credential Stuffing, Énumération
- HeaderFingerprintView: tooltip colonnes Hash cluster, Browser Score,
  UA/CH Mismatch %, Sec-Fetch modes
- App.tsx: RouteTracker ignore /investigation/ip/ (route alias)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-19 12:20:35 +01:00
c887846af5 maj cumulative 2026-03-18 13:56:39 +01:00
32a96966dd suite des maj 2026-03-18 09:00:47 +01:00
8032ebaab8 fix: correction de 7 bugs UI/API sur les dashboards avancés
BruteForce:
- Attaquants: strip ::ffff: des IPs (replaceRegexpAll dans SQL)
- Cibles: 'Voir détails' remplacé par expansion inline avec top IPs par host
  + nouveau endpoint GET /api/bruteforce/host/{host}/attackers
  + interface BruteForceTarget: top_ja4 → top_ja4s (cohérence avec API)

Header Fingerprint:
- Détail cluster: data.ips → data.items (clé API incorrecte)

Heatmap Temporelle:
- Top hosts ciblés: data.hosts → data.items (clé API incorrecte)
- Type annotation corrigé: { hosts: TopHost[] } → { items: TopHost[] }

Botnets Distribués:
- Clic sur ligne: data.countries → data.items (clé API incorrecte)

Rotation & Persistance:
- IPs rotateurs: strip ::ffff: (replaceRegexpAll dans SQL)
- IPs menaces persistantes: strip ::ffff: (replaceRegexpAll dans SQL)
- Historique JA4: data.history → data.ja4_history (clé API incorrecte)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-16 00:24:53 +01:00
e2bc4a47cd feat: ajout de 7 nouveaux dashboards d'analyse avancée
- 🔥 Brute Force & Credential Stuffing (view_form_bruteforce_detected)
- 🧬 TCP/OS Spoofing (view_tcp_spoofing_detected, 86K détections)
- 📡 Header Fingerprint Clustering (agg_header_fingerprint_1h, 1374 clusters)
- ⏱️ Heatmap Temporelle (agg_host_ip_ja4_1h, pic à 20h)
- 🌍 Botnets Distribués / JA4 spread (view_host_ja4_anomalies)
- 🔄 Rotation JA4 & Persistance (view_host_ip_ja4_rotation + view_ip_recurrence)
- 🤖 Features ML / Radar (view_ai_features_1h, radar SVG + scatter plot)

Backend: 7 nouveaux router FastAPI avec requêtes ClickHouse optimisées
Frontend: 7 nouveaux composants React + navigation 'Analyse Avancée' dans la sidebar
Fixes: alias fuzzing_index → max_fuzzing (ORDER BY ClickHouse), normalisation IPs ::ffff:

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-15 23:57:27 +01:00