Cos'è Fortify SCA e come installarlo?

Pubblicato: 2023-01-13

Fortify Static Code Analyzer (SCA) analizza il codice sorgente e individua la causa principale delle vulnerabilità di sicurezza.

Una scansione Fortify assegna la priorità ai problemi più gravi e indica come gli sviluppatori dovrebbero risolverli.

Rafforza l'analizzatore di codice statico

Fortify Static Code Analyzer dispone di vari analizzatori di vulnerabilità come Buffer, Content, Control Flow, Dataflow, Semantic, Configuration e Structural. Ciascuno di questi analizzatori accetta un diverso tipo di regola su misura per offrire le informazioni necessarie per il tipo di analisi eseguita.

Fortify-Static-Code-Analizzatore

Fortify Static Code Analyzer ha i seguenti componenti;

  • Rafforza la procedura guidata di scansione. È uno strumento che offre opzioni per eseguire script dopo o prima dell'analisi.
  • Banco di lavoro di audit. È un'app basata su GUI che organizza e gestisce i risultati analizzati.
  • Editor di regole personalizzate. È uno strumento che consente agli sviluppatori di creare e modificare regole personalizzate per l'analisi.
  • Plugin per IntelliJ e Android Studio. Questo plugin fornisce risultati di analisi all'interno dell'IDE.
  • Plugin per Eclipse. Questo strumento è integrato con Eclipse e visualizza i risultati all'interno dell'IDE.
  • Plug-in di bambù. È un plug-in che raccoglie i risultati del Bamboo Job che esegue un'analisi.
  • Plug-in Jenkins. Questo plugin raccoglie i risultati dell'analisi dal Jenkins Job.

Caratteristiche di Fortify SCA

Caratteristiche-di-Fortify-SCA-

#1. Supporta più lingue

Alcune delle lingue supportate su Fortify SCA sono; ABAP/BSP, ActionScript, ASP (con VBScript), COBOL, ColdFusion, Apex, ASP.NET, C# (.NET), C/C++, Classic, VB.NET, VBScript, CFML, Go, HTML, Java (incluso Android ), JavaScript/AJAX, JSP, Kotlin, Visual Basic, MXML (Flex), Objective C/C++, PHP, PL/SQL, Python, Ruby, Swift, T-SQL e XML.

#2. Opzioni di distribuzione flessibili

  • Fortify On-Prem consente a un'organizzazione il pieno controllo su tutti gli aspetti di Fortify SCA.
  • Fortify On Demand consente agli sviluppatori di lavorare in un ambiente Software As Service.
  • Fortify Hosted consente agli sviluppatori di godere di entrambi i due mondi (On Demand e On-Prem) attraverso un ambiente virtuale isolato con il pieno controllo dei dati.

#3. Si integra facilmente con gli strumenti CI/CD

  • Gli sviluppatori possono facilmente integrare Fortify SCA con i principali IDE come Visual Studio ed Eclipse.
  • Gli sviluppatori hanno il controllo su varie azioni poiché lo strumento si integra con strumenti open source come Sonatype, WhiteSource, Snyk e BlackDuck.
  • Puoi anche integrare Fortify SCA con repository di codice remoti come Bitbucket e GitHub. Lo strumento può quindi verificare la presenza di vulnerabilità nel codice inviato a tali piattaforme e inviare report.

#4. Avvisi in tempo reale

Non devi aspettare fino a quando non hai finito con la codifica per eseguire i tuoi test, poiché Fortify SCA fornisce aggiornamenti in tempo reale mentre codifichi. Lo strumento dispone di analizzatori strutturali e di configurazione progettati per la velocità e l'efficienza e ti aiuta a produrre applicazioni sicure.

#5. Audit Assistant basato sull'apprendimento automatico

L'audit di un sistema è rapido grazie all'Audit Assistant, che utilizza algoritmi di machine learning. L'assistente identifica tutte le vulnerabilità e assegna loro la priorità in base al livello di confidenza. Le organizzazioni possono quindi risparmiare sui costi di audit poiché lo strumento genera report.

#6. Flessibilità

