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
raptor — Scanner de vulnérabilités de code source basé sur le Web | Kitploit
Outils/GitHubGitHub/dpnishant/raptor
Sécurité AndroidScanners de VulnérabilitésSécurité iOSAnalyse Statique de Code (SAST)Analyse de CodeSécurité WebDevSecOpsSécurité MobileDétection de SecretsArchived
GitHubdpnishant/raptor

raptor

Scanner de vulnérabilités de code source basé sur le Web

356128il y a 8 ansVé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
Voir le dépôtSite web

Raptor

Raptor est un scanner de vulnérabilités de code source orienté GitHub, basé sur le web (service web + interface utilisateur). Il analyse un dépôt à partir de l'URL GitHub. Vous pouvez configurer des webhooks pour lancer des analyses automatiques à chaque commit ou fusion de pull request. L'analyse est asynchrone et les résultats ne sont visibles que par l'utilisateur qui a lancé l'analyse.

Quelques fonctionnalités de Raptor :

  • Architecture de plugins (brancher des outils externes et générer des rapports unifiés)
  • Le service web peut être utilisé pour l'automatisation personnalisée (sans avoir besoin de l'interface utilisateur)
  • Création/édition/suppression faciles de signatures pour de nouvelles vulnérabilités et/ou langages de programmation.

Cet outil est une tentative d'aider la communauté et les start-ups à accorder de l'importance au codage sécurisé. Cet outil peut ou non égaler les fonctionnalités/qualité des alternatives commerciales, rien n'est garanti et vous êtes prévenu. Cet outil est destiné aux relecteurs de code de sécurité et/ou aux développeurs ayant une expérience en codage sécurisé pour trouver les points d'entrée de vulnérabilités lors d'audits de code ou de relectures par les pairs. Veuillez NE PAS vous fier aveuglément aux résultats de l'outil. Il est préférable d'utiliser Raptor en l'intégrant à votre pipeline CI/CD.

Version

0.1 bêta

Tech

Plugins intégrés :

Remarque : La plupart des outils/modules/bibliothèques suivants ont été fortement modifiés pour s'intégrer correctement au framework.

  • ⚡ Mozilla ScanJS – pour JavaScript (côté client, Node.JS, etc., et bientôt support des extensions Chrome et plugins Firefox)
  • ⚡ Brakeman – pour Ruby On Rails
  • ⚡ RIPS – pour PHP
  • ⚡ Manitree – pour les failles AndroidManifest.xml

Packs de règles disponibles :

  • ⚡ ActionScript – prend en charge les sources/puits Flash/Flex (ActionScript 2.0 & 3.0)
  • ⚡ FindSecurityBugs (règles uniquement) – pour Java (J2EE, JSP, Android, Scala, Groovy, etc.)
  • ⚡ gitrob – pour l'exposition de données sensibles (fichiers contenant des identifiants, configurations, sauvegardes, paramètres privés, etc.)

Installation (testé sur une instance Ubuntu 14.04 x64 LAMP)

Vidéo d'installation : YouTube Install

root@kitploit:~
$ wget https://github.com/dpnishant/raptor/archive/master.zip -O raptor.zip
root@kitploit:~
$ unzip raptor.zip
$ cd raptor-master
$ sudo sh install.sh

Utilisation

Scanner

Vidéo d'utilisation : YouTube Usage

root@kitploit:~
cd raptor-master
sudo sh start.sh #démarre le service web en arrière-plan

