Typosquatting ataku
Wygląda na to że wszystkie środki bezpieczeństwa w tych, którzy pracowali nad repozytorium pakietów Pythona PyPI (Indeks pakietów Pythona), Nie na wiele się przydały, Ponieważ chociaż zmuszają użytkowników do korzystania z uwierzytelniania dwuskładnikowego i wdrażają środki bezpieczeństwa, aby w jak największym stopniu uniknąć wprowadzenia szkodliwych pakietów, nadal mają z tym dużą liczbę problemów.
Jednym z największych problemów nękających NPM jest rażące ładowanie złośliwych pakietów. Jest to problem, który występował w ostatnich latach i którego nie udało się wyeliminować, a powodem, dla którego o tym wspominamy, jest to, że sytuacja jest taka sama jak w przypadku PyPi doświadcza, chociaż w mniejszym stopniu, ponieważ podejmowano próby wdrożenia różnych filtrów bezpieczeństwa, a wspominam o próbach, ponieważ w dalszym ciągu pojawiają się złośliwe pakiety.
Powodem, dla którego o tym wspominam, jest to Niedawno wprowadzono tymczasowy zakaz rejestracji nowych użytkowników i tworzenia nowych projektów w repozytorium pakietów Python PyPI z powodu ciągłego automatycznego ataku co doprowadziło do masowego pobierania szkodliwych pakietów. Środek ten podjęto po przesłaniu 566 pakietów ze złośliwym kodem, które Naśladowali styl 16 popularnych bibliotek Pythona, w repozytorium w dniach 26 i 27 marca.
Nazwy tych złośliwych pakietów Tworzone są przy użyciu technik typosquattingu, które polegają na nadawaniu im podobnych nazw, ale z minimalnymi różnicami w poszczególnych znakach. Na przykład zamiast „tensorflow” używane są nazwy takie jak „temsorflow”, „requyests” zamiast „requests”, „asyincio” zamiast „asyncio”. Ataki te wykorzystują rozproszonych użytkowników, którzy mogą popełniać literówki podczas wyszukiwania lub korzystania z łączy na forach i czatach, gdzie napastnicy zostawiają wprowadzające w błąd instrukcje.
Złośliwe pakiety Opierają się na kodzie z legalnych bibliotek i zawierają zmiany instalujące w systemie złośliwe oprogramowanie. To złośliwe oprogramowanie wyszukuje i wysyła wrażliwe dane i pliki, takie jak hasła, klucze, portfele kryptograficzne, tokeny i pliki cookie sesji. Szkodliwy kod jest osadzony w pliku setup.py, który jest wykonywany podczas instalacji pakietu, a po aktywacji pobiera szkodliwe komponenty z serwera zewnętrznego.
Ten zautomatyzowany atak typosquat został przeprowadzony przez kilka godzin w kilku szybkich seriach, w wyniku czego wypuszczono ponad 500 pakietów i jego celem było 16 popularnych pakietów PyPI. Chociaż szybka i zdecydowana reakcja PyPI z pewnością pomogła złagodzić konsekwencje tego ataku, warto zauważyć, że nie wszystkie ekosystemy radzą sobie tak szybko i skutecznie z takim atakiem.
Atak na repozytorium PyPI był dość rozległy i dotknął kilka popularnych bibliotek Pythona. Atakującym udało się pobrać szkodliwe warianty pakietów, takich jak TensorFlow, BeautifulSoup, PyGame, SimpleJson, Matplotlib, PyTorch, CustomTKInter, Selenium, Dramaturgo, Asincio i Request. Ponadto zidentyfikowano pojedyncze przypadki fałszowania bibliotek, takich jak py-cord, colorama, capmonstercloudclient, poduszka i bip-utils.
Jeśli chodzi o atak na społeczność Top.gg, osoba atakująca włamała się na konto GitHub jednego z programistów, umożliwiając mu kradzież plików cookie przeglądarki i dokonanie złośliwych zmian.
Do repozytorium PyPI dodano trzy złośliwe pakiety i zarejestrowano fałszywe domeny w celu dystrybucji zależności od złośliwych pakietów. Poprzez zhakowane konto dokonano zmiany w repozytorium GitHub projektu Top.gg, gdzie dodano plik wymagania.txt zawierający odnośnik do złośliwego klona pakietu „colorama” hostowanego na fałszywej domenie. Celem było nakłonienie programistów do pobrania złośliwej wersji pakietu, ponieważ fałszywa domena przypominała legalną domenę używaną do pobierania pakietów z PyPI.
Ataki te podkreślają znaczenie bezpieczeństwa repozytoriów pakietów oraz potrzebę zwracania uwagi użytkowników i programistów na możliwe próby naruszenia bezpieczeństwa i pobrania złośliwego oprogramowania.
jeśli jesteś jaChcesz dowiedzieć się więcej na ten temat, możesz sprawdzić szczegóły w następujący link.