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
paranoid_crypto — La bibliothèque de Paranoid contient des implémentations de vérifications pour les faiblesses bien connues des artefacts cryptographiques. | Kitploit
Outils/GitHubGitHub/google/paranoid_crypto
Analyse StatiqueScanners de VulnérabilitésAnalyse des VulnérabilitésCryptographieArticles et RechercheArchived
GitHubgoogle/paranoid_crypto

paranoid_crypto

La bibliothèque de Paranoid contient des implémentations de vérifications pour les faiblesses bien connues des artefacts cryptographiques.

Voir le dépôt
803495il y a 1 anPas 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

Projet Paranoid

Aperçu

Le projet Paranoid vérifie les faiblesses connues des artefacts cryptographiques tels que les clés publiques, les signatures numériques et les nombres pseudo-aléatoires en général. Cette bibliothèque contient des implémentations et des optimisations de travaux existants issus de la littérature. Ces travaux ont montré que la génération de ces artefacts était défectueuse dans certains cas. Voici quelques exemples de publications sur lesquelles la bibliothèque s'appuie.

  • Arjen K. Lenstra, James P. Hughes, Maxime Augier, Joppe W. Bos, Thorsten Kleinjung, and Christophe Wachter. (2012). Ron avait tort, Whit a raison;
  • Nadia Heninger, Zakir Durumeric, Eric Wustrow, and J. Alex Halderman. (2012). Extraire vos P et Q : détection de clés faibles répandues dans les équipements réseau;
  • Daniel J. Bernstein, Yun-An Chang, Chen-Mou Cheng, Li-Ping Chou, Nadia Heninger, Tanja Lange, and Nicko van Someren. (2013). Factorisation de clés RSA issues de cartes à puce certifiées : Coppersmith en conditions réelles;
  • Joachim Breitner and Nadia Heninger. (2019). Biased Nonce Sense : attaques par treillis contre les signatures ECDSA faibles dans les crypto-monnaies;

Objectif

L'objectif est d'accroître la confiance dans les cas d'usage de la cryptographie à l'intérieur et à l'extérieur de Google.

