Wczoraj pisałem o błędzie, jaki wyświetlał się na jednej ze stron, prawdopodobnie w momencie niedostępności usługi/serwera baz danych. Uznałem, że to przypadek wart pokazania, bo oprócz informacji o przyczynach niedostępności strony wyświetlane były wszystkie dane związane z autoryzacją do serwera MySQL (adres, nazwa użytkownika i hasło, port). Sytuacja potencjalnie bardzo niebezpieczna, choć przy poprawnej konfiguracji dostępu do bazy danych (np. ograniczenie zdalnego łączenia się z bazą danych dla danego użytkownika) nie jest tak źle, i – jeśli podobne dane nie były wykorzystywane nigdzie indziej – to co najwyżej „lekko kompromitująca” dla osób odpowiedzialnych za skrypt/stronę… ;-)
Dziś za to będzie o innym błędzie, tym razem może niezwiązanym bezpośrednio z bezpieczeństwem strony, ale potencjalnie niebezpiecznym z punktu widzenia biznesu, jakim jest sklep internetowy, który ma sprzedawać.
Spis treści w artykule
Too many requests from this IP. (Err: 4-NGX-0-429)
Niedawno robiłem większe zakupy związane m.in. z domowym wyrobem piwa i cydru (bez destylacji, a więc legalnie można w domu na własne potrzeby). Przy tej okazji odwiedziłem kilka sklepów, gdzie wybrałem sobie produktu, które postanowiłem kupić. Jednym z tych sklepów był sklep internetowy WinoDomowe.pl, działający w ramach platformy IAI-shop.com (sklep jako usługa, czyli typowy SaaS).
Z racji tego, że kolega też przymierzał się do tego typu zakupów, zaproponowałem mu, by przejrzał wieczorem ofertę sklepu, i jak coś go zainteresuje, to niech podeśle mi linki, wtedy rano zrobię wspólne zakupy (optymalizacja, czyli koszt wysyłki dzielimy na dwa ;-)).
Następnego dnia uruchomiłem komputer oraz przeglądarkę internetową, która automatycznie otworzyła mi kilka „zostawionych na później” stron w sklepie. I na tym zakończyły się moje zakupy we wspomnianym sklepie:
Otworzenie okna przeglądarki z zapisanymi na później pięcioma kartami wybranych produktów z oferty sklepu spowodowało wyświetlenie błędu:
Too many requests from this IP. (Err: 4-NGX-0-429)
Czyli z zakupów nici. Zapewne po jakimś czasie blokada automatycznie by ustała, ale w tej sytuacji postanowiłem wybrać ofertę konkurencyjnego sklepu, gdzie podobna operacja, tylko z jeszcze większą liczbą zapisanych kart przebiegła bez problemu.
Przy tej okazji pomyślałem, że skoro sklep internetowy ma sprzedawać, a ten konkretny – przynajmniej tym razem – nie był w stanie tego zrobić, i to z tak wydawałoby się abstrakcyjnego powodu, to postanowiłem sprawdzić, co to za ustrojstwo mnie zablokowało.
Ochrona anty-DDoS dla wszystkich sklepów IAI
Po krótkich poszukiwaniach trafiłem na informację na blogu IAI-chop.com o aktywacji „zabezpieczenia anty-DDoS dla wszystkich sklepów IAI”:
Mając na uwagę ochronę sklepów internetowych IAI, zwłaszcza w okresie przedświątecznego szczytu zakupowego, wprowadziliśmy program ochrony naszych klientów przed działaniami wrogimi mającymi na celu paraliżowanie stron internetowych w sposób świadomy lub nie (np. konkurencja która napisała skaner cen).
(…)
Wynikiem lat doświadczeń w tej kwestii było stworzenie w pełni automatycznego narzędzia, które zabezpiecza sklepy internetowe przed aktywnością ataków typu DOS (…) Warto podkreślić, że pod tym względem IAI dba wyjątkowo o bezpieczeństwo i dostępność sklepów, znacząco wyprzedzając trendy na rynku.
W tym momencie już wiedziałem, że dzięki „latom doświadczeń w kwestii tworzenia w pełni automatycznego narzędzie do zabezpieczenia sklepów internetowych” został skutecznie zablokowany mój 5-kartowy atak typu DOS, co pozwoliło zwiększyć „dostępność sklepu”, dzięki czemu sklep „znacząco wyprzedził rynkowe trendy”, odsyłając zainteresowaną osobę do konkurencji… ;-)
Na koniec jeszcze cytat z bardziej szczegółowym wyjaśnieniem mechanizmu działania blokady:
Rozwiązaniem, jakie wprowadziliśmy jest analizator ilości otwieranych stron dynamicznych na minutę. Wartość ta może być zmieniona przez operatora sklepu, jednak domyślnie wynosi ona 60 stron na minutę (średnio 1 strona na sekundę). Jest to wartość pozornie niska, jednak wykraczająca znacznie poza możliwości szybkiego klikania przez człowieka. Jeżeli system wykryje większą częstotoliwość (sic!) otwierania stron, blokuje dany adres IP na określoną ilość minut (domyślnie 10). Obie wartości można zmienić lub wyłączyć moduł całkowicie w panelu administracyjnym sklepu w zakładce ADMINISTRACJA \ Zarządzanie domenami i usługami systemowymi sklepu \ Zabezpieczenie przed atakami DDOS oraz skanerami cen.
Sama idea stojąca za tego typu rozwiązaniem wydaje się słuszna, choć w moim przypadku coś poszło nie tak. Dla mnie bez znaczenia jest to, czy w tym przypadku zawiodły ustawienia domyślne, czy klient dokonał ręcznej modyfikacji ustawień, i z powodu braku doświadczenia coś przeszacował. Istotne jest to, że przez to sklep stracił klienta. A patrząc po informacjach w internecie, nie był to pierwszy taki przypadek, ani nie był to też pierwszy sklep, który zaserwował tego typu blokadę potencjalnemu klientowi.
Nie ma też co ukrywać, że firma IAI robi to z dobrego serca, tylko w interesie swoich klientów. Bo skoro sklep internetowy dostarczany jest jako usługa (świadczona w modelu SaaS), to po stronie usługodawcy (IAI) jest zapewnić odpowiednio wydajne serwery, by sklepy klientów działały prawidłowo, nawet w okresie przedświątecznej gorączki. Choć mam też świadomość, że – zwłaszcza w tym okresie – faktycznie „lata po sklepach internetowych” sporo robotów/automatów, których celem jest skanowanie oferty na potrzeby różnych raportów, np. dla konkurencji.
- Wakacje składkowe ZUS a zawieszenie działalności gospodarczej, czyli uważaj, bo być może nie będziesz mógł skorzystać (w 2024) - 1970-01-01
- Przykładowy kalkulator wyceny usługi druku 3D, czyli nie tylko materiał się liczy - 1970-01-01
- Home Assistant 2024.10, czyli nowa karta „nagłówek” i niedziałający TTS w ramach usługi Google Cloud - 1970-01-01
Niestety, ale artykuł napisany jest nierzetelnie i redakcja portalu aspirującego do profesjonalnego powinna wymagać od swoich autorów research. Po pierwsze konfigurację parametrów przeprowadza każdy sklep osobno. Czyli to nie kwestia IAI-Shop.com tylko konkretnego sklepu. Po drugie, konfiguracja sklepu http://www.winodomowe.pl zakłada pojawienie się blokady po wysłaniu ponad 60 żądań w czasie 60 sekund, liczby całkowicie rozsądne. Blokada ustaje samoczynnie po 10 minutach. Na serio nie wiem co autor tego artykułu miał na myśli, ale jeżeli na Webinsider będą się pojawiały np. artykuły o tym, że strona się nie otworzyła, bo serwer odpowiadał zbyt wolno w trakcie DDoS oraz ilekroć inna strona się komuś nie otworzy z jakiegokolwiek powodu, to z góry gratuluję bardzo ciekawych treści.
Ach te poranki z Brand24… Tylko nie wiem czemu komentarz napisany pod innym artykułem niż powinien być (choć Brand24 wskazał na odpowiedni artykuł/link, a i sam autor komentarza odnosi się w nim do dobrego artykułu), i stąd może nie do końca prawdziwe zarzuty. W każdym razie przesunąłem komentarz, tak by nasza wymiana „zdań i poglądów” znalazły się pod właściwym artykułem.
Sam artykuł napisany moim zdaniem raczej rzetelnie, przynajmniej na tyle, na ile mogłem opisać konkretną sytuację, która mi się przydarzyła (moje odczucia, wrażenia). W artykule znajduje się również informacja, że poza domyślną konfiguracją ustawioną przez IAI globalnie, każdy sklep (osoba zarządzająca) może dokonać własnych ustawień:
Dalej jest też fragment o tym, że szybkie sprawdzenie wyszukiwarki internetowej pokazuje, że nie tylko ja trafiłem na taki błąd:
Niestety, ale nie wpadło mi do głowy, by w momencie uruchamiania przeglądarki z otwartymi kilkoma kartami do sklepu uruchomić np. jakieś proxy by dokładnie móc później przeanalizować, czy te kilka kart poprzez wysłanie „60 żądań w 60 sekund” (kwestia tez tego, czy „żądanie” traktujemy jako wyświetlenie całej strony, czy też jako żądanie konkretnego zasobu, czyli wielokrotnie w czasie wczytywania każdej strony) do sklepu nie spowoduje, że zostanę zablokowany, niczym jakiś „skaner cen”.
Co do wartości artykułu – oczywiście można na to patrzeć różnie, ale skoro piszę np. o braku zabezpieczeń, to uważam, że pasuje do tego również sytuacja, w której ktoś przykręci śrubę na tyle mocno, że grozi to zerwaniem gwintu. Ale z drugiej strony, jak będę chciał napisać np. o budowie karmika dla ptaków, to również to zrobię, i zapewniam, że znajdą się wśród czytelników Webinsider.pl osoby, których i ten temat zainteresuje. Pewnie nawet mógłbym – niczym na Facebooku – strzelić post o tym co właśnie jem na śniadanie, ale w tym akurat przypadku już mam wątpliwości, czy kogokolwiek by to zainteresowało… :-)
U nas na sklepie sie dzieje to samo. Klienci na bank uciekają a pracownicy, którzy odpalają mnóstwo stron na raz nie mogą pracować. Walczymy z IAI, zwiększają ustawienia itp. a i tak to nic nie daje.
Czyli lata mijają, a u nich – przynajmniej pod tym względem – jakby bez zmian. Uroki SaaSów – niby łatwo, szybko i relatywnie tanio można zacząć, ale z biegiem czasu zaczyna docierać, że te zalety obkupione pewnego rodzaju brakiem autonomii…