Pointez maintenant votre navigateur vers Raptor Home (http://localhost/raptor/)

Connexion

Connectez-vous avec le nom d'utilisateur enregistré sur le serveur GitHub correspondant auquel vous êtes connecté et n'importe quel mot de passe (mais retenez le nom d'utilisateur pour consulter l'historique des analyses).

Par exemple :

Si vous êtes enregistré en tant que foobar sur https://github.com, utilisez le même nom d'utilisateur pour analyser des dépôts sur https://github.com. Cependant, si vous êtes enregistré en tant que foobar_corp sur votre GitHub personnel/d'entreprise (par exemple https://github.corp.company.com), utilisez ce même nom d'utilisateur si vous souhaitez analyser des dépôts sur https://github.corp.company.com.

Cependant, pour l'instant, le mot de passe peut être n'importe quoi, car nous n'avons PAS implémenté de base de données dans la version de développement.

Éditeur de règles

Vous pouvez utiliser l'éditeur de règles léger côté client fourni pour ajouter de nouvelles règles personnalisées selon vos besoins spécifiques, ou tout autre éditeur de texte brut, car les fichiers de packs de règles sont de simples structures JSON. Utilisez votre navigateur pour ouvrir les règles situées dans 'backend/rules'. Une fois terminé, enregistrez votre fichier de règles nouveau/modifié dans le même répertoire, c'est-à-dire 'backend/rules'. Il ne vous reste plus qu'à modifier un petit détail ici : Script d'initialisation. Ajoutez le nom de votre nouveau fichier de pack de règles à ce tableau sans l'extension '.rulepack' et redémarrez le serveur d'arrière-plan. Vous voilà prêt ! 👍

Vous pouvez y accéder ici : Éditeur de règles (http://localhost/raptor/editrules.php)

Ajout de règles

ignore_list.rulepack

Ajoutez un motif de nom de fichier ou de répertoire à exclure de l'analyse. Cela permet d'ignorer des fichiers connus comme jquery.min.js ou par exemple tout le répertoire /test/. Par exemple, dans l'exemple ci-dessous, jquery signifie jquery et est sensible à la casse, soyez donc prudent. Dans la section plugins, le name du plugin est le nom du fichier de pack de règles sans l'extension ".rulepack" tel qu'il se trouve dans le répertoire rules/. Le champ issue est l'ID de l'issue mentionné dans chaque règle des fichiers de pack de règles : Exemple #1, Exemple #2. La valeur du champ match_type peut être regex, start ou end. Le champ value est la chaîne exacte à faire correspondre si match_type est ou . Si est , la doit contenir le motif RegEx brut qui doit être encodé en Base64 pour éviter tout problème d'échappement de syntaxe JSON. est une correspondance basée sur les expressions régulières, correspondra au début de l'extrait et à la fin de l'extrait.

Le fonctionnement est le suivant : une fois que le scanner a fini de rechercher les issues, il parcourt toutes les issues trouvées et supprime celles qui correspondent aux motifs (selon le type de correspondance) de chaque plugin mentionné dans le fichier ignore_list.rulepack.

(contenu d'exemple ci-dessous)

root@kitploit:~
{
  "files": [
    "/.",
    "bootstrap",
    "jquery",
    "uglify",
    "knockout",
    "angular",
    "backbone",
    "ember",
    "yui",
    "mocha",
    "express",
    "yql",
    "dataTables"
  ],
  "directories": [
    "/node_modules/",
    "/test/"
  ],
  "plugins": [
    {
      "name": "common",                <----- Nom du plugin
      "issue": "HARD_CRED1",           <----- ID de l'issue
      "patterns": [
        {
          "match_type": "start",       <----- Le type de correspondance peut être "regex", "start" ou "end"
          "value": "foreach"           <----- La chaîne réelle à faire correspondre. Encodez ce motif en Base64 si match_type est "regex"
        },
        {
          "match_type": "start",
          "value": "for"       
        },
        {
          "match_type": "start",
          "value": "elseif"
        }
      ]
    }
  ]
}

votre_nom_de_regle.rulepack

Vous pouvez soit créer un tout nouveau pack de règles et l'ajouter au scanner, soit écrire votre propre plugin de scanner et l'ajouter au framework. Un fichier de pack de règles d'exemple est une structure JSON très simple.

root@kitploit:~
{
  "plugin_type": "nom_plugin",   <-- Donnez-lui un nom (n'importe quelle chaîne)
  "file_types": [
    ".java",                      <-- Ajoutez autant d'extensions de fichiers que vous souhaitez que le scanner prenne en compte
    ".js"
  ],
  "rules": [
    {
      "id": "HARD_CRED1",        <-- Un IssueID unique, soyez créatif.
      "severity": "High",        <-- Peut être High, Medium ou Low. Cela sera reflété dans les graphiques de l'interface utilisateur.
      "title": "Titre de l'issue",   <-- Le titre de l'issue.
      "description": "Ce texte apparaîtra dans l'interface utilisateur comme description de l'issue.",        <-- La description de l'issue, optionnelle.
      "remediation": "Ce texte apparaîtra dans l'interface utilisateur comme les étapes pour corriger l'issue",  <-- La correction de l'issue, optionnelle.
      "link": "Toute URL contenant plus de ressources sur l'issue.",  <-- URL de l'issue, optionnelle
      "example_insecure": "Mettez la version non sécurisée de l'extrait de code à des fins pédagogiques.",   <-- Optionnel
      "example_secure": "Mettez la version sécurisée de l'extrait de code à des fins pédagogiques.",       <-- Optionnel
      "platform_version": "all",    <-- Laissez comme cela
      "enabled": "true",            <-- Cette valeur active ou désactive la règle lors de l'analyse. Peut être "true" ou "false".
      "logic": "Expliquez la logique derrière cette règle pour une mise à jour ou personnalisation future",     <-- Optionnel
      "signature": "base64encode(regexp)"    <-- Écrivez l'expression régulière de votre motif, puis encodez-la en base64 pour la mettre ici.
    }
  ]
}

Si vous souhaitez plus de contrôle ou ajouter plus d'intelligence à votre scanner plutôt qu'une simple recherche RegExp, vous pouvez écrire un plugin de scanner rapide comme celui-ci et intégrer le script ici et ajouter le nom du script ici. C'est tout. C'est assez simple pour toute personne ayant des compétences de base en script Python.

Instance GitHub publique/privée

Vous pouvez utiliser Raptor pour analyser les instances privées et publiques de GitHub de votre organisation en spécifiant les bons points de terminaison du serveur ici et ici.

Captures d'écran

Connexion

Connexion

Analyse GitHub

Analyse GitHub

Analyse Zip

Analyse Zip

Analyse démarrée

Analyse démarrée

Analyse en cours

Analyse en cours

Statistiques du rapport

Statistiques du rapport

Détails de l'issue

Connexion

Exporter le rapport

Exporter le rapport

Historique des analyses

Historique des analyses

Éditeur de règles

Éditeur de règles

Erreur serveur

Erreur serveur

Développement

Envie de contribuer ? Génial ! Contactez-moi si vous avez une idée ou n'hésitez pas à forker et améliorer. 😊

Contributeurs

  • Anant Shrivastava (Commits)

Licence

GNU GPL v2.0

Bugs connus (& Solutions de contournement)

Installation Ubuntu Kylin

Logiciel libre, et ouais !

Télécharger l’outil
start
end
match_type
regex
value
regex
start
end