Gli utenti possono selezionare il tipo di scansione che desiderano eseguire in base alle proprie esigenze. Ad esempio, se desideri scansioni accurate e dettagliate, puoi selezionare l'opzione di scansione completa. Gli sviluppatori possono anche selezionare l'opzione di scansione rapida se desiderano che vengano rilevate solo le minacce principali.

Cosa fa Fortify SCA?

Cosa-fa-Fortify-SCA

Fortify SCA ha diversi ruoli in un tipico ecosistema di sviluppo. I seguenti sono alcuni dei ruoli;

I test statici aiutano a creare codice migliore

Static Application Security Testing (SAST) aiuta a identificare le vulnerabilità della sicurezza nelle prime fasi di sviluppo. Fortunatamente, la maggior parte di queste vulnerabilità di sicurezza è poco costosa da risolvere.

Tale approccio riduce i rischi per la sicurezza nelle applicazioni poiché il test fornisce un feedback immediato sui problemi introdotti nel codice durante lo sviluppo.

Gli sviluppatori apprendono anche sulla sicurezza attraverso Static Application Security Testing e possono quindi iniziare a produrre software sicuro.

Fortify SCA utilizza un'ampia base di conoscenze di regole di codifica sicure e algoritmi multipli per analizzare il codice sorgente di un'applicazione software per le vulnerabilità della sicurezza. L'approccio analizza qualsiasi percorso fattibile che i dati e l'esecuzione possono seguire per identificare le vulnerabilità e offrire rimedi.

Rileva i problemi di sicurezza in anticipo

Fortify SCA imita un compilatore. Dopo una scansione Fortify, questo strumento legge i file del codice sorgente e li converte in una struttura intermedia migliorata per l'analisi della sicurezza.

Tutte le vulnerabilità di sicurezza sono facili da individuare nel formato intermedio. Lo strumento viene fornito con un motore di analisi composto da più analizzatori specializzati che utilizzeranno quindi regole di codifica sicure per analizzare se il codice viola le regole delle pratiche di codifica sicure.

Fortify SCA include anche un generatore di regole se desideri espandere le capacità di analisi statica e includere regole personalizzate. I risultati in tale impostazione possono essere visualizzati in diversi formati in base all'attività e al pubblico.

Fortify Software Security Center (SSC) aiuta a gestire i risultati

Fortify Software Security Center (SSC) è un repository di gestione centralizzata che offre visibilità all'intero programma di sicurezza delle applicazioni di un'organizzazione. Attraverso SSC, gli utenti possono controllare, rivedere, dare priorità e gestire gli sforzi di rimedio quando vengono identificate minacce alla sicurezza.

Fortify SSC offre un ambito e un quadro accurati della posizione di sicurezza delle applicazioni in un'organizzazione. SSC risiede in un server centrale ma riceve i risultati di diverse attività di test di sicurezza delle applicazioni che vanno dall'analisi in tempo reale, dinamica a quella statica.

Che tipo di analisi del codice può eseguire Fortify SCA?

Che tipo di analisi del codice può fare Fortify SCA

Una scansione fortificata prende in prestito dall'architettura dei regni perniciosi durante l'analisi del codice. Questi sono i tipi di analisi che fa Fortify SCA;

  • Convalida e rappresentazione dell'input : i problemi associati alla convalida e alla rappresentazione dell'input derivano da codifiche alternative, rappresentazioni numeriche e metacaratteri. Esempi di tali problemi sono gli attacchi "Buffer Overflow", "Cross-Site Scripting" e "SQL Injection", che si verificano quando gli utenti si fidano degli input.
  • Abuso dell'API. Il chiamante che non rispetta la fine del contratto è il tipo più comune di abuso dell'API.
  • Caratteristiche di sicurezza. Questo test distingue tra sicurezza del software e software di sicurezza. L'analisi si concentrerà su problemi di autenticazione, gestione dei privilegi, controllo degli accessi, riservatezza e crittografia.
  • Tempo e Stato. I computer possono passare da un'attività all'altra molto velocemente. L'analisi del tempo e dello stato ricerca i difetti derivanti da interazioni impreviste tra thread, informazioni, processi e tempo.
  • Errori. Fortify SCA verificherà se gli errori forniscono troppe informazioni ai potenziali aggressori.
  • Qualità del codice. La scarsa qualità del codice di solito porta a comportamenti imprevedibili. Tuttavia, gli aggressori possono avere la possibilità di manipolare un'applicazione a proprio vantaggio se si imbattono in codice scritto male.
  • Incapsulamento. Questo è il processo per tracciare confini forti. Tale analisi può significare differenziare tra dati convalidati e non convalidati.

