Chociaż pakiety imitujące i typosquatting to pojęcia powiązane, nie są one tym samym. Oba te zjawiska opierają się na oszukańczych taktykach, mających na celu nakłonienie użytkowników do pobrania złośliwego oprogramowania, ale robią to w nieco inny sposób. Oto szczegółowe wyjaśnienie każdego z nich:
Typosquatting
Typosquatting polega na rejestrowaniu nazw domen lub pakietów, które są bardzo podobne do legalnych, często różniąc się jedynie literówką. Celem jest oszukanie użytkowników, którzy popełniają błędy podczas wpisywania adresu URL lub nazwy pakietu, co prowadzi do złośliwych stron lub oprogramowania zamiast do legalnych.
Przykład:
Pakiet legalny: wyrazić.
Warianty pakietów typu typosquatted: expres (brakuje 's'), wyraża(dodatkowe 's'), or ekspres (podwójne „e”).
Typosquatting w świecie rzeczywistym:
W listopadzie 2018 roku badacze bezpieczeństwa zidentyfikowali i usunęli z ekosystemu NPM złośliwy pakiet JavaScript o nazwie flatmap-stream. Atakujący wprowadził do niego tę niebezpieczną modyfikację, a następnie dodał ją jako bezpośrednią zależność do popularnego pakietu event-stream. Użytkownicy pobrali tę złośliwą wersję flatmap-stream prawie 8 milionów razyProgramiści, którzy wykorzystali zagrożony pakiet event-stream, nieświadomie narazili się na działanie złośliwego kodu.
W tym przypadku skupiono się na drobnych błędach ortograficznych lub wariantach wykorzystujących powszechnie występujące błędy typograficzne.
Pakiety naśladujące
Pakiety imitujące polegają na tworzeniu złośliwych pakietów, które imitują popularne i legalne. W szczególności, imitacja ta może wykraczać poza drobne błędy ortograficzne i obejmować również podobne nazwy, opisy, dokumentację i funkcjonalności, aby złośliwy pakiet wydawał się legalny i godny zaufania.
Przykład:
Pakiet legalny: lodasz
Warianty pakietów kopiujących: lodashjs, narzędzia lodashlub nawet pakiet o tej samej nazwie, ale przesłany przez innego autora do mniej bezpiecznego repozytorium
Przypadek z życia wzięty:
Rozważmy popularną, opartą na PHP, aplikację Laravel o otwartym kodzie źródłowym, o nazwie laravel-realworld-example-app. Ta aplikacja zawiera praktyczne przykłady (operacje CRUD, uwierzytelnianie, zaawansowane wzorce itp.) specyfikacji RealWorld API. Chociaż legalny pakiet służy jako odniesienie, pakiet naśladujący mógłby go imitować, używając podobnej nazwy (np. laravel-realworld-example-apps lub laravel-realworld-examples). Takie pakiety naśladujące mogą zawierać podobne funkcje, opisy, a nawet dokumentację, co ma skłonić programistów do korzystania z nich zamiast oryginalnej wersji
W tym przypadku skupiono się na szerszym kontekście imitacji, który obejmuje nie tylko nazwy, ale także aspekty wyglądu i funkcjonalności oryginalnego pakietu.
Kluczowe różnice
Skupiać:
Typosquatting to atak polegający na popełnianiu błędów typograficznych przez użytkowników.
Pakiety kopiujące mają na celu szersze naśladowanie legalnych pakietów, potencjalnie obejmując podobne nazwy, opisy i funkcjonalności.
Zakres imitacji:
Typosquatting zwykle polega na drobnych zmianach nazwy pakietu.
Pakiety imitujące mogą być bardziej rozbudowane i wierne, przez co wydają się jeszcze bardziej przekonujące.
zakładka
Istnieje pewne nakładanie się tych dwóch koncepcji, ponieważ pakiety typu typosquatting można uznać za podzbiór pakietów typu copycat. Obie taktyki mają na celu nakłonienie użytkowników do zainstalowania złośliwego oprogramowania, ale typosquatting wykorzystuje typowe błędy w pisowni, podczas gdy pakiety typu copycat mogą wykorzystywać szerszy zakres strategii imitacji.
Strategie łagodzące
Aby skutecznie chronić się przed typosquattingiem i kopiowaniem pakietów, organizacje powinny przyjąć wielopłaszczyznowe podejście, które integruje tradycyjne strategie i zaawansowane rozwiązania, takie jak nasze XygeniOpen Source Security Rozwiązanie. Oto kluczowe strategie łagodzenia tych ryzyk:
- Użyj zaufanych źródeł:Przede wszystkim zawsze pobieraj pakiety z zaufanych i zweryfikowanych źródeł lub oficjalnych repozytoriów, aby mieć pewność co do ich autentyczności.
- Przypinanie zależności: Dodatkowo przypinaj zależności do konkretnych, zweryfikowanych wersji, aby zachować spójność i bezpieczeństwo wszystkich wdrożeń.
- Zautomatyzowane narzędziaPonadto, wykorzystaj zautomatyzowane narzędzia, takie jak Xygeni, do efektywnego skanowania i oznaczania podejrzanych pakietów. Zaawansowane funkcje wykrywania Xygeni zostały zaprojektowane tak, aby skutecznie identyfikować i zarządzać podejrzanymi zależnościami, zapewniając tym samym dodatkową warstwę bezpieczeństwa.
- Weryfikacja ręczna:Ponadto uzupełnij narzędzia automatyczne o weryfikację ręczną, zwłaszcza w przypadku nowych pakietów lub tych, które niedawno przeszły znaczące aktualizacje.
- Rezerwacja przestrzeni nazwAby zapobiec przejęciu przez złośliwe podmioty, zarejestruj i kontroluj pakiety przestrzeni nazw w publicznych repozytoriach. To proaktywne działanie gwarantuje, że z przestrzenią nazw Twojej organizacji będą powiązane tylko autoryzowane aktualizacje i pakiety.
Integrując te strategie z niezawodnymi możliwościami naszych narzędzi Xygeni, organizacje mogą wzmocnić swoje zabezpieczenia przed stale rozwijającymi się zagrożeniami, takimi jak typosquatting i kopie pakietów, zwiększając ogólne bezpieczeństwo swojego łańcucha dostaw oprogramowania.







