Kilka sposobów na rozpoznanie niebezpiecznych paczek w Python Package Index.
Opublikowano 09.01.2023 16:11
Coraz częściej słyszymy o atakach, w których wykorzystywane są złośliwe paczki Pythona. Niebezpieczny kod jest umieszczany w pliku setup.py
a następnie całość wysyłana jest do repozytorium PyPI.
Każdy programista, który zainstaluje złośliwą paczkę przy pomocy komendy pip install
może zostać ofiarą tego ataku. I nie jest to takie trudne.
requests
napisać requesys
, requesrs
lub requesr
. Ta pomyłka mogłaby sprawić, że Twoje pliki zostałyby zaszyfrowane.requests
czy requests3
flask-sqlalchemy
czy flasksqlalchemy
jinja
czy jinja2
czy jinja3
Co robić? Kilka pomysłów poniżej.
pypi.org
. Pod te statystyki można się podszyć. Wystarczy w pliku setup.cfg
podać adres do repozytorium z odpowiednią ilością gwiazdek.used by
.pip download
. W ten sposób też możesz uruchomić złośliwy kod. Zamiast tego pobierz plik ręcznie używając zakładki download files
. Możesz teraz sprawdzić ich kod źródłowy w poszukiwaniu podejrzanych funkcji/słów kluczowych.