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
Outils/GitHubGitHub/khoinp1012/kprotect
Authentification et AutorisationOutils DéfensifsEscalade de PrivilègesSécurité CloudSécurité de la Chaîne LogistiqueDétection d'IntrusionRéponse aux Incidents
GitHubkhoinp1012/kprotect

kprotect

Moteur de sécurité au niveau noyau utilisant eBPF-LSM pour appliquer des politiques d'accès aux fichiers basées sur la lignée des processus, protégeant les données sensibles contre les attaques de la chaîne d'approvisionnement avec une surcharge minimale.

Voir le dépôt
363il y a 6 moisVérifié par Kitploit

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

🛡️ kprotect

Tableau de bord kprotect

Présentation

kprotect est un moteur de sécurité au niveau du noyau conçu pour protéger vos données sensibles contre les attaques de la chaîne d'approvisionnement (comme les bibliothèques Python ou Node.js malveillantes). Il constitue une couche de sécurité indépendante pour les fichiers les plus sensibles.

  • Mise en application eBPF-LSM : Intercepte l'accès aux fichiers au niveau du noyau en fonction de motifs de chemin et de caractères génériques (par exemple *.env, home/user/.ssh/*).
  • Vérification de la lignée : Valide la chaîne de processus plutôt qu'un seul binaire.
    • ✅ VS Code → Terminal → cat (Chaîne autorisée)
    • ❌ VS Code → Terminal → python script.py → cat (Chaîne non autorisée bloquée)
  • Interface complète : Comprend un démon système, un outil en ligne de commande et une interface graphique de bureau.

Technologies principales

kprotect est construit autour de concepts modernes de programmation système :

  • Sécurité mémoire : Le démon backend est écrit en Rust, les hooks du noyau utilisent eBPF-LSM.
  • Faible surcharge : L'utilisation des hooks BPF LSM évite la latence associée aux changements de contexte traditionnels en espace utilisateur. Les micro-benchmarks montrent un impact minimal : +12.8 µs par création de processus et +0.53 µs par ouverture de fichier.
  • Hachage des processus : Implémente FNV-1a pour un hachage rapide et déterministe des chaînes de lignée de processus dans l'espace noyau.
  • Stockage chiffré : L'état et les journaux sont chiffrés avec AES-256-GCM, les clés sont dérivées via HKDF-SHA256 liées à la machine locale (/etc/machine-id).
  • Reconnaissance des scripts : Dispose d'un moteur d'enrichissement qui analyse les arguments des interpréteurs (python exploit.py vs python tool.py).
  • Sudo basé sur la lignée (Quick Sudo) : Un module PAM personnalisé permet une élévation sans mot de passe limitée à des chaînes de processus spécifiques.

Concept de lignée d'exécution

Plutôt que de valider des fichiers individuels, kprotect valide le chemin d'exécution :

  1. Suivi de lignée : Chaque processus possède une signature unique dérivée de la signature de son parent et de son propre chemin exécutable.
  2. Hachage dans l'espace noyau : Les signatures sont calculées avec FNV-1a dans l'espace noyau, créant une chaîne du processus init jusqu'à la feuille.
  3. Zones Rouges : Les emplacements sensibles (par exemple ~/.ssh/id_rsa, fichiers .env, cookies du navigateur) sont désignés comme chemins protégés.
  4. Moindre privilège : L'accès aux Zones Rouges par les processus root est bloqué sauf si leur lignée d'exécution spécifique a été explicitement autorisée.

✨ Fonctionnalités

  • Mise en application au niveau du noyau : Utilise les hooks BPF LSM (bprm_committed_creds, file_open) pour une surcharge quasi nulle et une protection résistante aux contournements.
  • Configuration chiffrée : Toutes les politiques, autorisations et journaux sont chiffrés au repos avec AES-256-GCM, avec une clé liée au matériel ou à un secret système.
  • Observabilité riche :
    • Flux en direct : Surveillance en temps réel des naissances de processus, des terminaisons et des tentatives d'accès bloquées. Flux d'événements en direct
    • Journaux d'audit : Journaux inviolables de toutes les actions critiques pour la sécurité. Notifications d'événements
  • Interfaces multiples :
    • kprotect-daemon : Le moteur principal fonctionnant comme un service systemd.
    • kprotect-cli : Gestion directe en ligne de commande.
    • kprotect-gui : Une application de bureau moderne et élégante construite avec Tauri et React. Motifs autorisés
  • Enrichissement dynamique : Capture les arguments des processus pour les interpréteurs (Python, Node, Bash) afin de distinguer python safe_script.py de python malicious_script.py.
  • Quick Sudo (Auth par lignée) : Configurez des chaînes de lignée complexes (par exemple ) pour contourner automatiquement et en toute sécurité les invites de mot de passe , sans utiliser de règles larges dans .

