2 points par GN⁺ 2024-06-06 | 1 commentaires | Partager sur WhatsApp

Entropy

Entropy est un outil CLI qui analyse les lignes à forte entropie dans une base de code afin de repérer des informations sensibles.

Installation

Installation depuis les sources avec Go (recommandé)

  • go install github.com/EwenQuim/entropy@latest
  • La commande entropy devient disponible
  • Options supplémentaires : entropy -h, entropy -top 20 -ext go,py,js, entropy -top 5 -ignore-ext min.js,pdf,png,jpg,jpeg,zip,mp4,gif my-folder my-file1 my-file2
  • Installation en une ligne : go run github.com/EwenQuim/entropy@latest

Installation avec Brew

  • En cours de réalisation (WIP)

Installation avec Docker

  • docker run --rm -v $(pwd):/data ewenquim/entropy /data
  • Options supplémentaires : docker run --rm -v $(pwd):/data ewenquim/entropy -h, docker run --rm -v $(pwd):/data ewenquim/entropy -top 20 -ext go,py,js /data, docker run --rm -v $(pwd):/data ewenquim/entropy -top 5 /data/my-folder /data/my-file
  • Image disponible sur Docker Hub
  • L'option -v sert à monter le répertoire courant dans le conteneur
  • Il faut ajouter /data à la fin de la commande, sinon l'outil analysera l'intérieur du conteneur au lieu du système de fichiers local

Autres projets

  • Fuego : framework Go pour générer de la documentation OpenAPI à partir d'une base de code
  • Renpy-Graphviz : outil qui génère un graphe des écrans et labels du moteur de jeu Ren'Py

L'avis de GN⁺

  • Renforcement de la sécurité : peut aider à améliorer la sécurité en détectant automatiquement des informations sensibles dans la base de code.
  • Facilité d'utilisation : propose plusieurs méthodes d'installation pour permettre aux utilisateurs d'installer et d'utiliser l'outil facilement.
  • Outils similaires : parmi les outils offrant des fonctions comparables, on trouve git-secrets, truffleHog, etc.
  • Points à considérer avant l'adoption : il faut tenir compte de la taille et de la complexité de la base de code, et une ligne à forte entropie n'indique pas nécessairement la présence d'une information sensible.
  • Avantages et inconvénients du choix technologique : adopter Entropy peut aider à prévenir des incidents de sécurité, mais des faux positifs peuvent apparaître et nécessiter une vérification supplémentaire.

1 commentaires

 
GN⁺ 2024-06-06
Avis Hacker News
  • Utilisation d’un script Perl : proposition d’utiliser un script Perl pour mesurer l’entropie d’un texte. Il y a un problème de mauvaise compression sur les lignes courtes.
  • Mots de passe de base de données : le problème a été résolu en définissant tous les mots de passe de base de données sur abcd.
  • Questions sur l’usage de l’entropie : recherche d’un bon article expliquant comment utiliser l’entropie dans l’analyse de texte. Interrogations sur la définition et l’efficacité de l’entropie.
  • Problème de définition de l’entropie : définir l’entropie d’un texte est ambigu. Une meilleure méthode est nécessaire pour comparer l’entropie du langage naturel et celle de chaînes aléatoires.
  • Projets liés : présentation de projets connexes comme TruffleHog, detect-secrets et Semgrep Secrets.
  • Expression de gratitude : remerciements à DrJones, qui avait posé une question sur l’entropie il y a quelques années, avec un lien vers un bon article connexe.
  • Éloge de l’outil CLI : c’est un outil CLI utile, et le code Go est également excellent.
  • Programme ent : cela rappelle le programme ent, utilisé depuis longtemps.
  • Utilisation de modèles de langage : suggestion que des modèles de langage comme Llama 3 pourraient modéliser la surprise token par token afin de détecter les zones à forte entropie.
  • Suggestion d’amélioration de l’outil CLI : il serait bien d’ajouter un flag pour lire automatiquement les fichiers .gitignore et exclure leur contenu, ainsi que différentes stratégies de détection de secrets.
  • Méthode de comparaison par compression : suggestion de compresser un fichier puis de comparer la taille compressée à la taille d’origine. Les fichiers chiffrés se compressent moins bien que le code.