Scarica e installa Fortify SCA

Prima di iniziare il processo di installazione, è necessario;

  • Controlla i requisiti di sistema dalla documentazione ufficiale
  • Ottieni il file di licenza Fortify. Seleziona il tuo pacchetto dalla pagina dei download di Microfocus. Cerca Fortify Static Code Analyzer, crea il tuo account e ottieni un file di licenza Fortify.
Scarica
  • Assicurati di aver installato Visual Studio Code o un altro editor di codice supportato

Come installare su Windows

  • Esegui il file di installazione
 Fortify_SCA_and_Apps_<version>_windows_x64.exe

NB: <versione> è la versione della release del software

  • Fare clic su Avanti dopo aver accettato il contratto di licenza.
  • Scegliere dove installare Fortify Static Code Analyzer e fare clic su Avanti.
  • Selezionare i componenti che si desidera installare e fare clic su Avanti.
  • Specifica gli utenti se stai installando un'estensione per Visual Studio 2015 o 2017.
  • Fare clic su Avanti dopo aver specificato il percorso per il file fortify.license .
  • Specificare le impostazioni necessarie per aggiornare il contenuto di sicurezza. È possibile utilizzare il server di aggiornamento di Fortify Rulepack specificando l'URL come https://update.fortify.com. Fare clic su Avanti .
  • Specificare se si desidera installare un codice sorgente di esempio. Fare clic su Avanti .
  • Fare clic su Avanti per installare Fortify SCA e le applicazioni.
  • Fare clic su Aggiorna contenuto di sicurezza dopo l'installazione e quindi su Fine al termine dell'installazione.

Come installare su Linux

Puoi seguire gli stessi passaggi per installare Fortify SCA su un sistema basato su Linux. Tuttavia, nel primo passaggio, eseguilo come file di installazione;

 Fortify_SCA_and_Apps__linux_x64.run

In alternativa, puoi installare Fortify SCA utilizzando il prompt della riga di comando.

Apri il tuo terminale ed esegui questo comando

 ./Fortify_SCA_and_Apps__linux_x64.run --mode text

Segui tutte le istruzioni come indicato sulla riga di comando fino al termine del processo di installazione.

Come eseguire una scansione Fortify

Come eseguire una scansione Fortify

Una volta terminata l'installazione, è il momento di impostare lo strumento per l'analisi della sicurezza.

  • Vai alla directory di installazione e vai alla cartella bin utilizzando il prompt dei comandi.
  • Digitare scapostinstall. È quindi possibile digitare s per visualizzare le impostazioni.
  • Imposta la locale usando questi comandi;

Digitare 2 per selezionare Impostazioni.

Digitare 1 per selezionare Generale.

Digitare 1 per selezionare Locale

Per la lingua, digitare English: en per impostare la lingua come inglese.

  • Configura gli aggiornamenti del contenuto di sicurezza. Digita 2 per selezionare Impostazioni, quindi digita nuovamente 2 per selezionare Fortifica aggiornamento. È ora possibile utilizzare il server di aggiornamento di Fortify Rulepack specificando l'URL come https://update.fortify.com.
  • Digita sourceanalyzer per verificare se lo strumento è completamente installato.

Fortify SCA verrà ora eseguito in background e controllerà tutto il tuo codice per le vulnerabilità di sicurezza.

Avvolgendo

I casi di sistemi violati e dati compromessi sono diventati dilaganti in questa era di Internet. Fortunatamente, ora disponiamo di strumenti come Fortify Static Code Analyzer in grado di rilevare le minacce alla sicurezza durante la scrittura del codice, inviare avvisi e fornire consigli sulla gestione di tali minacce. Fortify SCA può aumentare la produttività e ridurre i costi operativi se utilizzato con altri strumenti.

Puoi anche esplorare Software Composition Analysis (SCA) per migliorare la sicurezza della tua applicazione.