W projekcie MvcTools (commit 6d48cd6830fc1df1d8c9d61caa1805fd6a1b7737) odkryto celowo umieszczony backdoor w pliku requirements.txt, który umożliwia zdalne wykonanie dowolnego kodu. Podatność jest szczególnie groźna, ponieważ zagrożenie pochodzi z łańcucha dostaw oprogramowania — złośliwy kod trafia do środowiska ofiary podczas instalacji zależności.
▸ Pokaż oryginał (EN)
MvcTools 6d48cd6830fc1df1d8c9d61caa1805fd6a1b7737 was discovered to contain a code execution backdoor via the request package (requirements.txt). This vulnerability allows attackers to access sensitive user information and execute arbitrary code.
Plik requirements.txt definiujący zależności projektu MvcTools zawierał odwołanie do złośliwego pakietu (package request), który pełni rolę backdoora (CWE-912: Hidden Functionality). Podczas instalacji zależności przy użyciu standardowego narzędzia pip, złośliwy pakiet jest pobierany i wykonywany w środowisku docelowym. W ten sposób atakujący uzyskują możliwość wykonania dowolnego kodu bez konieczności interakcji z użytkownikiem i bez wymaganych uprawnień.
Atakujący może zdalnie wykonać dowolny kod na systemie ofiary oraz uzyskać dostęp do wrażliwych danych użytkowników. W zależności od kontekstu uruchomienia może dojść do pełnego przejęcia kontroli nad serwerem lub środowiskiem deweloperskim.
Należy natychmiast zaprzestać używania podatnej wersji MvcTools i zweryfikować środowiska, w których zainstalowano zależności projektu. Sprawdź, czy złośliwy pakiet 'request' nie jest obecny w środowisku (pip list). Śledź repozytorium producenta pod adresem https://github.com/zetacomponents/MvcTools/ i zastosuj patche dostępne u producenta zgodnie z referencjami. Rozważ audyt wszystkich zainstalowanych pakietów Python w systemach, gdzie używano tej wersji biblioteki.
MvcTools w wersji odpowiadającej commitowi 6d48cd6830fc1df1d8c9d61caa1805fd6a1b7737 — dotyczy wszystkich użytkowników i środowisk instalujących zależności projektu z pliku requirements.txt zawierającego złośliwy wpis.
Podatność sklasyfikowana jako supply chain attack — złośliwy kod (backdoor) został wprowadzony bezpośrednio do pliku requirements.txt repozytorium projektu, co czyni ją atakiem na łańcuch dostaw oprogramowania. Szczegóły techniczne dostępne w zgłoszeniu GitHub Issues #12.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HZetacomponents Mvctools
APPZetacomponents2008-09-23