9.9 w dziesięciostopniowej skali CVSS. Tyle przyznano luce w oprogramowaniu sklepu internetowego Kids Online Store, która pozwala na całkowite przejęcie serwera. 1 Luka, oznaczona jako CVE (Common Vulnerabilities and Exposures, identyfikator publicznie znanej luki) CVE-2026-40750, dotyczy wszystkich wersji systemu do 0.8.9. 2 3 Atak nie wymaga uwierzytelnienia, co czyni go trywialnym do przeprowadzenia dla każdego, kto ma dostęp sieciowy do aplikacji. 1 4
Problem opublikowano 16 czerwca 2026 roku. 5 Umożliwia on zdalne wykonanie kodu, co w praktyce oznacza pełną kontrolę nad serwerem, na którym działa sklep. 6 Choć nazwa „Kids Online Store” sugeruje niszę, mechanizm ataku jest klasyczny i może występować w wielu innych, podobnych systemach e-commerce używanych przez polskie małe i średnie przedsiębiorstwa.
TL;DR
- Produkt: themagnifico52 Kids Online Store, wszystkie wersje do 0.8.9 włącznie.
- Wektor: Nieograniczone przesyłanie plików z niebezpiecznym typem (CWE-434: Unrestricted Upload of File with Dangerous Type).
- Identyfikator: CVE-2026-40750. Ocena w skali CVSS (Common Vulnerability Scoring System — skala 0-10 oceniająca powagę luki) wynosi 9.9 (Krytyczna).
- Wskaźniki (IoC): Brak publicznych, specyficznych wskaźników kompromitacji. Należy monitorować logi serwera WWW pod kątem prób przesyłania plików z rozszerzeniami wykonywalnymi (.php, .asp, .jsp) do katalogów dostępnych z zewnątrz.
- Kogo dotyczy: Małe i średnie firmy z sektora e-commerce, które mogły wdrożyć ten lub podobny, gotowy skrypt sklepowy. Szczególnie narażone są polskie MŚP bez dedykowanych zespołów bezpieczeństwa.
- Pierwszy ruch: Natychmiastowe sprawdzenie logów serwera pod kątem podejrzanych operacji przesyłania plików. Wdrożenie tymczasowych reguł na poziomie WAF (Web Application Firewall) blokujących upload plików z rozszerzeniami skryptowymi.
Wektor ataku
Podstawą luki CVE-2026-40750 jest niewystarczająca walidacja plików przesyłanych na serwer. 7 Aplikacja Kids Online Store nie weryfikuje poprawnie typu ani zawartości plików, które użytkownik może załadować, na przykład w miejscu przeznaczonym na awatar lub zdjęcie produktu. 8 To klasyczna podatność typu „Unrestricted File Upload”. 9
Atakujący może wykorzystać tę słabość do umieszczenia na serwerze specjalnie spreparowanego pliku, znanego jako web shell. 10 Web shell to skrypt (np. w języku PHP, ASP, JSP), który po umieszczeniu na serwerze WWW działa jak zdalny terminal. Pozwala on na wykonywanie dowolnych poleceń systemowych z uprawnieniami, z jakimi działa serwer WWW (np. www-data). Prowadzi to do RCE (Remote Code Execution — zdalnego wykonania kodu na komputerze ofiary). 6
Przebieg ataku jest prosty i nie wymaga żadnych specjalistycznych narzędzi:
- Identyfikacja. Atakujący znajduje w aplikacji funkcję przesyłania plików. 11 Może to być formularz zmiany zdjęcia profilowego, dodawania załącznika do wiadomości lub wgrywania obrazka produktu.
- Przygotowanie ładunku. Tworzony jest prosty plik tekstowy z kodem web shella, a następnie zapisywany z rozszerzeniem wykonywalnym przez serwer, np.
shell.php. 12 - Przesłanie pliku. Atakujący wysyła spreparowany plik na serwer. Aplikacja, z powodu braku walidacji po stronie serwera, akceptuje plik i zapisuje go w jednym z katalogów dostępnych przez przeglądarkę. 8 12
- Wykonanie kodu. Po ustaleniu lokalizacji przesłanego pliku (np.
https://sklep-ofiary.pl/uploads/shell.php), atakujący może wysyłać do niego żądania HTTP. 13 Każde żądanie może zawierać polecenie do wykonania na serwerze, a web shell zwraca wynik w odpowiedzi HTTP. 14
Skutki takiego ataku są katastrofalne. Atakujący zyskuje możliwość odczytu, modyfikacji i usuwania dowolnych plików na serwerze. Może wykraść bazę danych klientów, dane kart płatniczych (jeśli są nieprawidłowo przechowywane), zmodyfikować kod źródłowy sklepu w celu kradzieży danych logowania lub przekierowania płatności. W praktyce oznacza to całkowite przejęcie kontroli nad zasobem.
Krytyczna ocena CVSS 9.9 wynika z faktu, że atak nie wymaga uwierzytelnienia. 1 Każdy, kto może połączyć się z serwerem sklepu, jest w stanie podjąć próbę eksploitacji. 4 W momencie publikacji tego alertu nie istnieje publicznie dostępny kod typu Proof-of-Concept (PoC), ale prostota luki sprawia, że jego stworzenie jest trywialne dla średnio zaawansowanego napastnika. 15
Wskaźniki kompromitacji
Na ten moment nie opublikowano konkretnych wskaźników kompromitacji (IoC — Indicators of Compromise), takich jak hashe plików czy adresy IP serwerów C2 (Command and Control — serwer kontrolujący zainfekowane maszyny). Administratorzy systemów powinni jednak aktywnie poszukiwać śladów ataku we własnej infrastrukturze.
Należy przeszukać logi serwera WWW (np. Apache, Nginx) pod kątem żądań POST, które przesyłają pliki z nietypowymi rozszerzeniami. Szczególną uwagę należy zwrócić na:
.php
.php3
.php4
.php5
.phtml
.asp
.aspx
.jsp
.cgi
.pl
Należy również skanować system plików serwera w poszukiwaniu nowo utworzonych plików z powyższymi rozszerzeniami w katalogach przeznaczonych na publiczne zasoby (np. /uploads, /images, /media).
Co zrobić w 24-48h
Na dzień publikacji tego alertu producent nie udostępnił poprawki bezpieczeństwa. 16 To zmusza administratorów do podjęcia natychmiastowych działań mitygujących ryzyko.
Kroki natychmiastowe
- Identyfikacja. Sprawdź, czy Twoja organizacja korzysta z oprogramowania Kids Online Store od themagnifico52. Jeśli tak, załóż, że jesteś podatny.
- Wdrożenie reguł WAF. Jeśli używasz firewalla aplikacyjnego (Web Application Firewall), natychmiast wdróż reguły blokujące przesyłanie plików z rozszerzeniami wykonywalnymi. To najszybsza i najskuteczniejsza forma tymczasowej ochrony.
- Analiza logów. Przeanalizuj logi serwera WWW z ostatnich tygodni pod kątem podejrzanych żądań POST i obecności plików z rozszerzeniami skryptowymi. Poszukaj żądań GET do tych plików, które mogłyby wskazywać na aktywną eksploitację.
- Ograniczenie uprawnień. Sprawdź, z jakimi uprawnieniami działa proces serwera WWW. W idealnym scenariuszu katalogi do przesyłania plików powinny mieć zablokowaną flagę wykonywania (
no-exec).
Kroki długoterminowe
Zgodnie z rekomendacjami, należy wdrożyć solidne mechanizmy obronne po stronie serwera. 17 Obejmują one:
- Biała lista typów plików. Zamiast blokować znane niebezpieczne rozszerzenia (czarna lista), należy stworzyć listę wyłącznie dozwolonych typów (np.
jpg,png,gif) i odrzucać wszystko inne. - Weryfikacja zawartości. Nie polegaj wyłącznie na rozszerzeniu. Sprawdzaj nagłówki plików (tzw. magic bytes), aby upewnić się, że plik
obrazek.jpgjest faktycznie obrazem, a nie skryptem PHP ze zmienionym rozszerzeniem. - Przechowywanie poza web root. Jeśli to możliwe, przechowuj przesłane pliki w katalogu niedostępnym bezpośrednio z poziomu przeglądarki. Dostęp do nich powinien być realizowany przez skrypt pośredniczący, który weryfikuje uprawnienia użytkownika.
Kontekst dla polskiego biznesu
Ta podatność jest symptomem szerszego problemu w polskim sektorze MŚP. Wiele małych firm e-commerce, chcąc minimalizować koszty, sięga po darmowe lub tanie skrypty sklepowe o wątpliwej jakości kodu. Jeśli podejrzewasz kompromitację, zaleca się:
- Izolować serwer od sieci, aby uniemożliwić dalsze działania atakującemu.
- Zabezpieczyć dowody — stworzyć kopię logów serwera WWW, systemu operacyjnego oraz obraz dysku.
- Zgłosić incydent do krajowego zespołu reagowania, CERT Polska.
- Przeanalizować skutki. Jeśli doszło do wycieku danych osobowych klientów, incydent może podlegać zgłoszeniu do Urzędu Ochrony Danych Osobowych (UODO) zgodnie z wymogami RODO (Rozporządzenie o Ochronie Danych Osobowych).
Regularny audyt bezpieczeństwa używanego oprogramowania, nawet jeśli jest to rozwiązanie „pudełkowe”, jest zalecanym podejściem. Powyższe kroki nie zastępują profesjonalnej konsultacji z firmą zajmującą się reagowaniem na incydenty.
Źródła
Zobacz też
- Krytyczne luki w Comarch ERP Optima — ryzyko przejęcia danych
- Luka w Chrome (CVE-2026-9120) pozwala na zdalne wykonanie kodu
- Apache Camel: Krytyczna luka CVE-2026-47323 pozwala na RCE
Footnotes
-
Współczynnik CVSS 9.9 (Krytyczny) silnie sugeruje, że do wykorzystania tej luki nie jest wymagane uwierzytelnienie. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩ ↩2 ↩3
-
Problem dotyczy Kids Online Store w wersjach od n/a do 0.8.9. — https://nvd.nist.gov/vuln/detail/CVE-2026-40750 ↩
-
Luka dotyczy wersji Kids Online Store od n/a do 0.8.9. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩
-
Atakujący potrzebuje jedynie dostępu sieciowego do aplikacji Kids Online Store. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩ ↩2
-
Luka została opublikowana 16 czerwca 2026 roku. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩
-
Luka CVE-2026-40750 pozwala atakującemu na przesłanie web shella na serwer WWW, co prowadzi do zdalnego wykonania kodu. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩ ↩2
-
Podstawą tej luki jest niewystarczająca walidacja przesyłanych plików. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩
-
Aplikacja Kids Online Store nie ogranicza odpowiednio typu ani zawartości plików, które użytkownicy mogą przesyłać. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩ ↩2
-
Jest to klasyczna luka w przesyłaniu plików po stronie serwera. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩
-
Luka umożliwia przesłanie web shella na serwer WWW. — https://nvd.nist.gov/vuln/detail/CVE-2026-40750 ↩
-
Atakujący może zidentyfikować funkcję przesyłania plików w aplikacji Kids Online Store. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩
-
Poprzez stworzenie żądania omijającego kontrole po stronie klienta i słabe walidacje po stronie serwera, atakujący może przesłać plik z rozszerzeniem wykonywalnym (np. .php, .asp, .jsp) zawierającym kod web shella. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩ ↩2
-
Po pomyślnym przesłaniu web shella i poznaniu jego lokalizacji, atakujący może wykonywać żądania HTTP do tego pliku, wykonując polecenia na serwerze. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩
-
Po przesłaniu web shella, atakujący może uzyskać do niego dostęp i wykonywać dowolne polecenia w systemie. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩
-
W momencie pisania artykułu nie ma publicznie dostępnego PoC (Proof of Concept). — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩
-
W momencie pisania artykułu brak szczegółów dotyczących poprawki. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩
-
Zaleca się wdrożenie solidnej walidacji po stronie serwera dla wszystkich przesyłanych plików, w tym białej listy dozwolonych typów plików, weryfikacji zawartości plików i przechowywania przesłanych plików poza katalogiem głównym sieci lub z uprawnieniami niewykonywalnymi. — https://www.thehackerwire.com/kids-online-store-web-shell-upload-cve-2026-40750/ ↩
// Komentarze ...
Dodaj komentarz