Trzy nowe możliwości programu Amazon Inspector poszerzają zakres skanowania podatności na zagrożenia w poszukiwaniu obciążeń

30 listopada 2023

Dzisiaj Amazon Inspector dodaje trzy nowe funkcje, które zwiększają możliwości skanowania obciążeń w poszukiwaniu luk w oprogramowaniu:

  • Amazon Inspector wprowadza nowy zestaw wtyczek open source i interfejs API umożliwiający ocenę obrazów kontenerów pod kątem luk w oprogramowaniu w czasie kompilacji, bezpośrednio z potoków ciągłej integracji i ciągłego dostarczania (CI/CD), gdziekolwiek są uruchomione.
  • Amazon Inspector może teraz stale monitorować instancje Amazon Elastic Compute Cloud (Amazon EC2) bez instalowania agenta lub dodatkowego oprogramowania (w wersji zapoznawczej).
  • Amazon Inspector wykorzystuje generatywną sztuczną inteligencję (AI) i zautomatyzowane wnioskowanie, aby zapewnić wspomaganą naprawę kodu dla funkcji AWS Lambda.

Amazon Inspector to usługa zarządzania lukami w zabezpieczeniach, która stale skanuje obciążenia AWS pod kątem znanych luk w oprogramowaniu i niezamierzonego narażenia sieci. Amazon Inspector automatycznie wykrywa i skanuje działające instancje EC2, obrazy kontenerów w Amazon Elastic Container Registry (Amazon ECR) oraz w narzędziach CI/CD, a także funkcje Lambda.

To oczywiste, że zespoły inżynierów często stają przed wyzwaniami, jeśli chodzi o szybkie usuwanie luk w zabezpieczeniach. Dzieje się tak ze względu na napięte terminy wydania, które zmuszają zespoły do przedkładania programowania nad rozwiązywanie problemów z zaległości w zakresie luk w zabezpieczeniach. Ale wynika to również ze złożonego i stale ewoluującego charakteru krajobrazu bezpieczeństwa. W rezultacie badanie wykazało, że wyeliminowanie krytycznych luk w zabezpieczeniach zajmuje średnio 250 dni. Dlatego niezwykle istotne jest zidentyfikowanie potencjalnych problemów związanych z bezpieczeństwem na wczesnym etapie cyklu rozwojowego, aby zapobiec ich wdrożeniu do produkcji.

Wykrywanie luk w kodzie funkcji AWS Lambda

Zacznij od tematu związanego blisko z programistą z kodem funkcji Lambda.

W listopadzie 2022 r. i czerwcu 2023 r. Amazon Inspector dodał możliwość skanowania zależności i kodu funkcji. Dzisiaj autorzy dodają generatywną sztuczną inteligencję i automatyczne wnioskowanie, aby analizować kod i automatycznie tworzyć rozwiązania zaradcze w postaci poprawek kodu.

Amazon Inspector może teraz dostarczać kontekstowe poprawki kodu dla wielu klas luk w zabezpieczeniach wykrytych podczas skanowania bezpieczeństwa. Amazon Inspector rozszerza ocenę Twojego kodu pod kątem problemów związanych z bezpieczeństwem, takich jak injection flaws, wycieki danych, słaba kryptografia lub brakujące szyfrowanie. Dzięki generatywnej sztucznej inteligencji Amazon Inspector udostępnia teraz sugestie, jak to naprawić. Pokazuje fragmenty kodu, których dotyczy problem, w kontekście sugerowanych środków zaradczych.

Oto przykład. Autor tekstu napisał krótki fragment kodu Pythona z zakodowanym na stałe tajnym kluczem AWS. Nigdy tego nie rób!

def create_session_noncompliant():
    import boto3
    # Noncompliant: uses hardcoded secret access key.
    sample_key = "AjWnyxxxxx45xxxxZxxxX7ZQxxxxYxxx1xYxxxxx"
    boto3.session.Session(aws_secret_access_key=sample_key)
    return response

Wdraża kod. To wyzwala ocenę. Otwiera konsolę zarządzającą AWS i przechodzi do strony Amazon Inspector. W sekcji Findings znajduje lukę. Podaje lokalizację luki i sugerowane rozwiązanie w prostym wyjaśnieniu w języku naturalnym, ale także w różnych formatach tekstowych i graficznych.

Wdraża kod. To wyzwala ocenę. Otwiera konsolę zarządzającą AWS i przechodzi do strony Amazon Inspector. W sekcji Findings znajduje lukę. Podaje lokalizację luki i sugerowane rozwiązanie w prostym wyjaśnieniu w języku naturalnym, ale także w różnych formatach tekstowych i graficznych.

Wykrywanie luk w zabezpieczeniach potoku CI/CD kontenera

Pora przejść do potoków CI/CD podczas budowania kontenerów.

