Fortify Static Code Analyzer (SCA) analizuje kod źródłowy i wskazuje główną przyczynę luk w zabezpieczeniach.
Skan Fortify nadaje priorytet najpoważniejszym problemom i wskazuje, jak programiści powinni je naprawić.
Wzmocnij analizator kodu statycznego
Fortify Static Code Analyzer ma różne analizatory podatności, takie jak Buffer, Content, Control Flow, Dataflow, Semantic, Configuration i Structural. Każdy z tych analizatorów akceptuje inny rodzaj reguły, dostosowany do oferowania informacji niezbędnych do rodzaju przeprowadzanej analizy.
Fortify Static Code Analyzer ma następujące komponenty;
- Wzmocnij kreatora skanowania. Jest to narzędzie oferujące opcje uruchamiania skryptów po lub przed analizą.
- Stanowisko audytu. Jest to aplikacja oparta na graficznym interfejsie użytkownika, która organizuje i zarządza analizowanymi wynikami.
- Edytor reguł niestandardowych. Jest to narzędzie, które pozwala programistom tworzyć i edytować niestandardowe reguły do analizy.
- Wtyczka dla IntelliJ i Android Studio. Ta wtyczka udostępnia wyniki analizy w środowisku IDE.
- Wtyczka do Eclipse. To narzędzie jest zintegrowane z Eclipse i wyświetla wyniki w IDE.
- Wtyczka bambusa. Jest to wtyczka, która zbiera wyniki z pracy Bamboo, która przeprowadza analizę.
- Wtyczka Jenkinsa. Ta wtyczka zbiera wyniki analizy z Jenkins Job.
Cechy Fortify SCA
# 1. Obsługuje wiele języków
Niektóre języki obsługiwane w Fortify SCA to; ABAP/BSP, ActionScript, ASP (z VBScript), COBOL, ColdFusion, Apex, ASP.NET, C# (.NET), C/C++, Classic, VB.NET, VBScript, CFML, Go, HTML, Java (w tym Android ), JavaScript/AJAX, JSP, Kotlin, Visual Basic, MXML (Flex), Objective C/C++, PHP, PL/SQL, Python, Ruby, Swift, T-SQL i XML.
#2. Elastyczne opcje wdrażania
- Fortify On-Prem zapewnia organizacji pełną kontrolę nad wszystkimi aspektami Fortify SCA.
- Fortify On Demand umożliwia programistom pracę w środowisku Software As Service.
- Fortify Hosted pozwala programistom cieszyć się obydwoma światami (na żądanie i na miejscu) za pośrednictwem izolowanego środowiska wirtualnego z pełną kontrolą danych.
#3. Łatwo integruje się z narzędziami CI/CD
- Deweloperzy mogą łatwo zintegrować Fortify SCA z głównymi środowiskami IDE, takimi jak Visual Studio i Eclipse.
- Deweloperzy mają kontrolę nad różnymi działaniami, ponieważ narzędzie integruje się z narzędziami typu open source, takimi jak Sonatype, WhiteSource, Snyk i BlackDuck.
- Możesz także zintegrować Fortify SCA ze zdalnymi repozytoriami kodu, takimi jak Bitbucket i GitHub. Narzędzie może więc sprawdzać kod przesyłany na takie platformy pod kątem luk w zabezpieczeniach i wysyłać raporty.
#4. Alerty w czasie rzeczywistym
Nie musisz czekać, aż skończysz kodować, aby przeprowadzić testy, ponieważ Fortify SCA zapewnia aktualizacje w czasie rzeczywistym podczas kodowania. Narzędzie zawiera analizatory konfiguracji i struktury stworzone z myślą o szybkości i wydajności oraz pomaga w tworzeniu bezpiecznych aplikacji.
#5. Asystent audytu oparty na uczeniu maszynowym
Audyt systemu jest szybki dzięki Audit Assistant, który wykorzystuje algorytmy uczenia maszynowego. Asystent identyfikuje wszystkie luki w zabezpieczeniach i nadaje im priorytety na podstawie poziomu pewności. Organizacje mogą w ten sposób zaoszczędzić na kosztach audytu, ponieważ narzędzie generuje raporty.
#6. Elastyczność
Użytkownicy mogą wybrać typ skanowania, który chcą przeprowadzić, w zależności od potrzeb. Na przykład, jeśli chcesz dokładnych i szczegółowych skanów, możesz wybrać opcję kompleksowego skanowania. Deweloperzy mogą również wybrać opcję szybkiego skanowania, jeśli chcą wykrywać tylko poważne zagrożenia.
Co robi Fortify SCA?
Fortify SCA pełni kilka ról w typowym ekosystemie programistycznym. Oto niektóre z ról;
Testy statyczne pomagają budować lepszy kod
Statyczne testy bezpieczeństwa aplikacji (SAST) pomagają zidentyfikować luki w zabezpieczeniach na wczesnych etapach rozwoju. Na szczęście naprawa większości z tych luk w zabezpieczeniach jest niedroga.
Takie podejście zmniejsza ryzyko bezpieczeństwa w aplikacjach, ponieważ testowanie zapewnia natychmiastową informację zwrotną na temat problemów wprowadzonych do kodu podczas tworzenia.
Deweloperzy dowiadują się również o bezpieczeństwie dzięki statycznym testom bezpieczeństwa aplikacji, dzięki czemu mogą rozpocząć produkcję bezpiecznego oprogramowania.
Fortify SCA wykorzystuje rozległą bazę wiedzy na temat reguł bezpiecznego kodowania i wielu algorytmów do analizy kodu źródłowego aplikacji pod kątem luk w zabezpieczeniach. Podejście to analizuje każdą wykonalną ścieżkę, którą mogą podążać dane i wykonanie, aby zidentyfikować luki w zabezpieczeniach i zaproponować środki zaradcze.
Wcześnie wykrywa problemy z bezpieczeństwem
Fortify SCA naśladuje kompilator. Po skanowaniu Fortify to narzędzie odczytuje pliki kodu źródłowego i konwertuje je na strukturę pośrednią ulepszoną do analizy bezpieczeństwa.
Wszystkie luki w zabezpieczeniach są łatwe do zlokalizowania w formacie pośrednim. Narzędzie jest dostarczane z silnikiem analitycznym składającym się z wielu wyspecjalizowanych analizatorów, które następnie wykorzystują reguły bezpiecznego kodowania do analizy, czy kod narusza jakiekolwiek zasady bezpiecznego kodowania.
Fortify SCA jest również wyposażony w narzędzie do tworzenia reguł, jeśli chcesz rozszerzyć możliwości analizy statycznej i uwzględnić niestandardowe reguły. Wyniki w takim ustawieniu można wyświetlać w różnych formatach w zależności od zadania i odbiorców.
Fortify Software Security Center (SSC) pomaga zarządzać wynikami
Fortify Software Security Center (SSC) to scentralizowane repozytorium do zarządzania, które zapewnia wgląd w cały program bezpieczeństwa aplikacji organizacji. Dzięki SSC użytkownicy mogą przeprowadzać audyty, przeglądać, ustalać priorytety i zarządzać działaniami zaradczymi w przypadku zidentyfikowania zagrożeń bezpieczeństwa.
Fortify SSC oferuje dokładny zakres i obraz stanu bezpieczeństwa aplikacji w organizacji. SSC znajduje się na centralnym serwerze, ale otrzymuje wyniki z różnych działań związanych z testowaniem bezpieczeństwa aplikacji, począwszy od analizy dynamicznej w czasie rzeczywistym, a skończywszy na analizie statycznej.
Jaki rodzaj analizy kodu może przeprowadzić Fortify SCA?
Skan fortify zapożycza się z architektury zgubnych królestw podczas analizy kodu. Oto rodzaje analiz, które wykonuje Fortify SCA;
- Walidacja i reprezentacja danych wejściowych – problemy związane z walidacją i reprezentacją danych wejściowych wynikają z alternatywnego kodowania, reprezentacji liczbowych i metaznaków. Przykładami takich problemów są „Przepełnienia bufora”, ataki „Cross-Site Scripting” i „SQL Injection”, które pojawiają się, gdy użytkownicy ufają danym wejściowym.
- Nadużycie interfejsu API. Osoba dzwoniąca, która nie wywiązuje się z umowy, jest najczęstszym rodzajem nadużycia interfejsu API.
- Funkcjonalność związana z bezpieczeństwem. Ten test rozróżnia oprogramowanie zabezpieczające i oprogramowanie zabezpieczające. Analiza skupi się na zagadnieniach związanych z uwierzytelnianiem, zarządzaniem uprawnieniami, kontrolą dostępu, poufnością i kryptografią.
- Czas i stan. Komputery mogą bardzo szybko przełączać się między różnymi zadaniami. Analiza czasu i stanu wyszukuje defekty wynikające z nieoczekiwanych interakcji między wątkami, informacjami, procesami i czasem.
- Błędy. Fortify SCA sprawdzi, czy błędy nie przekazują zbyt wielu informacji potencjalnym atakującym.
- Jakość kodu. Niska jakość kodu zwykle prowadzi do nieprzewidywalnego zachowania. Jednak osoby atakujące mogą mieć szansę manipulowania aplikacją na swoją korzyść, jeśli napotkają kod, który jest źle napisany.
- Kapsułkowanie. Jest to proces wyznaczania silnych granic. Taka analiza może oznaczać rozróżnienie pomiędzy zweryfikowanymi i niezweryfikowanymi danymi.
Pobierz i zainstaluj Fortify SCA
Przed rozpoczęciem procesu instalacji należy;
- Sprawdź wymagania systemowe z oficjalnej dokumentacji
- Pobierz plik licencji Fortify. Wybierz swój pakiet ze strony pobierania Microfocus. Wyszukaj narzędzie Fortify Static Code Analyzer, utwórz konto i uzyskaj plik licencji Fortify.
- Upewnij się, że masz zainstalowany program Visual Studio Code lub inny obsługiwany edytor kodu
Jak zainstalować w systemie Windows
Fortify_SCA_and_Apps_<version>_windows_x64.exe
Uwaga:
- Kliknij Dalej po zaakceptowaniu umowy licencyjnej.
- Wybierz miejsce instalacji narzędzia Fortify Static Code Analyzer i kliknij przycisk Dalej.
- Wybierz komponenty, które chcesz zainstalować i kliknij Dalej.
- Określ użytkowników, jeśli instalujesz rozszerzenie dla programu Visual Studio 2015 lub 2017.
- Kliknij Dalej po określeniu ścieżki do pliku fortify.license.
- Określ ustawienia wymagane do aktualizacji zawartości zabezpieczeń. Możesz użyć serwera aktualizacji Fortify Rulepack, podając adres URL jako https://update.fortify.com. Kliknij Następny.
- Określ, czy chcesz zainstalować przykładowy kod źródłowy. Kliknij Następny.
- Kliknij Dalej, aby zainstalować Fortify SCA i aplikacje.
- Kliknij Aktualizuj zawartość zabezpieczeń po instalacji, a następnie Zakończ po zakończeniu instalacji.
Jak zainstalować w systemie Linux
Możesz wykonać te same kroki, aby zainstalować Fortify SCA w systemie Linux. Jednak w pierwszym kroku uruchom to jako plik instalatora;
Fortify_SCA_and_Apps__linux_x64.run
Alternatywnie można zainstalować Fortify SCA, korzystając z wiersza poleceń.
Otwórz terminal i uruchom to polecenie
./Fortify_SCA_and_Apps__linux_x64.run --mode text
Postępuj zgodnie ze wszystkimi monitami wyświetlanymi w wierszu poleceń, aż do zakończenia procesu instalacji.
Jak uruchomić skanowanie Fortify
Po zakończeniu instalacji nadszedł czas na skonfigurowanie narzędzia do analizy bezpieczeństwa.
- Udaj się do katalogu instalacyjnego i przejdź do folderu bin za pomocą wiersza polecenia.
- Wpisz scapostinstall. Następnie możesz wpisać s, aby wyświetlić ustawienia.
- Skonfiguruj ustawienia regionalne za pomocą tych poleceń;
Wpisz 2, aby wybrać Ustawienia.
Wpisz 1, aby wybrać Ogólne.
Wpisz 1, aby wybrać ustawienia regionalne
Aby wybrać język, wpisz English: en, aby ustawić język na angielski.
- Skonfiguruj aktualizacje zawartości zabezpieczeń. Wpisz 2, aby wybrać Ustawienia, a następnie ponownie wpisz 2, aby wybrać Wzmocnienie aktualizacji. Możesz teraz użyć serwera aktualizacji Fortify Rulepack, podając adres URL jako https://update.fortify.com.
- Wpisz sourceanalyzer, aby sprawdzić, czy narzędzie jest w pełni zainstalowane.
Fortify SCA będzie teraz działać w tle i sprawdzać cały kod pod kątem luk w zabezpieczeniach.
Podsumowanie
Przypadki hakowania systemów i narażania danych stały się powszechne w erze Internetu. Na szczęście mamy teraz narzędzia, takie jak Fortify Static Code Analyzer, które mogą wykrywać zagrożenia bezpieczeństwa podczas pisania kodu, wysyłać alerty i podawać zalecenia dotyczące radzenia sobie z takimi zagrożeniami. Fortify SCA może zwiększyć produktywność i obniżyć koszty operacyjne, gdy jest używany z innymi narzędziami.
Możesz także zapoznać się z analizą składu oprogramowania (SCA), aby poprawić bezpieczeństwo aplikacji.