Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Strumenti/GitHubGitHub/dpnishant/raptor
Sicurezza AndroidScanner di VulnerabilitàSicurezza iOSAnalisi Statica del Codice (SAST)Analisi del CodiceSicurezza WebDevSecOpsSicurezza MobileRilevamento SegretiArchived
GitHubdpnishant/raptor

raptor

Scanner di vulnerabilità del codice sorgente basato sul web

Vedi RepositorySito web
3561288 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Raptor

Raptor è uno scanner di vulnerabilità sorgente basato sul web (web-service + UI) incentrato su GitHub; scansiona un repository semplicemente con l'URL del repo GitHub. Puoi configurare webhook per garantire scansioni automatiche ogni volta che fai un commit o unisci una pull request. La scansione avviene in modo asincrono e i risultati sono disponibili solo all'utente che ha avviato la scansione.

Alcune funzionalità di Raptor:

  • Architettura a plugin (plugin esterni plug-and-play e generazione di report unificati)
  • Il web-service può essere sfruttato per automazioni personalizzate (senza bisogno dell'UI)
  • Facile creazione/modifica/eliminazione di firme per nuove vulnerabilità e/o linguaggi di programmazione.

Questo strumento è un tentativo di aiutare la comunità e le startup a sottolineare l'importanza del secure-coding. Questo strumento potrebbe non eguagliare le funzionalità/qualità delle alternative commerciali, nulla è garantito e siete stati avvertiti. Questo strumento è pensato per essere utilizzato da revisori di sicurezza e/o sviluppatori con esperienza di secure-coding per individuare punti di ingresso delle vulnerabilità durante audit del codice o revisioni tra pari. Per favore NON fidatevi ciecamente dell'output dello strumento. È meglio utilizzarlo inserendo Raptor nella vostra pipeline CI/CD.

Versione

0.1 beta

Tecnologia

Plugin integrati:

Nota: La maggior parte dei seguenti strumenti/moduli/librerie sono stati modificati pesantemente per poter integrarsi bene nel framework.

  • ⚡ Mozilla ScanJS - per JavaScript (Client-Side, Node.JS ecc. e supporto in arrivo per Chrome Extensions & Firefox Plugins)
  • ⚡ Brakeman - per Ruby On Rails
  • ⚡ RIPS - per PHP
  • ⚡ Manitree - per insicurezze in AndroidManifest.xml

Rulepack disponibili:

  • ⚡ ActionScript - supporta Flash/Flex (ActionScript 2.0 & 3.0) source/sinks
  • ⚡ FindSecurityBugs (solo regole) - per Java (J2EE, JSP, Android, Scala, Groovy ecc.)
  • ⚡ gitrob - per esposizione di dati sensibili (file contenenti credenziali, configurazioni, backup, impostazioni private ecc.)

Installazione (Testato su un'istanza Ubuntu 14.04 x64 LAMP)

Video di installazione: 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

Utilizzo

Scanner

Video di installazione: YouTube Usage

root@kitploit:~
cd raptor-master
sudo sh start.sh #avvia il web-service backend

Ora punta il browser a Raptor Home (http://localhost/raptor/)

Login

Accedi con il nome utente registrato sul corrispondente server GitHub a cui sei connesso e qualsiasi password (ma ricorda il nome utente per visualizzare la cronologia delle scansioni)

Per esempio:

Se sei registrato come foobar su https://github.com, usa lo stesso nome utente quando scansiona repo su https://github.com. Se invece sei registrato come foobar_corp sul tuo GitHub personale/aziendale (ad esempio https://github.corp.company.com) usa lo stesso nome utente se intendi scansionare repo su https://github.corp.company.com

Tuttavia, al momento la password può essere qualsiasi cosa, poiché NON abbiamo implementato un database nella versione di sviluppo.

Editor delle regole

Puoi utilizzare l'editor di regole lato client integrato e leggero per aggiungere nuove regole personalizzate per le tue esigenze specifiche, o qualsiasi altro editor di testo semplice poiché i file rulepack sono semplici strutture JSON. Usa il browser per aprire le regole situate in 'backend/rules'. Quando hai finito, salva il file delle regole nuovo/modificato nella stessa directory, cioè 'backend/rules'. Ora devi solo fare una modifica minore, qui: Init Script. Aggiungi il nome del tuo nuovo file rulepack a questo array senza l'estensione '.rulepack' e riavvia il server backend. Il gioco è fatto! 👍

Puoi accedervi qui: Rules Editor (http://localhost/raptor/editrules.php)

Aggiungere regole

ignore_list.rulepack

Aggiungi un pattern di nome file o directory da escludere dalla scansione. Utile per ignorare file noti come jquery.min.js o l'intera directory /test/. Ad esempio, nel contenuto di esempio qui sotto, jquery significa jquery ed è case-sensitive, quindi fai attenzione. Nella sezione plugins, il name del plugin è il nome del file rulepack senza estensione ".rulepack" come disponibile nella directory rules/. Il campo issue è l'ID del problema menzionato in ogni regola dei file rulepack: Esempio #1, Esempio #2. Il valore del campo match_type può essere regex o start o end. Il campo value è la stringa esatta da abbinare nel caso in cui match_type sia start o end. Se match_type è regex, il value deve contenere il pattern RegEx grezzo che deve essere codificato in Base64 per evitare problemi di escape della sintassi JSON. regex è un'abbinamento basato su espressioni regolari, start abbina l'inizio del frammento e end abbina la fine del frammento.

Il funzionamento è: quando lo scanner ha finito di scansionare per i problemi, itererà attraverso tutti i problemi trovati e rimuoverà quelli che corrispondono ai pattern (basati sul tipo di corrispondenza) di ciascun plugin menzionato nel file ignore_list.rulepack.

(contenuto di esempio sotto)

root@kitploit:~
{
  "files": [
    "/.",
    "bootstrap",
    "jquery",
    "uglify",
    "knockout",
    "angular",
    "backbone",
    "ember",
    "yui",
    "mocha",
    "express",
    "yql",
    "dataTables"
  ],
  "directories": [
    "/node_modules/",
    "/test/"
  ],
  "plugins": [
    {
      "name": "common",                <----- Nome del Plugin
      "issue": "HARD_CRED1",           <----- ID del problema
      "patterns": [
        {
          "match_type": "start",       <----- Tipo di corrispondenza: "regex", "start" o "end"
          "value": "foreach"           <----- La stringa effettiva da abbinare. Codifica Base64 questo pattern se match_type è "regex"
        },
        {
          "match_type": "start",
          "value": "for"       
        },
        {
          "match_type": "start",
          "value": "elseif"
        }
      ]
    }
  ]
}

your_rule_name.rulepack

Puoi creare un nuovo rulepack e aggiungerlo allo scanner o scrivere il tuo plugin scanner e aggiungerlo al framework. Un file rulepack di esempio è una struttura JSON molto semplice.

root@kitploit:~
{
  "plugin_type": "plugin_name",   <-- Dagli un nome (qualsiasi stringa)
  "file_types": [
    ".java",                      <-- Aggiungi quante estensioni di file vuoi che lo scanner prenda in considerazione
    ".js"
  ],
  "rules": [
    {
      "id": "HARD_CRED1",        <-- Un IssueID unico, sii creativo.
      "severity": "High",        <-- Può essere High, Medium o Low. Questo influenzerà i grafici nell'UI.
      "title": "Titolo del problema",   <-- Il titolo del problema.
      "description": "Questo testo verrà mostrato nell'UI come descrizione del problema.",        <-- La descrizione del problema, opzionale.
      "remediation": "Questo testo verrà mostrato nell'UI come passaggi per risolvere il problema",  <-- La risoluzione del problema, opzionale.
      "link": "Qualsiasi URL che abbia più risorse sul problema.",  <-- URL del problema, opzionale.
      "example_insecure": "Inserisci la versione insicura del frammento di codice a scopo didattico.",   <-- Opzionale
      "example_secure": "Inserisci la versione sicura del frammento di codice a scopo didattico.",       <-- Opzionale
      "platform_version": "all",    <-- Lascia così
      "enabled": "true",            <-- Questo valore abilita o disabilita la regola durante la scansione. Può essere "true" o "false".
      "logic": "Spiega la logica dietro questa regola per futuri aggiornamenti o personalizzazioni",     <-- Opzionale
      "signature": "base64encode(regexp)"    <-- Scrivi l'espressione regolare del tuo pattern e poi codificala in base64 per metterla qui.
    }
  ]
}

Se vuoi più controllo o aggiungere più intelligenza al tuo scanner anziché una semplice ricerca RegExp, puoi scrivere un plugin scanner rapido come questo e integrare lo script qui e aggiungere il nome dello script qui. Questo è tutto. È abbastanza semplice per chiunque abbia competenze di base di scripting Python.

Istanza GitHub pubblica/privata

Puoi usare Raptor per scansionare le istanze pubbliche e private di GitHub della tua organizzazione specificando gli endpoint del server giusti qui e qui.

Screenshot

Login

Login

Scansione Github

Scansione Github

Scansione Zip

Scansione Zip

Scansione avviata

Scansione avviata

Scansione in corso

Scansione in corso

Statistiche del report

Statistiche del report

Dettagli del problema

Dettagli del problema

Esporta report

Esporta report

Cronologia scansioni

Cronologia scansioni

Editor delle regole

Editor delle regole

Errore del server

Errore del server

Sviluppo

Vuoi contribuire? Ottimo! Contattami se hai un'idea o sentiti libero di fare un fork e migliorare. 😊

Collaboratori

  • Anant Shrivastava (Commit)

Licenza

GNU GPL v2.0

Bug noti (e soluzioni alternative)

Installazione su Ubuntu Kylin

Software Libero, Sì!

Scarica lo strumento