Do dziś Amazon Inspector był w stanie oceniać obrazy kontenerów po ich zbudowaniu i przechowywaniu w Amazon Elastic Container Registry (Amazon ECR). Od dziś Amazon Inspector może wykrywać problemy bezpieczeństwa znacznie wcześniej w procesie rozwoju, oceniając obrazy kontenerów podczas ich kompilacji w ramach narzędzi CI/CD. Wyniki oceny są zwracane w czasie zbliżonym do rzeczywistego bezpośrednio do panelu narzędzia CI/CD. Nie ma potrzeby umożliwiania Amazon Inspector korzystania z tej nowej funkcji.

AWS Dostarcza gotowe do użycia wtyczki CI/CD dla TeamCity Jenkins i JetBrain, a wkrótce będzie ich więcej. Dostępny jest także nowy interfejs API (inspector-scan) i polecenie (inspector-sbomgen) dostępne w pakietach AWS SDK i interfejsie wiersza poleceń AWS (AWS CLI). To nowe API umożliwia integrację Amazon Inspector z wybranym przez Ciebie narzędziem CI/CD.

Po uruchomieniu wtyczka uruchamia silnik ekstrakcji kontenerów na skonfigurowanym zasobie i generuje listę materiałów (SBOM) oprogramowania kompatybilną z CycloneDX. Następnie wtyczka wysyła SBOM do Amazon Inspector w celu analizy. Wtyczka odbiera wynik skanowania w czasie zbliżonym do rzeczywistego. Analizuje odpowiedź i generuje dane wyjściowe, których Jenkins lub TeamCity używa do pomyślnego lub niepowodzenia wykonania potoku.

Aby użyć wtyczki z Jenkinsem, najpierw upewnij się, że do instancji EC2, w której zainstalowany jest Jenkins, jest przypisana rola, lub masz klucz dostępu AWS i tajny klucz dostępu z uprawnieniami do wywoływania interfejsu API Amazon Inspector.

Zainstaluj wtyczkę bezpośrednio z Jenkinsa (Jenkins Dashboard > Manage Jenkins > Plugins)

Następnie dodaj do swojego potoku etap skanowania Amazon Inspector Scan.

Następnie dodaj do swojego potoku etap skanowania Amazon Inspector Scan.

Zainstaluj wtyczkę bezpośrednio z Jenkinsa (Jenkins Dashboard > Manage Jenkins > Plugins)

Skonfiguruj kolejny krok za pomocą utworzonej roli IAM (lub klucza dostępu AWS i tajnego klucza dostępu w przypadku działania lokalnego), poświadczeń Docker, regionu AWS i identyfikatora obrazu.

Skonfiguruj kolejny krok za pomocą utworzonej roli IAM (lub klucza dostępu AWS i tajnego klucza dostępu w przypadku działania lokalnego), poświadczeń Docker, regionu AWS i identyfikatora obrazu.

Gdy Amazon Inspector wykryje luki, zgłasza je wtyczce. Kompilacja kończy się niepowodzeniem i możesz wyświetlić szczegóły bezpośrednio w Jenkins.

Gdy Amazon Inspector wykryje luki, zgłasza je wtyczce. Kompilacja kończy się niepowodzeniem i możesz wyświetlić szczegóły bezpośrednio w Jenkins.

Pokolenie SBOM rozumie pakiety lub aplikacje dla popularnych systemów operacyjnych, takich jak pakiety Alpine, Amazon Linux, Debian, Ubuntu i Red Hat. Wykrywa także pakiety dla języków programowania Go, Java, NodeJS, C#, PHP, Python, Ruby i Rust.

Wykrywanie luk w zabezpieczeniach Amazon EC2 bez instalowania agentów (w wersji zapoznawczej)

Na zakończenie porozmawiajmy o bezagentowej inspekcji instancji EC2.

Obecnie Amazon Inspector korzysta z AWS Systems Manager i AWS Systems Manager Agent (SSM Agent) do zbierania informacji o stanie Twoich instancji EC2. Aby mieć pewność, że Inspektor Amazon może komunikować się z Twoimi instancjami, musisz spełnić trzy warunki. Najpierw na instancji instalowana jest najnowsza wersja Agenta SSM. Następnie zostaje uruchomiony agent SSM. Po trzecie, do instancji przypisano rolę IAM, aby umożliwić agentowi SSM komunikację zwrotną z usługą SSM. Wydaje się to sprawiedliwe i proste. Nie dotyczy to jednak dużych wdrożeń w wielu wersjach systemu operacyjnego, regionach AWS i kontach ani w przypadku zarządzania starszymi aplikacjami. Każda uruchomiona instancja, która nie spełnia tych trzech warunków, stanowi potencjalną lukę w zabezpieczeniach Twojej infrastruktury.

