Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
semgrep-rules — Une collection de mes règles Semgrep pour faciliter la recherche de vulnérabilités. | Kitploit
Outils/GitHubGitHub/0xdea/semgrep-rules
Analyse Statique de Code (SAST)Analyse des VulnérabilitésAnalyse de CodeAnalyse de BinairesApprentissage et ÉducationRessources Organisées
GitHub0xdea/semgrep-rules

semgrep-rules

Une collection de mes règles Semgrep pour faciliter la recherche de vulnérabilités.

Voir le dépôt
8668927il y a 6 joursVé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
Site web

semgrep-rules

validate

"La surface d'attaque est la vulnérabilité. Trouver un bug là-dedans n'est qu'un détail."

-- Mark Dowd

"Certains détails sont plus importants que d'autres."

-- Fedor G. Pikus

Une collection de mes règles Semgrep pour faciliter la recherche de vulnérabilités.

Program in C

Articles de blog

  • https://hnsecurity.it/blog/semgrep-ruleset-for-c-c-vulnerability-research
  • https://hnsecurity.it/blog/automating-binary-vulnerability-discovery-with-ghidra-and-semgrep
  • https://hnsecurity.it/blog/big-update-to-my-semgrep-c-cpp-ruleset
  • https://hnsecurity.it/blog/streamlining-vulnerability-research-with-the-idalib-rust-bindings-for-ida-9-2/
  • https://hnsecurity.it/blog/my-semgrep-c-cpp-ruleset-is-ready-for-prime-time-again/

Voir aussi

  • https://appsec.guide/docs/static-analysis/semgrep/
  • https://semgrep.dev/docs/writing-rules/overview
  • https://semgrep.dev/r

Instructions d'installation et d'utilisation

  1. Installez Semgrep.
  2. Pour utiliser ces règles via le registre Semgrep, exécutez la commande suivante depuis le dossier racine de votre dépôt de code source cible :
# analyse haute priorité (gains rapides)
semgrep --severity ERROR --config "p/0xdea"

# analyse haute et moyenne priorité (recommandé)
semgrep --severity ERROR --severity WARNING --config "p/0xdea"

# analyse complète (peut inclure des résultats marginaux et plus de faux positifs)
semgrep --config "p/0xdea"

Alternativement, vous pouvez cloner ce dépôt GitHub localement et exécuter :

# analyse complète
semgrep --config semgrep-rules/rules /chemin/vers/la/source

# analyse d'une règle spécifique
semgrep --config semgrep-rules/rules/c/command-injection.yaml /chemin/vers/la/source

[!TIP] Utilisez l'option --no-git-ignore pour analyser les fichiers indépendamment du suivi git ou des règles .gitignore.

Pour une expérience plus fluide, je recommande de sauvegarder la sortie de l'analyse Semgrep au format SARIF et d'utiliser SARIF Explorer dans VS code :

semgrep --sarif --sarif-output=/chemin/vers/la/source/SEMGREP.sarif --config semgrep-rules/rules /chemin/vers/la/source
code /chemin/vers/la/source # puis ouvrez le fichier SEMGREP.sarif dans VS code avec SARIF Explorer 

Voir aussi l'exemple de sortie SARIF inclus.

Compatibilité

Testé avec Semgrep CLI 1.169.0.

Règles

C/C++

Ensemble de règles C (et parfois C++) testé en conditions réelles.

débordements de tampon

  • insecure-api-gets. Utilisation de la fonction d'API non sécurisée gets.
  • insecure-api-strcpy-strcat. Utilisation des fonctions d'API potentiellement non sécurisées strcpy, stpcpy, strcat.
  • insecure-api-sprintf-vsprintf. Utilisation des fonctions d'API potentiellement non sécurisées sprintf et vsprintf.
  • insecure-api-scanf. Utilisation des fonctions d'API potentiellement non sécurisées de la famille scanf.
  • incorrect-use-of-strncat. Argument de taille incorrect passé à strncat.
  • use-of-source-size-in-copy. Argument de taille incorrect passé à strncpy, memcpy, snprintf, et variantes.
  • incorrect-use-of-sizeof. Utilisation accidentelle de l'opérateur sizeof sur un pointeur au lieu de sa cible.
  • unterminated-string-strncpy. Absence de terminaison explicite par NUL après strncpy et stpncpy.
  • off-by-one. Erreur potentielle de décalage d'un (off-by-one).
  • unsafe-ret-snprintf-vsnprintf. Utilisation potentiellement dangereuse de la valeur de retour de snprintf et vsnprintf.
  • unsafe-ret-strlcpy-strlcat. Utilisation potentiellement dangereuse de la valeur de retour de strlcpy et strlcat.
  • pointer-subtraction. Utilisation potentielle de la soustraction de pointeurs pour déterminer la taille.
  • write-into-stack-buffer. Écriture directe dans un tampon alloué sur la pile.

débordements d'entiers

  • integer-wraparound. Erreurs potentielles de dépassement d'entiers par enroulement (wraparound).
  • unsafe-strlen. Convertir la valeur de retour de strlen en short peut être dangereux.
  • integer-truncation. Erreurs potentielles de troncature d'entiers.
  • signed-unsigned-conversion. Erreurs potentielles de conversion signé/non signé.
  • incorrect-unsigned-comparison. Vérifier si une variable non signée est négative.

chaînes de format

  • format-string-bugs. Bogues potentiels de chaîne de format.

gestion de la mémoire

Télécharger l’outil