Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
leakish — Détecteur de fuites de confidentialité dans le navigateur — huit modules de détection, évaluation des risques et historique par compte, le tout dans votre navigateur. | Kitploit
Outils/GitHubGitHub/qruiqai/leakish
OSINT (Renseignement de Sources Ouvertes)Cartographie RéseauAnalyse des VulnérabilitésCollecte d'InformationsSécurité WebProtection de la Vie PrivéeApprentissage et ÉducationSécurité des APIAnalyse DNSDétection d'Anomalies
GitHubqruiqai/leakish

leakish

71il y a 2 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Détecteur de fuites de confidentialité dans le navigateur — huit modules de détection, évaluation des risques et historique par compte, le tout dans votre navigateur.

Voir le dépôtSite web

Leakish

Détecteur de fuites de vie privée dans le navigateur — huit modules de détection, score de risque et historique par compte, le tout dans votre navigateur.

Built with Verdent Next.js 14 React 18 TypeScript 5 Prisma

Construit avec Verdent — un assistant de codage agentique. Chaque module de détection, le tableau de bord analytique, le flux d'authentification par clé API, l'interface bilingue et l'image Docker prête pour Kubernetes ont été conçus et implémentés lors de sessions de programmation en binôme pilotées par Verdent.


Ce que c'est

Ouvrez une URL, cliquez sur Run all, et en quelques secondes Leakish vous indique ce que votre navigateur divulgue à votre sujet et sur votre réseau — via WebRTC, les API d'empreinte numérique, DNS, et une sonde côté serveur. Huit modules indépendants produisent chacun un résultat typé + des signaux de risque, un score agrégé (0–100) et un niveau (safe / warning / critical).

Les utilisateurs connectés peuvent enregistrer les analyses dans MySQL, parcourir l'historique, et ouvrir un tableau de bord analytique qui affiche des graphiques de distribution, la répétition d'empreintes de hachage, la chronologie IP / ASN, les analyses aberrantes, et une comparaison par paire. Tout le reste (le détecteur lui-même) fonctionne sans compte — n'importe qui peut accéder à /app et lancer une analyse.

Modules de détection

Chaque module est enregistré via une interface DetectionModule<T> typée unique et s'exécute isolément — un module qui échoue n'affecte pas les autres. L'état d'activation par module est conservé dans localStorage avec une clé de version, survit à un rafraîchissement, et le bouton Run all ne parcourt que l'ensemble activé.

