
RIPS - Un analizzatore statico del codice sorgente per vulnerabilità negli script PHP
Un analizzatore statico del codice sorgente per vulnerabilità negli script PHP
Segui le istruzioni sulla pagina principale.
Vedi il modulo html di scansione php-rips originale (index.php) per ulteriori opzioni.
php index.php [option=value]
| Opzioni | Valore |
|---|
| loc | file/cartella di destinazione della scansione |
| subdir | ricorsione nelle sottocartelle [0|1] |
| ignore_warning | [0|1] |
| vector | vettori di scansione [all|...] |
| verbosity | livello di dettaglio del log [0-9] |
| treestyle | stile di output html [0|1] |
| stylesheet | foglio di stile di output html [ayti|...] |
Esempio: scansiona ricorsivamente ./code per tutte le classi di vulnerabilità
php index.php loc=./code subdirs=1 vector=all verbosity=2
Nota: in modalità cli argv viene analizzato in $_POST consentendo quindi di impostare qualsiasi variabile POST.
installa il plugin html publisher
configura (più) scm per clonare sia questo repository che il codice sorgente che vuoi scansionare in cartelle distinte
aggiungi un passaggio di build: esegui shell
# config - remove this if you configure it via jenkins parameterized builds
PATH_RIPS=rips-scanner
PATH_REPORT=report
FILE_REPORT=report.html
PATH_TARGET=code
RIPS_RECURSE_SUBDIR=1
RIPS_VECTOR=all
RIPS_VERBOSITY=2
# copy dependencies
mkdir -p report
cp -r rips-scanner/css report
cp -r rips-scanner/js report
# run analysis
echo "========================================================="
echo "[**] running scan ... $PATH_TARGET"
echo "========================================================="
php $PATH_RIPS/index.php ignore_warning=1 loc=$PATH_TARGET subdirs=$RIPS_RECURSE_SUBDIR vector=$RIPS_VECTOR verbosity=$RIPS_VERBOSITY treestyle=1 stylesheet=ayti > $PATH_REPORT/$FILE_REPORT
echo "========================================================="
echo "[**] scan done ... check out $PATH_REPORT/$FILE_REPORT"
echo "========================================================="
aggiungi un passaggio di build: esegui python
import os, sys
import rips_stats as rips
if __name__=="__main__":
report = os.path.join(os.environ.get("PATH_REPORT","report"),os.environ.get("FILE_REPORT","report.html"))
sys.exit(rips.main([report]))
aggiungi un passaggio post-build: pubblica html, seleziona la cartella 'report' con nome 'vulnerability-report'. Apparirà una nuova icona di azione cliccabile 'vulnerability-report' che punta al risultato della scansione archiviato.
Il ramo community di RIPS deriva da un fork della versione 0.55 e non è supportato ufficialmente da RIPS Technologies.
Una soluzione completamente ricostruita è disponibile presso RIPS Technologies: supera le limitazioni fondamentali della versione open source ed esegue analisi di sicurezza all'avanguardia.
| Caratteristica a confronto | RIPS 0.5 | Next Generation |
|---|---|---|
| Linguaggio PHP supportato | PHP 3-4, no OOP | tutte, PHP 3-7 |
| Analisi statica del codice | Solo basata su token | Completa |
| Precisione dell'analisi | Bassa | Molto alta |
| Analisi specifica per versione PHP | No | Sì |
| Scalabile su grandi dimensioni di codice | No | Sì |
| Supporto API / CLI | No | Sì |
| Integrazione continua | No | Sì |
| Conformità / Standard | No | Sì |
| Salvataggio dei risultati dell'analisi | No | Sì |
| Esportazione dei risultati dell'analisi | No | Sì |
| Sistema di revisione dei problemi | No | Sì |
| Risultati in tempo reale | No | Sì |
| Tendenze delle vulnerabilità | No | Sì |
| Rileva i rischi più recenti | No | Sì |
| Rileva vulnerabilità complesse | Limitata | Sì |
| Tipi di problemi supportati | 15 | >140 |
| Velocità | Veloce | Veloce |
Scopri di più sulla prossima generazione di RIPS su https://www.ripstech.com/product/datasheets/.