Microsoft Application Inspector – nowe narzędzie do analizy bezpieczeństwa kodu

Maciej Olanicki , 22.01.2020 r.

Rozrasta się portfolio opensource'owych narzędzi Microsoftu kierowanych do programistów. Korporacja udostępniła wykorzystywane dotąd na potrzeby wewnętrzne oprogramowanie Microsoft Application Inspector, dzięki któremu w dalece zautomatyzowany sposób analizować można potencjalnie niebezpieczne fragmenty kodu. Application Inspector to narzędzie obsługiwane z poziomu wiersza poleceń na Windowsie, Linuksie i macOS-ie.

application-inspector-1 Takie działanie zostanie zasygnalizowane przez Application Inspectora.

Microsoft Application Inspector nie jest typowym statycznym silnikiem przetwarzania kodu pod względem ewentualnych podatności. Nie wskazuje on konkretnych zagrożeń, błędów czy uchybień popełnionych przez programistę, lecz skupia się na wskazywaniu tych fragmentów, które wzbudzają wątpliwości. Nie jest dokonywana żadna automatyczna kwalifikacja. Do identyfikacji nietypowych schematów wykorzystywana jest baza składająca się z ponad 500 wzorców, m.in. profilu wykorzystania nagłówków HTTP.

Co ważne, Application Inspector ma bardzo konkretne zastosowanie. Najlepiej sprawdza się on przede wszystkim w projektach, które wykorzystują dużą liczbę gotowych komponentów, co dziś jest w zasadzie standardem. Chodzi więc nie tyle o odnajdywanie kiepskich praktyk programistycznych, mogących narażać na szwank bezpieczeństwo (a to głównie taką funkcjonalność dostarcza lwia część dostępnych dziś silników przetwarzania kodu), lecz o sygnalizowanie potencjalnych problemów płynących z wykorzystania kodu z zewnątrz.

applicationinspector Raport w postaci pliku HTML.

Jak wspomnieliśmy, oprogramowanie obsługiwane jest poziomu wiersza poleceń. Ze składnią można zapoznać się w dokumentacji udostępnionej na GitHubie. Wystarczy jako parametr wskazać ścieżkę do kodu źródłowego i wybrać format pliku wyjściowego, aby otrzymać wyniki analizy. Szczególnie atrakcyjnie wypada postać raportu HTML, w którym wyszczególniono konkretne grupy funkcji, np. kryptografia, uwierzytelnianie czy integracja z usługami chmurowymi.

Zobacz też: JetBrains prezentuje JetBrains Mono – świetną nową czcionkę dla programistów

Najnowsze oferty pracy:

Polecane wpisy na blogu IT: