Was ist Fortify SCA und wie wird es installiert?
Veröffentlicht: 2023-01-13Fortify Static Code Analyzer (SCA) analysiert den Quellcode und lokalisiert die Grundursache von Sicherheitslücken.
Ein Fortify-Scan priorisiert die schwerwiegendsten Probleme und zeigt Entwicklern, wie sie diese beheben sollten.
Stärken Sie den statischen Code-Analysator
Fortify Static Code Analyzer verfügt über verschiedene Schwachstellenanalysatoren wie Puffer, Inhalt, Kontrollfluss, Datenfluss, Semantik, Konfiguration und Struktur. Jeder dieser Analysatoren akzeptiert eine andere Art von Regel, die darauf zugeschnitten ist, Informationen bereitzustellen, die für die Art der durchgeführten Analyse erforderlich sind.
Fortify Static Code Analyzer hat die folgenden Komponenten;
- Scan-Assistent verstärken. Es ist ein Tool, das Optionen zum Ausführen von Skripten nach oder vor der Analyse bietet.
- Audit-Werkbank. Es ist eine GUI-basierte App, die die analysierten Ergebnisse organisiert und verwaltet.
- Editor für benutzerdefinierte Regeln. Es ist ein Tool, mit dem Entwickler benutzerdefinierte Regeln für die Analyse erstellen und bearbeiten können.
- Plugin für IntelliJ und Android Studio. Dieses Plugin stellt Analyseergebnisse innerhalb der IDE bereit.
- Plugin für Eclipse. Dieses Tool ist in Eclipse integriert und zeigt Ergebnisse in der IDE an.
- Bamboo-Plugin. Es ist ein Plugin, das die Ergebnisse des Bamboo Jobs sammelt, der eine Analyse durchführt.
- Jenkins-Plugin. Dieses Plugin sammelt Analyseergebnisse aus dem Jenkins-Job.
Merkmale von Fortify SCA
#1. Unterstützt mehrere Sprachen
Einige der von Fortify SCA unterstützten Sprachen sind: ABAP/BSP, ActionScript, ASP (mit VBScript), COBOL, ColdFusion, Apex, ASP.NET, C# (.NET), C/C++, Classic, VB.NET, VBScript, CFML, Go, HTML, Java (einschließlich Android ), JavaScript/AJAX, JSP, Kotlin, Visual Basic, MXML (Flex), Objective C/C++, PHP, PL/SQL, Python, Ruby, Swift, T-SQL und XML.
#2. Flexible Bereitstellungsoptionen
- Fortify On-Prem ermöglicht einer Organisation die vollständige Kontrolle über alle Aspekte von Fortify SCA.
- Fortify On Demand ermöglicht es Entwicklern, in einer Software-as-Service-Umgebung zu arbeiten.
- Fortify Hosted ermöglicht es Entwicklern, beide Welten (On Demand und On-Prem) über eine isolierte virtuelle Umgebung mit vollständiger Datenkontrolle zu genießen.
#3. Einfache Integration mit CI/CD-Tools
- Entwickler können Fortify SCA problemlos in wichtige IDEs wie Visual Studio und Eclipse integrieren.
- Entwickler haben die Kontrolle über verschiedene Aktionen, da das Tool in Open-Source-Tools wie Sonatype, WhiteSource, Snyk und BlackDuck integriert ist.
- Sie können Fortify SCA auch in Remote-Code-Repositories wie Bitbucket und GitHub integrieren. Das Tool kann so Code, der auf solche Plattformen gepusht wird, auf Schwachstellen überprüfen und Berichte senden.
#4. Echtzeit-Warnungen
Sie müssen nicht warten, bis Sie mit dem Codieren fertig sind, um Ihre Tests durchzuführen, da Fortify SCA während des Codierens Echtzeit-Updates bereitstellt. Das Tool verfügt über Konfigurations- und Strukturanalysatoren, die auf Geschwindigkeit und Effizienz ausgelegt sind, und unterstützt Sie bei der Erstellung sicherer Anwendungen.
#5. Audit-Assistent mit maschinellem Lernen
Die Prüfung eines Systems erfolgt schnell mit dem Prüfungsassistenten, der maschinelle Lernalgorithmen verwendet. Der Assistent identifiziert alle Schwachstellen und priorisiert sie basierend auf dem Konfidenzniveau. Organisationen können somit Auditkosten einsparen, da das Tool Berichte generiert.
#6. Flexibilität
Benutzer können die Art des Scans auswählen, den sie basierend auf ihren Anforderungen durchführen möchten. Wenn Sie beispielsweise genaue und detaillierte Scans wünschen, können Sie die umfassende Scan-Option auswählen. Entwickler können auch die Schnellscan-Option auswählen, wenn sie möchten, dass nur größere Bedrohungen erkannt werden.
Was bewirkt Fortify SCA?
Fortify SCA hat mehrere Rollen in einem typischen Entwicklungsökosystem. Das Folgende sind einige der Rollen;
Statisches Testen hilft, besseren Code zu erstellen
Static Application Security Testing (SAST) hilft, Sicherheitslücken in den frühen Entwicklungsphasen zu identifizieren. Glücklicherweise sind die meisten dieser Sicherheitslücken kostengünstig zu beheben.
Ein solcher Ansatz reduziert Sicherheitsrisiken in Anwendungen, da das Testen ein sofortiges Feedback zu den Problemen liefert, die während der Entwicklung in den Code eingeführt wurden.
Entwickler lernen durch Static Application Security Testing auch etwas über Sicherheit und können so mit der Produktion sicherer Software beginnen.
Fortify SCA verwendet eine umfangreiche Wissensbasis mit sicheren Codierungsregeln und mehreren Algorithmen, um den Quellcode einer Softwareanwendung auf Sicherheitslücken zu analysieren. Der Ansatz analysiert jeden möglichen Pfad, dem Daten und Ausführung folgen können, um Schwachstellen zu identifizieren und Abhilfemaßnahmen anzubieten.
Erkennt Sicherheitsprobleme frühzeitig
Fortify SCA ahmt einen Compiler nach. Nach einem Fortify-Scan liest dieses Tool die Quellcodedateien und wandelt sie in eine für die Sicherheitsanalyse erweiterte Zwischenstruktur um.
Alle Sicherheitslücken sind im Zwischenformat leicht zu lokalisieren. Das Tool wird mit einer Analyse-Engine geliefert, die aus mehreren spezialisierten Analysatoren besteht, die dann sichere Codierungsregeln verwenden, um zu analysieren, ob der Code gegen Regeln für sichere Codierungspraktiken verstößt.
Fortify SCA wird auch mit einem Rules Builder geliefert, wenn Sie die statischen Analysefunktionen erweitern und benutzerdefinierte Regeln hinzufügen möchten. Die Ergebnisse in einer solchen Umgebung können je nach Aufgabe und Zielgruppe in verschiedenen Formaten angezeigt werden.
Fortify Software Security Center (SSC) hilft bei der Ergebnisverwaltung
Fortify Software Security Center (SSC) ist ein zentralisiertes Management-Repository, das Einblick in das gesamte Anwendungssicherheitsprogramm eines Unternehmens bietet. Über SSC können Benutzer Abhilfemaßnahmen prüfen, überprüfen, priorisieren und verwalten, wenn Sicherheitsbedrohungen identifiziert werden.
Fortify SSC bietet einen genauen Umfang und ein genaues Bild des Anwendungssicherheitsstatus in einer Organisation. SSC befindet sich auf einem zentralen Server, empfängt jedoch Ergebnisse aus verschiedenen Anwendungssicherheitstestaktivitäten, die von Echtzeit-, dynamischen bis hin zu statischen Analysen reichen.
Welche Art von Codeanalyse kann Fortify SCA durchführen?
Ein Fortify-Scan lehnt sich bei der Codeanalyse an die Architektur der bösartigen Königreiche an. Dies sind die Arten von Analysen, die Fortify SCA durchführt;
- Eingabevalidierung und -darstellung – Probleme im Zusammenhang mit der Eingabevalidierung und -darstellung entstehen durch alternative Kodierungen, numerische Darstellungen und Metazeichen. Beispiele für solche Probleme sind „Buffer Overflows“, „Cross-Site Scripting“-Angriffe und „SQL Injection“, die auftreten, wenn Benutzer Eingaben vertrauen.
- API-Missbrauch. Der Anrufer, der das Vertragsende nicht einhält, ist die häufigste Form des API-Missbrauchs.
- Sicherheitsfunktionen. Dieser Test unterscheidet zwischen Softwaresicherheit und Sicherheitssoftware. Die Analyse konzentriert sich auf Fragen der Authentifizierung, Berechtigungsverwaltung, Zugriffskontrolle, Vertraulichkeit und Kryptografie.
- Zeit und Zustand. Computer können sehr schnell zwischen verschiedenen Aufgaben wechseln. Die Zeit- und Zustandsanalyse sucht nach Fehlern, die sich aus unerwarteten Interaktionen zwischen Threads, Informationen, Prozessen und Zeit ergeben.
- Fehler. Fortify SCA prüft, ob Fehler potenziellen Angreifern zu viele Informationen liefern.
- Codequalität. Schlechte Codequalität führt normalerweise zu unvorhersehbarem Verhalten. Angreifer können jedoch eine Anwendung zu ihrem Vorteil manipulieren, wenn sie auf schlecht geschriebenen Code stoßen.
- Verkapselung. Dies ist der Prozess, starke Grenzen zu ziehen. Eine solche Analyse kann bedeuten, zwischen validierten und nicht validierten Daten zu unterscheiden.
Laden Sie Fortify SCA herunter und installieren Sie es
Bevor Sie mit der Installation beginnen, müssen Sie:
- Überprüfen Sie die Systemanforderungen anhand der offiziellen Dokumentation
- Fordern Sie die Fortify-Lizenzdatei an. Wählen Sie Ihr Paket auf der Microfocus-Downloadseite aus. Suchen Sie nach Fortify Static Code Analyzer, erstellen Sie Ihr Konto und erhalten Sie eine Fortify-Lizenzdatei.
- Stellen Sie sicher, dass Sie Visual Studio Code oder einen anderen unterstützten Code-Editor installiert haben
So installieren Sie unter Windows
- Führen Sie die Installationsdatei aus
Fortify_SCA_and_Apps_<version>_windows_x64.exe
Hinweis: <Version> ist die Software-Release-Version
- Klicken Sie nach dem Akzeptieren der Lizenzvereinbarung auf Weiter .
- Wählen Sie aus, wo der Fortify Static Code Analyzer installiert werden soll, und klicken Sie auf Weiter.
- Wählen Sie die Komponenten aus, die Sie installieren möchten, und klicken Sie auf Weiter.
- Geben Sie Benutzer an, wenn Sie eine Erweiterung für Visual Studio 2015 oder 2017 installieren.
- Klicken Sie auf Weiter , nachdem Sie den Pfad für die Datei
fortify.license
. - Geben Sie die Einstellungen an, die zum Aktualisieren von Sicherheitsinhalten erforderlich sind. Sie können den Fortify Rulepack-Aktualisierungsserver verwenden, indem Sie die URL als https://update.fortify.com angeben. Klicken Sie auf Weiter .
- Geben Sie an, ob Sie einen Beispielquellcode installieren möchten. Klicken Sie auf Weiter .
- Klicken Sie auf Weiter, um Fortify SCA und Anwendungen zu installieren.
- Klicken Sie nach der Installation auf Sicherheitsinhalt aktualisieren und dann auf Fertig stellen , nachdem die Installation abgeschlossen ist.
So installieren Sie unter Linux
Sie können die gleichen Schritte ausführen, um Fortify SCA auf einem Linux-basierten System zu installieren. Führen Sie dies jedoch im ersten Schritt als Installationsdatei aus.
Fortify_SCA_and_Apps__linux_x64.run
Sie können Fortify SCA alternativ über die Eingabeaufforderung der Befehlszeile installieren.
Öffnen Sie Ihr Terminal und führen Sie diesen Befehl aus
./Fortify_SCA_and_Apps__linux_x64.run --mode text
Befolgen Sie alle Anweisungen in der Befehlszeile, bis Sie den Installationsvorgang abgeschlossen haben.
So führen Sie einen Fortify-Scan durch
Sobald Sie mit der Installation fertig sind, ist es an der Zeit, das Tool für die Sicherheitsanalyse einzurichten.
- Gehen Sie zum Installationsverzeichnis und navigieren Sie mit der Eingabeaufforderung zum bin-Ordner.
-
scapostinstall.
Sie können dann s eingeben, um die Einstellungen anzuzeigen. - Richten Sie das Gebietsschema mit diesen Befehlen ein;
Geben Sie 2 ein, um Einstellungen auszuwählen.
Geben Sie 1 ein, um Allgemein auszuwählen.
Geben Sie 1 ein, um Gebietsschema auszuwählen
Geben Sie als Sprache English: en ein, um die Sprache auf Englisch festzulegen.
- Konfigurieren Sie Updates für Sicherheitsinhalte. Geben Sie 2 ein, um Einstellungen auszuwählen, und geben Sie dann erneut 2 ein, um Fortify Update auszuwählen. Sie können jetzt den Fortify Rulepack-Aktualisierungsserver verwenden, indem Sie die URL als https://update.fortify.com angeben.
- Geben Sie
sourceanalyzer
ein, um zu prüfen, ob das Tool vollständig installiert ist.
Fortify SCA läuft nun im Hintergrund und überprüft Ihren gesamten Code auf Sicherheitslücken.
Einpacken
Fälle, in denen Systeme gehackt und Daten kompromittiert wurden, sind in diesem Internetzeitalter weit verbreitet. Glücklicherweise haben wir jetzt Tools wie Fortify Static Code Analyzer, die Sicherheitsbedrohungen erkennen können, während Code geschrieben wird, Warnmeldungen senden und Empfehlungen zum Umgang mit solchen Bedrohungen geben. Fortify SCA kann die Produktivität steigern und die Betriebskosten senken, wenn es mit anderen Tools verwendet wird.
Sie können auch Software Composition Analysis (SCA) untersuchen, um die Sicherheit Ihrer Anwendung zu verbessern.