Lorsqu'on traite de chiffrement asymétrique, les artefacts cryptographiques sont généralement :

  1. Générés par l'un de nos propres outils (par exemple, chez Google nous utilisons boringssl ou tink) ; ou,
  2. Générés par des outils tiers auxquels nous avons accès (ces outils peuvent donc, par exemple, être vérifiés pour détecter des vulnérabilités à l'aide de wycheproof) ; ou,
  3. Générés par des outils tiers et/ou des boîtes noires matérielles ou logicielles auxquelles nous n'avons pas accès.

Avec Paranoid, n'importe quel artefact cryptographique peut être testé, mais sa motivation première est de détecter l'utilisation de boîtes noires matérielles ou logicielles tierces faibles. Par conséquent, Paranoid peut être utilisé même si nous ne sommes pas en mesure d'inspecter le code source (situation 3. ci-dessus).

Le projet vise à détecter les vulnérabilités connues ainsi que les inconnues. Par exemple, il tente d'identifier les vulnérabilités causées par des erreurs de programmation ou l'utilisation de générateurs de nombres aléatoires propriétaires faibles. Détecter de nouvelles vulnérabilités est bien sûr beaucoup plus difficile que de détecter celles qui sont connues. De telles détections peuvent nécessiter de grands ensembles d'artefacts ou ne trouver les artefacts faibles qu'avec une faible probabilité.

Par conséquent, nous sommes très intéressés par les retours d'expérience et par l'apprentissage de la bibliothèque cryptographique qui a généré des artefacts cryptographiques faibles (voir appel à contributions ). Le projet est en constante évolution. Après avoir pris connaissance d'implémentations faibles, le plan est de les analyser et d'ajouter des détections ciblées.

Pour commencer

La documentation des vérifications actuellement implémentées se trouve dans docs. La documentation sera enrichie au fil du temps.

Pour apprendre à utiliser les vérifications, vous pouvez consulter le dossier examples ou les tests unitaires (fichiers *test.py). Les exemples montrent comment tester différents artefacts cryptographiques.

Installation

Clonez le dépôt :

$ git clone https://github.com/google/paranoid_crypto.git && cd paranoid_crypto

REMARQUE : Les commandes ci-dessous ont été testées sur la version stable de Debian (bookworm). Assurez-vous d'utiliser python3.11 ou une version plus récente.

Installez les dépendances :

$ sudo apt update && sudo apt install python3 python3-full python3-pip python3-pybind11 python3-fpylll python3-gmpy2 protobuf-compiler

Créez et activez un environnement virtuel :

$ python3 -m venv --system-site-packages ~/paranoid-venv

$ source ~/paranoid-venv/bin/activate

REMARQUE : Si vous savez ce que vous faites, vous pouvez passer directement à l'étape suivante et utiliser l'option --break-system-packages de pip.

Installez le paquet Python paranoid_crypto :

$ python3 -m pip install .

Pour vérifier que l'installation a réussi, vous pouvez exécuter les tests unitaires. Par exemple :

root@kitploit:~
$ cd paranoid_crypto && python3 -m unittest discover -b -p "*test.py"
.................................................................................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 305 tests in 314.660s

OK

Docker

Alternativement, si vous souhaitez l'exécuter dans un conteneur, vous pouvez utiliser notre Dockerfile fourni, comme indiqué ci-dessous.

REMARQUE : Assurez-vous d'avoir docker installé.

Après avoir cloné le dépôt, construisez l'image docker :

$ docker build -t paranoid-img .

Créez et démarrez le conteneur :

root@kitploit:~
$ docker run --name paranoid-container -it paranoid-img
paranoid-user@6191368b26b8:~$

Pour vérifier que l'installation a réussi, vous pouvez exécuter les tests unitaires. Par exemple :

root@kitploit:~
paranoid-user@6191368b26b8:~$ cd paranoid_crypto && python3 -m unittest discover -b -p "*test.py"
.................................................................................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 305 tests in 307.555s

OK

Résultats préliminaires

Comme d'autres travaux publiés, nous avons analysé les artefacts cryptographiques de Certificate Transparency (CT), qui consigne les certificats de sites web émis depuis 2013 dans le but de les rendre transparents et vérifiables. Sa base de données contient plus de 7 milliards de certificats en septembre 2022. Pour les vérifications Paranoid des clés publiques EC et des signatures ECDSA, nous n'avons jusqu'à présent trouvé aucun artefact faible dans CT. Pour les vérifications des clés publiques RSA avec des sévérités élevées ou critiques, nous avons les résultats suivants :

TestNameCVE potentiellement liéesSévéritéNombre d'artefacts faibles
CheckOpensslDenylistCVE-2008-0166SEVERITY_CRITICAL3989
CheckROCACVE-2017-15361SEVERITY_HIGH2875
CheckGCD-SEVERITY_CRITICAL1860
CheckFermatCVE-2022-26320SEVERITY_CRITICAL36
CheckContinuedFractions-SEVERITY_CRITICAL16
CheckBitPatterns-SEVERITY_CRITICAL6
CheckPermutedBitPatterns-SEVERITY_CRITICAL6
CheckKeypairDenylistCVE-2021-41117SEVERITY_CRITICAL4
CheckPollardpm1-SEVERITY_CRITICAL1

Certains de ces certificats étaient déjà expirés ou révoqués. Pour ceux qui étaient encore actifs (la plupart de ceux détectés par CheckGCD), nous les avons immédiatement signalés aux autorités de certification pour qu'ils soient révoqués.

À PROPOS

Cette bibliothèque est développée et maintenue par des membres de l'équipe de sécurité de Google, mais il ne s'agit pas d'un produit Google officiellement pris en charge. Si vous souhaitez contribuer, veuillez lire CONTRIBUTING et nous envoyer des demandes d'extraction (pull requests). Vous pouvez également signaler des bogues ou soumettre des demandes de fonctionnalités.

Si vous utilisez Paranoid dans vos recherches, vous pouvez le citer à l'aide du BibTeX suivant :

root@kitploit:~
@software{Barbosa_Bleichenbacher_Paranoid_Crypto_2022,
  author = {Barbosa, Pedro and Bleichenbacher, Daniel},
  license = {Apache-2.0},
  month = {8},
  title = {{Paranoid Crypto}},
  url = {https://github.com/google/paranoid_crypto},
  year = {2022}
}
Télécharger l’outil