Fonctionnalités

  • Détection dans le navigateur — chaque module s'exécute dans l'onglet de l'utilisateur. Le serveur n'est impliqué que lorsque (a) l'utilisateur est connecté et enregistre une analyse, (b) le module de sonde réseau interroge /api/detect/network pour lire sa propre IP observée par le serveur, ou (c) le module DNS communique avec https://dns.google/resolve.
  • Interface bilingue — parité complète anglais / chinois. La locale est stockée dans un cookie leakish.locale, pilote <html lang>, les métadonnées de page, chaque écran, chaque réponse d'erreur API, et l'email de connexion par lien magique.
  • Authentification — NextAuth avec OAuth Google + email de lien magique (Mailgun) ; adaptateur Prisma sur MySQL. L'email est optionnel en développement — les liens sont imprimés dans le journal du serveur lorsque Mailgun n'est pas configuré.
  • Accès programmatique — les utilisateurs peuvent générer des clés API det_… sur la page Intégrations (SHA-256 stocké, texte brut affiché une seule fois). Chaque point de terminaison /api/detect/* accepte soit un cookie de session, soit une clé Bearer, donc la même analyse peut être enregistrée depuis un CLI / job CI.
  • Tableau de bord analytique à /scans/analytics — graphiques de distribution par fuseau horaire / plateforme / langue / écran / WebGL / ASN / pays / nombre de polices, répétition d'empreintes de hachage avec un grade de risque par type, chronologie IP / ASN, détecteur d'aberrations multi-axes, comparaison par paire avec score de similarité 0–100.
  • — produit des typés avec des identifiants stables (par ex. ), des résumés par module, et un score agrégé unique. Sensible à la locale via l'injection de .

Démarrage rapide

Prérequis : Node 22+ (tout ce qui est 20+ fonctionne pour le développement local), Yarn 1.x, une instance MySQL en cours d'exécution, et (optionnellement) un client OAuth Google.

root@kitploit:~
yarn install
cp env.example .env.local      # remplir DATABASE_URL, NEXTAUTH_SECRET, IP_HASH_SALT au minimum
yarn prisma:generate
yarn db:push                   # provisionner les tables sur une nouvelle base de données
yarn dev                       # http://localhost:3000

Variables d'environnement minimales pour une connexion fonctionnelle :

  • DATABASE_URL — ex. mysql://root:[email protected]:3306/detect
  • NEXTAUTH_SECRET — openssl rand -base64 32
  • NEXTAUTH_URL — http://localhost:3000 en développement
  • IP_HASH_SALT — openssl rand -base64 32

Optionnelles :

  • GOOGLE_CLIENT_ID / GOOGLE_CLIENT_SECRET pour la connexion Google
  • MAILGUN_API_KEY / MAILGUN_DOMAIN / EMAIL_FROM pour la livraison réelle de liens magiques (sans cela, le lien est imprimé dans la console du serveur de développement)
  • IPINFO_TOKEN pour enrichir la sonde réseau avec les données ASN / VPN / proxy

Voir env.example pour la liste complète annotée.

Routes

Structure du projet

root@kitploit:~
app/
├── (marketing)/         # / — Page d'accueil (état d'auth résolu côté serveur + UI client)
├── app/                 # /app — la page du détecteur
├── login/               # /login
├── scans/               # /scans, /scans/[id], /scans/analytics
├── integrations/        # /integrations — gestion des clés API
├── api/
│   ├── auth/            # Route NextAuth + login par clé API + tests
│   ├── detect/
│   │   ├── analytics/   # agrégation + comparaison par paire
│   │   ├── network/     # sonde de trafic sortant côté serveur
│   │   ├── scans/       # enregistrer / lister / obtenir / supprimer
│   │   └── uniqueness/  # combien d'utilisateurs partagent ce hachage d'empreinte
│   ├── integration/keys # créer / révoquer / lister les clés API
│   └── health/          # sonde de vivacité pour k8s
├── opengraph-image.tsx  # OG dynamique (par locale)
├── apple-icon.tsx       # icône apple-touch dynamique
├── icon.svg             # dégradé de bouclier
└── layout.tsx           # métadonnées + script d'initialisation du thème + LocaleProvider

components/
├── modular-detector.tsx          # coque de plus haut niveau (en-tête + liste des modules + résultats/vue d'ensemble)
├── detector/                     # liste des modules, panneau de résultats, filtre de catégorie, hook d'état
├── result-details/               # une vue de détail par module (interrupteur typé)
├── overview/                     # panneau de vue d'ensemble + export de diagnostic
├── auth/                         # AuthGateProvider, dialogue de connexion, formulaire de connexion
├── providers/                    # wrapper SessionProvider
└── ui/                           # primitives de style shadcn + bascules thème/locale

lib/
├── detection-modules/            # 8 implémentations de modules + ModuleManager + utilitaires IP + tests
├── risk/                         # assess.ts — agrégation RiskSignal/score
├── i18n/                         # en.ts / zh.ts + type Messages + locale client/serveur
├── api/                          # wrapper withDetectAuth, schéma Zod de charge utile d'analyse
├── client/                       # API d'analyse côté navigateur (extractFingerprintInputs, saveScan, lookupUniqueness)
├── server/                       # sonde réseau, sel de hachage IP, hachage d'empreinte, limite de taux, envoi d'email, analytiques
├── persistence/                  # wrappers localStorage sécurisés pour SSR
├── env.ts                        # validation d'environnement à l'exécution
├── logger.ts                     # journal de diagnostic pour le développement uniquement
└── prisma.ts                     # client singleton ciblant .prisma/detect-client

prisma/schema.prisma              # User / Account / Session / DetectScan / ApiKey / DetectFingerprintHash

Comment un cycle d'analyse se déroule

  1. L'utilisateur clique sur Run all dans /app. Le détecteur parcourt les modules activés via ModuleManager.runAllEnabledModules — l'échec de chaque module est capturé et isolé afin que les autres résultats continuent de s'afficher.
  2. Chaque module retourne un DetectionResult<T> typé (avec un tag success | failure et des données data spécifiques au module). Le panneau de résultats affiche un composant de détail par module via un switch sûr au niveau du typage.
  3. lib/risk/assess.ts parcourt chaque résultat, émet des RiskSignal avec des identifiants stables, et produit une OverallAssessment (score + niveau + compteurs).
  4. Sur Enregistrer cette analyse, le client extrait une charge utile structurée + des hachages d'empreinte (canvas2d / webgl / audio / fontset / UA) et envoie une requête POST vers /api/detect/scans. Le serveur valide avec Zod, exécute sa propre sonde réseau pour enregistrer l'IP / ASN / indicateurs VPN observés par le serveur, et écrit une ligne plus des lignes .

Stack technique

Tests

Les tests unitaires se trouvent à côté de leurs sujets dans des répertoires __tests__/ :

root@kitploit:~
yarn test                    # suite complète
yarn test chemin/vers/fichier       # fichier unique
yarn test -t "motif de nom" # par regex de nom de test

Points forts :

  • lib/detection-modules/__tests__/ — classification IP + extraction mDNS, enregistrement du gestionnaire de modules et isolation des échecs, RTCPeerConnection simulé pour le module WebRTC, tests de forme jsdom pour le module d'empreinte navigateur, génération de signaux CDP/automatisation.
  • lib/server/__tests__/analytics.test.ts — regroupement de distribution, groupement de répétition, notation des aberrantes, calcul de similarité par paire.
  • app/api/detect/scans/__tests__ — enregistrement POST (validation, limite de taux, idempotence, élagage) + liste GET + suppression DELETE unique.
  • app/api/integration/keys/__tests__ — création / révocation / liste avec restriction de mode (les sessions de clé API ne peuvent pas générer d'autres clés API).
  • app/api/auth/__tests__ — route de connexion par clé API (CSRF, vérification de format, gestion des clés révoquées / expirées, mise à jour de dernière utilisation).

Lint + vérification de types :

root@kitploit:~
yarn lint
npx tsc --noEmit

Déploiement

Le Dockerfile inclus produit une image standalone Next.js sur node:22-alpine. L'environnement de production est injecté via un Secret Kubernetes — des valeurs placées sont cuites au moment de la construction afin que SKIP_ENV_VALIDATION ne soit pas nécessaire à l'exécution. Un job prisma db push exécute le schéma avant le déploiement. Voir .github/workflows/deploy-tke.yml pour le pipeline complet de construction d'image → migration → déploiement.

Facturation & abonnements

Cette version open-source n'a pas de péage. Les enregistrements sont uniquement régis par le limiteur de taux par utilisateur intégré dans lib/server/rate-limit.ts (10 enregistrements/heure), et la conservation de l'historique est illimitée.

Remerciements

  • Verdent — assistant de codage agentique utilisé pour construire ce projet de bout en bout.
  • NextAuth — le substrat d'authentification.
  • Prisma — schéma, migrations, client généré.
  • shadcn/ui + Radix UI — les primitives accessibles sur lesquelles cette interface est construite.
  • Tailwind CSS — système de style.
  • ipinfo.io — données ASN / VPN gratuites utilisées par la sonde réseau.
  • Mailgun — livraison d'email de lien magique en production.

Licence

Voir LICENSE.

Télécharger l’outil
IDModuleCe qu'il inspecte
network-probeSonde de trafic réseauIP publique observée par le serveur, ASN, pays/région/ville, indicateurs VPN/proxy/Tor/hébergement, TLS/HTTP
webrtcWebRTCIPv4 + IPv6 publique via STUN, fuites RFC1918, candidats .local obfusqués par mDNS
browser-fingerprintEmpreinte navigateurUA, écran, fuseau horaire, plugins, cœurs CPU, mémoire appareil, liste de langues, DNT, cookies
canvas-fingerprintCanvas / WebGLChaînes renderer/vendor 2D + WebGL, bizarreries de rendu de texte, formats d'image supportés
audio-fingerprintAudioFréquence d'échantillonnage AudioContext, canaux, latence, hachage de sortie d'oscillateur
font-detectionPolices40+ sondes de polices nommées via détection de différence de largeur Canvas
dnsDNSAccessibilité DoH, signal DNSSEC, géolocalisation du résolveur, heuristiques de fuite DNS
cdp-detectionAutomatisation / headlessnavigator.webdriver, chronométrage CDP, surface d'API propre à Chromium, sondes de ports — confiance 0–1
Modèle de risque avec traçabilité par signal
lib/risk/assess.ts
RiskSignal
webrtc.public-ip-leak
Messages
  • Enregistrement idempotent + élagage par utilisateur — POST /api/detect/scans accepte un en-tête Idempotency-Key, limite chaque utilisateur à 200 analyses, et limite le taux d'enregistrement à 10/heure.
  • Image Docker prête pour la production — construction multi-étapes sur node:22-alpine, sortie standalone Next.js, déploiement sur Kubernetes via le workflow dans .github/workflows/.
  • CheminObjectif
    /Page d'accueil marketing (héro aurore, cartes fonctionnalités, FAQ, CTA)
    /appLe détecteur — liste des modules + panneau de résultats + vue d'ensemble
    /loginPage de connexion autonome (Google / email / clé API)
    /scansHistorique des analyses enregistrées de l'utilisateur connecté
    /scans/[id]Détail d'une analyse enregistrée
    /scans/analyticsDistribution / répétition / chronologie / aberrantes / comparaison
    /integrationsGérer les clés API det_… (créer / révoquer / mode d'emploi)
    DetectScan
    DetectFingerprintHash
  • L'analyse est ensuite visible à /scans/[id], contribue aux agrégats d'analytiques, et compte pour la recherche d'unicité.
  • CoucheComposants
    FrameworkNext.js 14 (App Router, force-dynamic partout), React 18
    LangageTypeScript 5, mode strict
    UITailwind CSS 3, primitives shadcn/ui sur Radix, icônes Lucide, Framer Motion
    AuthNextAuth 4 (OAuth Google + email de lien magique) + adaptateur Prisma
    DonnéesPrisma 6 → MySQL (sortie client personnalisée à .prisma/detect-client)
    ValidationZod
    TestsJest 29 + ts-jest + jsdom
    Build / déploiDockerfile multi-étapes, Next.js standalone, manifests Kubernetes