🏗️ Architecture

root@kitploit:~
graph TD
    subgraph Kernel Space
        LSM[BPF LSM Hooks]
        Maps[eBPF Maps: Signatures, Auth, Zones]
    end

    subgraph Userspace
        Daemon[kprotect-daemon]
        CLI[kprotect-cli]
        GUI[kprotect-gui]
    end

    LSM -->|Perf Events| Daemon
    Daemon -->|Update Maps| Maps
    CLI -->|Unix Socket| Daemon
    GUI -->|Unix Socket| Daemon

📂 Structure du projet

kprotect se compose de deux composants principaux qui doivent être installés dans l'ordre :

  1. kprotect Core : Le démon d'arrière-plan et l'outil CLI (interaction avec le noyau).
  2. kprotect GUI : Le tableau de bord de bureau pour la gestion.

🛠️ Installation et configuration

1. Prérequis

  • Noyau Linux 5.10+ avec support BPF LSM.
  • Paramètres du noyau : Assurez-vous que lsm=lockdown,yama,apparmor,bpf inclut bpf. Vous pouvez le vérifier avec cat /sys/kernel/security/lsm.

2. Installation du moteur principal (obligatoire)

Installez d'abord le démon pour activer la protection au niveau du noyau :

root@kitploit:~
# Installer le paquet debian du noyau
sudo apt install ./target/kprotect_0.2.0-beta-1_amd64.deb

Le programme d'installation mettra en place automatiquement le service systemd.

3. Installation de l'interface graphique de bureau (optionnelle)

Installez l'interface graphique pour une expérience de gestion visuelle :

root@kitploit:~
# Installer le paquet GUI
sudo apt install ./kprotect-ui/src-tauri/target/release/bundle/deb/kprotect-ui_0.2.0-beta_amd64.deb

⚠️ IMPORTANT : Après l'installation

Veuillez REDÉMARRER votre ordinateur après la première installation.
kprotect doit suivre la lignée des processus dès le démarrage du système. Les processus démarrés avant l'installation du démon seront marqués comme "Sans chaîne" et ne pourront pas être autorisés avec précision.


💻 Développeur : Compilation à partir des sources

Si vous compilez le projet vous-même, utilisez les scripts d'aide inclus :

root@kitploit:~
# Compiler le noyau (démon et CLI)
./scripts/build_deb.sh

# Compiler l'interface graphique de bureau
./scripts/build_gui.sh

⌨️ Utilisation de base de la CLI

Bien que l'interface graphique soit recommandée, vous pouvez tout gérer via kprotect-cli :

root@kitploit:~
# Vérifier l'état du système et la capacité des cartes eBPF
sudo kprotect-cli status

# Afficher les événements de sécurité en direct
sudo kprotect-cli events --stream

# Autoriser une chaîne bash vers cat
sudo kprotect-cli authorize add "/usr/bin/bash,/usr/bin/cat" --mode Suffix --description "Outils de développement"

# Protéger un fichier sensible
sudo kprotect-cli zone add red "/home/user/.ssh/id_rsa"

📂 Organisation du projet

  • kprotect-ebpf : Le "cerveau" dans le noyau. Code de type C performant en Rust avec aya.
  • kprotect-daemon : Le hub central. Gère la durée de vie de l'eBPF, le chiffrement et l'état.
  • kprotect-cli : Outil d'interaction léger.
  • kprotect-ui : Interface utilisateur de bureau construite avec Tauri + React + Vite + TailwindCSS.
  • kprotect-common : Structures de données partagées et définitions de protocole.

💖 Soutenir le projet

Si vous trouvez kprotect utile et souhaitez soutenir son développement, pensez à m'offrir un café ! Votre soutien m'aide à consacrer plus de temps à l'amélioration de kprotect, à l'ajout de nouvelles fonctionnalités et à la maintenance du projet.

ko-fi

Chaque contribution, aussi petite soit-elle, est profondément appréciée et me motive à continuer à construire de meilleurs outils de sécurité pour la communauté Linux. Merci ! 🙏


📝 Licence

Ce projet est sous licence GNU Affero General Public License v3.0 (AGPL-3.0). Voir le fichier LICENSE pour plus de détails.


Développé par khoinp1012

Télécharger l’outil
VS Code → Terminal → deploy.sh
sudo
NOPASSWD
/etc/sudoers