Dzięki skanowaniu bez agenta (w wersji zapoznawczej) Amazon Inspector nie wymaga agenta SSM do skanowania instancji. Automatycznie odkrywa istniejące i nowe instancje oraz planuje dla nich ocenę podatności. Dokonuje tego poprzez wykonanie migawki woluminów EBS instancji i analizę migawki. Ta technika ma dodatkową zaletę, ponieważ nie zużywa żadnego cyklu procesora ani pamięci w instancjach, pozostawiając 100 procent (wirtualnego) sprzętu dostępnego dla Twoich obciążeń. Po analizie Amazon Inspector usuwa migawkę.

Aby rozpocząć, włącz skanowanie hybrydowe w ustawieniach EC2 scanning w sekcji Amazon Inspector w konsoli zarządzania AWS Management Console. Tryb hybrydowy oznacza, że Amazon Inspector w dalszym ciągu korzysta ze skanowania opartego na agencie SSM w przypadku instancji zarządzanych przez SSM i automatycznie przełącza się na tryb bezagentowy w przypadku instancji, które nie są zarządzane przez SSM.

Aby rozpocząć, włącz skanowanie hybrydowe w ustawieniach EC2 scanning w sekcji Amazon Inspector w konsoli zarządzania AWS Management Console. Tryb hybrydowy oznacza, że Amazon Inspector w dalszym ciągu korzysta ze skanowania opartego na agencie SSM w przypadku instancji zarządzanych przez SSM i automatycznie przełącza się na tryb bezagentowy w przypadku instancji, które nie są zarządzane przez SSM.

W zakładce Account management możesz zweryfikować listę przeskanowanych instancji. Widać, które instancje są skanowane za pomocą agenta SSM, a które nie.

W zakładce Account management możesz zweryfikować listę przeskanowanych instancji. Widać, które instancje są skanowane za pomocą agenta SSM, a które nie.

W obszarze Findings możesz filtrować według luk w zabezpieczeniach, konta, instancji itd. Wybieraj według instancji i wybierz instancję bez agenta, którą chcesz sprawdzić.

W tym konkretnym przypadku Amazon Inspector wyświetla ponad 200 ustaleń posortowanych według ważności.

W obszarze Findings możesz filtrować według luk w zabezpieczeniach, konta, instancji itd. Wybieraj według instancji i wybierz instancję bez agenta, którą chcesz sprawdzić. W tym konkretnym przypadku Amazon Inspector wyświetla ponad 200 ustaleń posortowanych według ważności.

Jak zwykle widać szczegóły ustalenia, aby zrozumieć, jakie jest ryzyko i jak je złagodzić.

Jak zwykle widać szczegóły ustalenia, aby zrozumieć, jakie jest ryzyko i jak je złagodzić.

Dostępność i ceny

Usługa Amazon Inspector code remediation for Lambda functions jest dostępna w dziesięciu regionach: wschodnie stany USA (Ohio, płn. Virginia), zachodnie stany USA (Oregon), Azja i Pacyfik (Singapur, Sydney, Tokio) i Europa (Frankfurt, Irlandia, Londyn, Sztokholm). Jest ona dostępna bez dodatkowych kosztów.

Usługa Amazon Inspector agentless vulnerability scanning for Amazon EC2 jest dostępna w wersji zapoznawczej w trzech regionach AWS: wschodnie stany USA (płn. Wirginia), zachodnie stany USA (Oregon) i Europa (Irlandia).

Nowy interfejs API do skanowania kontenerów w czasie kompilacji jest dostępny w 21 regionach AWS, w których dostępny jest już Amazon Inspector.

Nie ma żadnych płatności z góry ani kosztów subskrypcji. AWS pobiera opłaty na żądanie w oparciu o wielkość aktywności. Istnieje cena za instancję EC2 lub skan obrazu kontenera. Jak zawsze, strona z cennikiem Amazon Inspector zawiera szczegółowe informacje.

Zacznij już dziś, dodając agenta Jenkins lub TeamCity do potoków CI/CD aplikacji kontenerowych lub aktywuj bezagentową inspekcję Amazon EC2.

A teraz zacznij tworzyć!

źródło: AWS

Case Studies
Referencje

Jesteśmy ogromnie zadowoleni ze współpracy z firmą Hostersi. Ich specjaliści bardzo nam pomogli w procesie migracji oraz zaprojektowania infrastruktury hybrydowej (Amazon Web Services i on-premise). Polecamy zespół Hostersi jako rzetelnego i profesjonalnego partnera o ogromnych kompetencjach w obszarze DevOps i Cloud Computingu.

Zbigniew Ćwikliński
Director of the Customer Relationship and Technology Development Department
W skrócie o nas
Specjalizujemy się w dostarczaniu rozwiązań IT w obszarach projektowania infrastruktury serwerowej, wdrażania chmury obliczeniowej, opieki administracyjnej i bezpieczeństwa danych.