Tworzenie stron WWW, a ataki hakerskie.

SONY DSC

HAKER

Kto to taki? Jest to anonimowa osoba w sieci Internet, dokonująca ataków i kradzieży danych. Przedstawione powyżej zdjęcie, reprezentuje grupę Hakerów o pseudonimie Anonymous, będącą jedną z największych tego rodzaju ugrupowań.

Ataki w sieci dokonywane są praktycznie codziennie. Dotyczą stron internetowych, aplikacji webowych należących do instytucji bankowych, rządowych, politycznych, finansowych itp. Zaledwie kilka dni temu, dosyć skrycie portale o tematyce hakerskiej poinformowały świat, o ataku hakerskim przeprowadzonym na jednym z mało znanych banków w Polsce – Plus Banku. Haker wykradł dane osobowe, numery kart płatniczych, historie operacji bankowych. W zamian za ich nieujawnianie zaoferował okup w wysokości 200 lub 400 tys. zł w zależności od terminu przelania należności na jego konta. Zaoferował też wskazanie luk systemu, aby Bank mógł je załatać, by móc się obronić przed kolejnym atakiem tego typu. Sprawa obecnie jest w toku i informują o niej na bieżąco portale zajmujące się tematyką bezpieczeństwa w sieci.

Tworzenie stron WWW, a bezpieczeństwo

Mało osób zdaje sobie sprawę z tego, że najbezpieczniejszą stroną internetową jest taka, która nie jest połączona z bazą danych. Formularze komunikujące się z bazą danych są zaproszeniem dla hakera do przeprowadzenia ataku na stronie. Niestety są też podstawą działania wielu stron i aplikacji, a ten fakt powoduje, że trzeba umieć je odpowiednio zabezpieczyć, aby zniechęcić hakera do przeprowadzenia ataku.
W Internecie aż roi się od stron internetowych, które nie mają żadnych, lub posiadają tylko znikome zabezpieczenia. Podstawowy atak zwany jest przez środowisko informatyczne jako atak SQL Injection, czyli wstrzyknięcie kodu SQL do formularza strony. Wyobraźmy sobie zatem prosty formularz logowania na stronę, zawierający pola takie jak login i hasło:


 

<form method=”post” action=”login.php”>
Login: <input type=”text” name=”login”><br>
Hasło: <input type=”password” name=”password”><br>
<input type=”submit” value=”Logowanie”><br>
</form>


Kiedy użytkownik wypełni formularz i wywoła akcję „Logowanie”, do serwera WWW zostanie wysłane następujące żądanie:

SELECT USER_ID FROM USER WHERE (login=’Mateusz1975′) AND (password=’mati345′)

Użytkownik Mateusz1975 (właściciel konta) loguje się swoimi danymi na stronę internetową i cały proces kończy się powodzeniem.

Załóżmy teraz, że do tego samego konta próbuje wkraść się Haker. Co robi? Dokonuje prostego ataku SQL Injection wpisując login: Mateusz1975, a w polu hasło:

‚ OR ‚1’=’1

Wówczas do serwera zostanie wysłane następujące żądanie:

SELECT USER_ID FROM USER WHERE (login=’Mateusz1975′) AND (PASS=” OR ‚1’=’1′)

Zinterpretujmy teraz to zapytanie: Wybierz id użytkownika z tabeli User gdzie login jest równy Mateusz1975, a hasło jest puste LUB 1 = 1. Drugi warunek 1 = 1 będzie zawsze spełniony w związku z czym Haker bez problemu zaloguje się na konto tego użytkownika.

Przy pomocy tego typu ataków, można m.in.:

* zalogować się na konto administratora strony internetowej, aplikacji webowej, czy sklepu internetowego,

* skasować całą bazę danych,

* wyłączyć serwer na którym postawiona jest strona internetowa.

Aby zabezpieczyć się przed atakiem, wszystkie dane wprowadzane do formularza należy traktować jako niezaufane sprawdzając ich poprawność.

* definiujemy znaki jakie użytkownik może wprowadzić w pole login i hasło. Tym samym nie pozwalamy na wprowadzenie znaku –>

* używamy specjalnych funkcji języka MySQL do filtrowania danych formularza

* inne możliwości o których nie będę się aż tak szczegółowo tu rozpisywał.

Dodatkowe typy ataków, które są dokonywane przez Hakerów to np.:

* cracking – łamanie haseł przy pomocy algorytmów szyfrujących

* sniffing – podsłuchiwanie, podkradanie haseł np. poprzez aplikacje szpiegowskie robiące zrzuty ekranów monitora komputerowego, lub sczytujące znaki z klawiatury użytkownika

* DoS – zarzucenie serwera niezliczoną ilością zapytań w celu jego przeciążenia, zawieszenia,

* moles – wiadomości emailowe, instalujące aplikacje szpiegowskie na komputerze ofiary

* wiele innych.

Jak widać tworzenie stron WWW to nie tylko znajomość grafiki i języka programowania. Bardzo dużą uwagę należy poświęcić bezpieczeństwu strony WWW w szczególności jeśli posiada ona dostęp do baz danych.

Cennik stron internetowych, nie powinien zawierać informacji odnośnie kosztów zabezpieczenia aplikacji czy strony WWW przed atakiem Hakera. Ta usługa powinna być nieodłączną częścią całości wykonywanego zlecenia przez programistę.

Reasumując:

Jeśli chcecie Państwo zlecić tworzenie stron WWW z dostępem do BD danemu programiście, nie zapomnijcie wypytać go o aspekty bezpieczeństwa. Niestety wśród potencjalnych wykonawców mogą trafić się tacy, którzy nie mają o tym zielonego pojęcia.

Może Ci się również spodoba

1 Odpowiedź

  1. Bowwe napisał(a):

    Strona internetowa wcale nie musi być droga jak widać na przykładzie http://bowwe.com/pl/cennik

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *