Sklepy internetowe posiadają znacznie częściej dane wrażliwe, niż zwykłe strony internetowe. Każdy sklep internetowy działający w sieci przechowuje dane swoich klientów.
Niekiedy zawarte są, w nich dane dotyczące kart kredytowych, a zawsze dane osobowe klientów. Dlatego też to właśnie sklepy internetowe powinny być najbezpieczniejszymi platformami, w sieci internetowej, którym użytkownicy mogą zaufać i powierzyć, w przechowywanie swoje dane.
W internecie znajdziecie wiele artykułów na temat bezpieczeństwa sklepu internetowego w sieci, większość z nich opowiada o certyfikatach SSL jakoby wykupienie certyfikatu rozwiązywało wszystkie problemy, a bariera bezpieczeństwa sklepu internetowego stawała się nie do złamania. Nic bardziej mylnego. Artykuły tego typu co najwyżej usypiają czujność właścicieli sklepów internetowych. Certyfikat SSL uniemożliwia „podsłuch danych”, ale co jeśli ktoś już wejdzie do środka? W dzisiejszym artykule opowiem o zagrożeniach czyhających na Twój sklep internetowy, konsekwencjach ataków i o tym jak się przed tymi zagrożeniami bronić.
Konsekwencje włamań do sklepu internetowego
Są różne konsekwencje wynikające z skutecznie przeprowadzonego ataku hakerskiego. W każdym przypadku dotyczą sprzedawcy, a bardzo często też jego klientów. Do najczęstszych skutków skutecznie przeprowadzonego ataku hakerskiego możemy zaliczyć:
wykradzenie danych klientów,
wykradzenie danych kart kredytowych,
wykorzystanie kart kredytowych klientów przez przestępców
zniszczenie sklepu (usunięcie plików lub bazy danych)
wgranie wirusa na sklep internetowy, którego celem jest zainfekowanie komputerów klientów odwiedzających sklep internetowy
wszczepienie do treści linków spamujących
wgranie plików wysyłających spam
wgranie backdoor’u
Trzeba przyznać że najrzadszą konsekwencją jest fizycznie usunięcie sklepu internetowego z sieci. To tak jakby wirus zabijał od razu swoje ofiary. Lepiej się przecież pożywić dotąd do puki można. Przestępcom włamującym się na sklepy internetowe bardziej zależy na jak najbardziej ukrytym działaniu. Czyli haker będzie wolał systematycznie wykradać nam dane, systematycznie wkładać spam na naszym sklepie. Te czynności przynoszą mu dochody i od strony ekonomicznej są najbardziej sensowne. Dane osobowe, dane kart kredytowych są sprzedawane zainteresowanym przestępcom, spam promuje strony spamerskie często z treścią dla dorosłych.
Czym jest backdoor?
W tłumaczeniu na polski to „drzwi powrotne”. Jest to plik z kodem umożliwiający ponowne włamanie, w jeszcze prostszy sposób. Zasada działania jest prosta. Plik wywołany na przykład przez odpowiedni adres przekazuje hakerowi dane dostępowe do bazy danych lub umożliwia wgranie plików na serwer. Praktycznie przy każdym skutecznym włamaniu instalowany jest backdoor oraz pliki służące do wysyłania spamu. Plik umożliwiający ponowne wejście są zawsze ukryte w innych folderach zawierających pliki systemowe sklepu internetowego, pliki nazywane są tak by nie wzbudzały podejrzeń, a właściciel sklepu bał się je usunąć, w obawie że usunie plik przez który sklep internetowy przestanie działać.
Sklep internetowy który rozsyła spam w imieniu sprzedawcy
Tak, to możliwe. Często na serwer wgrywane są pliki umożliwiające wysyłanie spamu. Dlaczego? Narzędzia z których korzystasz do odbierania poczty mają swoją czarną listę adresów IP serwerów, domeny z których maile filtrują. Wysłanie spamu z innego „białego” IP, domeny, skutkuje skutecznym dostarczeniem go do odbiorców. Wiele firm hostingowych blokuje wysyłanie maili gdzie adres mailowy nie jest utworzony od domeny na której wysyłający skrypt się znajduje, ale dla przestępcy to nie problem, może użyć Twojego adresu i nie musi znać wcale loginu i hasła. Funkcja php mail() na takie rzeczy pozwala.
Sklep internetowy, który pada ofiarą ataku hakerskiego, konsekwencje tego odczuwa bardzo długo. O ile regulamin sklepu internetowego chroni właściciela przed ponoszeniem odpowiedzialności za wyciek danych osobowych i kart kredytowych to i tak prowadzi do utraty ogromnej ilości klientów, jeżeli nie wszystkich. Klienci przestają kompletnie ufać takiej platformie sprzedażowej.
To nie koniec problemów.
Jeżeli haker umieścił na serwerze plik backdoor i nie usuniemy go to sytuacja będzie się powtarzała. Jeżeli z naszego adresu mailowego wysyłany był spam to możliwe, że nasza domena trafiła na czarną listę. W takim przypadku informacje o zamówieniach i statusie zamówienia również będą filtrowane. Wszystko co będzie wysyłane z naszej domeny będzie dla bezpieczeństwa użytkowników poczty odsiewane.
Jeżeli na naszej stronie został wykryty wirus większość przeglądarek nie pozwoli użytkownikowi wejść na nasz sklep internetowy. Wyświetli za to komunikat na czerwonym tle że nasz sklep internetowy rozsyła wirusy. Klient widząc coś takiego będzie trzymał się od takiego sklepu internetowego z daleka.
Wirusy, spam na sklepie pozostawiony przez hakera w postaci dziwnych linków daje jasny sygnał wyszukiwarce Google, że ten sklep internetowy nie może być pokazywany użytkownikom sieci. Leci w dół, nie zależnie od tego jakie wyniki miał i ile właściciel wydał na pozycjonowanie.
„Odkręcanie” konsekwencji włamania trwa. Ile? Jest to sprawa indywidualna dla każdego sklepu internetowego.
Co z hasłami użytkowników?
Kolejnym słabym elementem bariery bezpieczeństwa są sami klienci. Większość klientów posiada to samo hasło do wszystkiego i to takie jeszcze łatwe do zapamiętania i żeby łatwo się pisało. Badania monitorujące bezpieczeństwo, w sieci jasno pokazują, że użytkownicy czują się zdecydowania za bezpiecznie. Prezentuje to poniższa tabela najpopularniejszych haseł używanych do logowania w sklepach internetowych.
Miejsce w rankingu | Hasło | Liczba użytkowników | Czas potrzebny na złamanie |
1 | 123456 | 2 543 285 | Mniej niż sekundę |
2 | 123456789 | 961 435 | Mniej niż sekundę |
3 | picture1 | 371 612 | 3 godziny |
4 | password | 360 467 | Mniej niż sekundę |
5 | 12345678 | 322 187 | Mniej niż sekundę |
6 | 111111 | 230 507 | Mniej niż sekundę |
7 | 123123 | 189 327 | Mniej niż sekundę |
8 | 12345 | 188 268 | Mniej niż sekundę |
9 | 1234567890 | 171 724 | Mniej niż sekundę |
10 | senha | 167 728 | 10 sekund |
Włamanie na konto użytkownika nie szkodzi samemu sklepowi internetowemu, niestety zawsze nadszarpuje jego wiarygodność. Nawet jeśli użytkownik stosował najpopularniejsze hasło w Polsce „querty”. Nie mówi się o ty że użytkownik stosował słabe hasło, tylko o tym że odbyło się włamanie na konto użytkownika.
Ale czy właściciel sklepu internetowego nie może z tym nic zrobić? Oczywiście że może w końcu sklep należy do niego. Musi jedynie zdawać sobie sprawę z zagrożeń. Dobrym rozwiązaniem jest zmuszanie użytkownika do stosowania trudniejszych haseł np. takiego, które zawiera i duże litery i małe, cyfry i znaki specjalne. Najlepszym jednak rozwiązaniem jest stosowanie mechanizmów typu „Brutal Force”. System sklepowy Opencart ma taki mechanizm na wyposażeniu domyślnym.
Jak działa Brutal Force?
Tak jak logowanie w banku. Masz określoną ilość prób po których dostęp już do samego logowania zostaje zablokowany na określony czas.
Rodzaje ataków hakerskich
Na początku artykułu wspomniałem, że posiadanie certyfikatu SSL wcale nie zabezpiecza sklepu internetowego. Certyfikat SSL zabezpiecza sesję użytkownika oraz komunikację ze sklepem internetowym. Jest wiele innych rodzajów ataków, które są niezwykle groźne.
XSS – polega na wszczepieniu kodu do przeglądarki użytkownika. Pozwala na przechwycenie sesji użytkownika, plików cookies, haseł. Główną przyczyną czyniącą sklepy internetowe podatne na tego typu ataki jest niefiltrowanie danych wysyłanych np. poprzez formularze. Pamiętajmy że wyszukiwarka w sklepie internetowym to też formularz, panel logowania, rejestracji.
DoS – polega na obciążeniu sklepu internetowego tak by nie był dostępny dla innych użytkowników. Haker lub grupa hakerów wysyła do aplikacji zapytania, które obciążają ją wykorzystują dostępne zasoby serwera przez co kolejnym odwiedzającym sklep internetowy przestaje się uruchamiać. Domyślnie sklepy internetowe nie są wyposażane w funkcje ochrony przed atakami DoS. Istnieją jednak rozszerzenia, które po instalacji taką ochronę dają. Ataki DoS nie nie niszczą sklepów internetowych, jedynie ograniczają do nich dostęp. Po ustaniu ataku wszystko wraca do normy.
Code Execution – polega na wywoływaniu komend, w systemie hostującym sklep internetowy. Haker nie musi mieć uprawnień do wywoływania komend, wystarczy, że sklep internetowy ma na przykład możliwość wywołania komendy ping. Jeżeli mamy na serwerze za wysokie uprawnienia dla plików to napastnik może za pomocą tego rodzaju ataku odczytać ich zawartość. Odczytanie pliku konfiguracyjnego oznacza na uzyskanie dostępu do bazy danych. Jest to jedna z najczęstszych metod ataku dokonywana na sklepach internetowych opartych na WooCommerce.
Sql Injection – bardzo popularna metoda ataku i niezwykle groźna. Sql Injection skutecznie przeprowadzone na sklepie internetowym, może oddać pełne uprawnienia administratora napastnikowi. Atak Sql Injection polega na wstrzyknięciu kodu sql przez niezabezpieczony formularz i wywołanie go. Atak trwa naprawdę krótko, a efekty są opłakane: wyciek danych klientów, utrata konta administratora.
Directory Traversal – polega na nieautoryzowanym odczytywaniu plików na serwerze, do których użytkownik dostępu nie ma i nie powinien mieć. Atakujący ma możliwość ujrzenia treści pliku. Jeżeli jest w stanie odczytać plik konfiguracyjny, który zawiera dane potrzebne do połączenia się z bazą danych, sklep internetowy zostaje przejęty. Przyczyną ataku jest słaba lub brak walidacji danych, które są wprowadzane przez odwiedzającego sklep internetowy.
CSRF – polega na zmuszeniu przeglądarki najczęściej administratora sklepu internetowego do wywołania odpowiedniego zapytania ze swojej przeglądarki. Zapytanie wykonywane poprzez adres może być przemycone np. w adresie obrazka z awatarem. Napastnik wykorzystuje administracyjną sesję.
Rodzajów ataków jest znacznie więcej, wymienione jednak należy znać, ponieważ to te w 95% sprawiają, że bariera ochronna w sklepach internetowych zostaje złamana.
Jak dochodzi do ataków hakerskich?
Wyżej w różnych rodzajach ataków już wskazałem winowajcę większości ataków hakerskich. Główną przyczyną najgroźniejszych ataków takich jak sql Injection, xss, directory traversal, scrf to niezabezpieczone formularze przyjmujące dane. Nie chodzi tutaj o captcha tylko o to co dalej z tymi danymi robi system. Sklep internetowy dane wejściowe, wyjściowe powinien filtrować. Brak filtracji powoduje że haker może np. zamiast loginu przez formularz przesłać złośliwy kod.
Ale jeżeli chodzi o najpopularniejsze silniki dla sklepów internetowych to winę ponoszą głównie dodatkowe rozszerzenia instalowane w sklepie internetowym przez administratorów.
Kolejnym powodem, który sprawia, że sklep internetowy jest podatny na ataki to jego przestarzały system.
Wiele właścicieli sklepów internetowych podchodzi do sprawy w ten sposób „kto by chciał się włamywać do mojego małego butiku internetowego?”. Oczywiście. Porządny haker ma znacznie więcej ciekawych zajęć niż rozpracowywanie małego sklepiku internetowego. Rzeczywistość jest jednak nieco inna.
Gdy w oprogramowaniu luka bezpieczeństwa wychodzi na światło dzienne, tworzone są booty wędrujące po sieci, które potrafią rozpoznać system z którego dany sklep internetowy korzysta, wersję i czy sklep internetowy korzysta np. z rozszerzenia z daną luką w bezpieczeństwie. Dochodzi następnie do automatycznego wykorzystania luki i włamania. Szybciej boot włamuje się do sklepu niż przemieszcza pomiędzy sklepami. Jednego dnia haker może włamać się do tysięcy sklepów internetowych, wśród nich może być też mały butik internetowy.
Jak chronić sklep internetowy przed atakami hakerskimi?
Przede wszystkim powinniśmy tworzyć sklepy internetowe na sprawdzonych, przetestowanych platformach e-commerce. Platforma e-commerce powinna być najświeższym stabilnym wydaniem. O ile ostatnia aktualizacja nie dotyczyła błędów, w bezpieczeństwie to zaleca się odczekanie nawet kilku miesięcy przed wdrożeniem najnowszej aktualizacji, aż do czasu porządnego przetestowania wersji przez użytkowników sieci. Dalej powinniśmy z instalacją rozszerzeń zwrócić się o pomoc do specjalistów. Rozszerzenie powinno być sprawdzone, w jaki sposób filtruje dane, czy nie ma luk w bezpieczeństwie.
Kolejną ważną rzeczą jest tworzenie regularnie kopii bezpieczeństwa, tak aby sklep można było szybko przywrócić do działania przy uprzednim zlikwidowaniem luki w bezpieczeństwie.
I jeszcze sprawa użytkowników. Użytkowników należy uświadamiać o zasadach bezpieczeństwa w sieci. Warto stosować mechanizm „Brutal Force”, lub odpowiednią walidację hasła – zmusić delikatnie klientów do ustawiania bardziej skomplikowanych haseł.
Profilaktyka, w zakresie poprawy bezpieczeństwa sklepu internetowego, jest znacznie łatwiejsza i tańsza niż naprawa szkód.