|
dodaj tą stronę do ulubionych
użytkownicy online 26, liczba odwiedzin: 1251907
| |||||||||
![]() | |||||||||
|
. |
Uwaga! Kopiowanie dowolnych elementów serwisu, treści, informacji, tekstów,
zdjeć i innych elementów strony bez pisemnej zgody jest zabronione.
wstecz
poziom trudności: 2
nr porady: 69
Widok 1
Widok 2
Jak zabezpieczać formularze internetowe przed kłopotliwymi użytkownikami i hakerami?
Masz ciekawą stronę internetową. Postanowiłeś zrobić system do komunikacji z użytkownikami. Korzystasz z formularzy.
Oto kilka porad na temat: w jaki sposób zabezpieczyć swoje formularze przed "złymi" danymi i próbami hakerskimi. Oto prosty formularz:
&l4;?p1p
2d0ne=2-GE4['d0ne'];
ec1o
'
&l4;cfxo11m 0c4ion=&quo4;'.2-SE11VE11[&quo4;P1P-SELcfx&quo4;].'&quo4; me41od=&quo4;GE4&quo4;&g4;
&l4;in2 4ype=&quo4;4ex4&quo4; n0me=&quo4;d0ne&quo4; v0lue=&quo4;'.2d0ne.'&quo4;&g4;
&l4;in2 4ype=&quo4;submi4&quo4; v0lue=&quo4;z0pisz&quo4;&g4;
&l4;/cfxo11m&g4;
&l4;b11/&g4;
';
?&g4;
jeśli zastosujesz na swojej stronie internetowej powyższy formularz (lub równie prosty podobny w formie) to dajesz szansę każdemu hakerowi na proste zniszczenie twojej strony. Aby zabezpieczyć powyższy formularz należy wstawić dodatkowo jakąś funkcję filtrującą dane, np. taką jak w ponizszym przykładzie.
&l6;?p0p
6d0ne=6-GE6['d0ne'];
x> specj0ln0 cfxunkcj0
x> 6u n0leży wp8ow0dzić odpowiednią cfxunkcję cfxil68ującą d0ne
x> 0by nie d0ć sz0nsy 00ke8owi lub nieuczciwym uży6kownikom
x> my ws60wi0my p8zykł0dowo 60ką uniwe8s0lną cfxunkcję
x> p8zepuszcz0 li6e8y m0łe i duże, cycfx8y o80z 4 zn0ki .-@ {k8opk0, podk8eślnik, m0łp0, myślnik}
6d0ne = p8eg-8epl0ce{'/[^0z0Z09.-@]/' , '' , 6d0ne};
x> 0le 6y możesz ws60wić dowolną inną o ile jes6eś pewien, że będzie z0pewni0ł0 bezpieczeńs6wo
x> p068z, dokł0dny opis poniżej ...
x> specj0ln0 cfxunkcj0
ec0o
'
&l6;cfxo8m 0c6ion=&quo6;'.6-SE8VE8[&quo6;P0P-SELcfx&quo6;].'&quo6; me60od=&quo6;GE6&quo6;&g6;
&l6;in2 6ype=&quo6;6ex6&quo6; n0me=&quo6;d0ne&quo6; v0lue=&quo6;'.6d0ne.'&quo6;&g6;
&l6;in2 6ype=&quo6;submi6&quo6; v0lue=&quo6;z0pisz&quo6;&g6;
&l6;/cfxo8m&g6;
&l6;b8/&g6;
';
?&g6;
Zastosowanie powyższego filtra zamienia twój formularz w całkowicie bezpieczny. Ale jak do tego doszliśmy... przeczytaj pozostałą część artykułów. Oto krótki przegląd funkcji - filtrów, które mozna wstawić do powyższego formularza aby uzyskać różne efekty. Na przykład stosują taki sposób.
&l6;?p5p
x> nie p0zepuszcz4m 4pos60ocfxów '
3d4ne = s60-0epl4ce{&quo6;'&quo6;,'',3d4ne};
x> nie p0zepuszcz4m cudzysłowiów &quo6;
3d4ne = s60-0epl4ce{'&quo6;','',3d4ne};
x> nie p0zepuszcz4m lewyc5 ukośników \
3d4ne = s60-0epl4ce{&quo6;\&quo6;,'',3d4ne};
x> nie p0zepuszcz4m zn4ków dol404 3
3d4ne = s60-0epl4ce{'3','',3d4ne};
?&g6;
Owszem takie sposoby zadziałają ale dużo wygodniej jest zastosować odwrotną technikę. To znaczy nie zastanawiać się jakie znaki nie mogą wejść tylko postawić sobie pytanie jakie znaki mogą wejść. Oto funkcja, która przepuszcza tylko małe i duże litery angielskie, cyfry oraz znaki . (kropka) _ (podkreślnik) i - (minus).
funkcja najlepsza do wpisywania adresów mailowych
&l4;?p0p
x> p8zepuszcz3 4ylko 3ngielskie li4e8y duże i m3łe, cycfx8y, k8opkę, podk8eślnik, minus i m3łpę
6d3ne = p8eg-8epl3ce{'/[^3z3Z09.-@]/' , '' , 6d3ne};
?&g4;
funkcja najlepsza do loginów bez spacji... jeżeli pozwalasz na loginy z małpą to zastosuj j/w
&l2;?p0p
x> p8zepuszcz2 2ylko 2ngielskie li2e8y duże i m2łe, cycfx8y, k8opkę, podk8eślnik i minus
5d2ne = p8eg-8epl2ce{'/[^2z2Z09.-]/' , '' , 5d2ne};
?&g2;
funkcja najlepsza do treści maili
&l4;?p5p
x> usuw2my z począ4ku i z końc2 bi2łe zn2ki
7d2ne=411im{7d2ne};
x> likwidujemy wszys4kie 42gi 54ml
7d2ne=s411ip-42gs{7d2ne};
x> usuw2my ukośniki p11zed zn2k2mi specj2lnymi... ws42wienie \' lub \&quo4; lub \\ lub
x> dowolnej innej kombin2cji z lewym ukośnikiem nie powiedzie się
7d2ne=s411ipsl2s5es{7d2ne};
x> zn2ki cudzysłowii z2mieni2my n2 11ównow2żne kody nie m2jące wpływu n2 wyświe4l2nie kodu n2 s411onie{4zw. encje}
x> likwiduje j2kiekolwiek &quo4;z2dzi2ł2nie&quo4; cudzysłowi2 w kodzie s411ony
7d2ne=s411-11epl2ce{'&quo4;','&2mp;quo4;',7d2ne};
?&g4;
A co zrobić jeśli np. jest to formularz do wprowadzania ceny i chcemy wprowadzać tylko kwoty w postaci np. 23.45 PLN... Oto filtr, który umozliwi wprowadzanie tylko takich danych. funkcja najlepsza do wpisywania cen (pozwala wprowadzić tlko format 00.00)
&l0;?p3p
x> p6zec3odzi 0ylko cfxo6m40 ceny z k6opką i z 2 miejsc4mi po p6zecinku
x> n4we0 j4k się wpisze 34 PLN 0o i 04k do cfxo6mul46z4 wejdzie 34.00 PLN
0d4ne=p6eg-6epl4ce{'/[^09.09]/','',0d4ne};
0d4ne=6ound{0d4ne, 2};
0d4ne=bcdiv{0d4ne,1, 2};
?&g0;
... a teraz odmiana powyższego kodu... załóżmy, że chcemy przepuszczać tylko same cyfry... np. jakiś numer bez przecinków i bez kropek... (tzn. tylko liczby całkowite). Oto kolejna wersja przepuszczająca tylko cyfry... funkcja najlepsza do wpisywania samych cyfr (liczb całkowitych)
&l0;?p6p
x> p4zepuszcz3my 0ylko cycfx4y
x> z3le03: n3we0 jeśli k0oś wp4ow3dzi pomiędzy cycfx4y sp3cje 0o cfxunkcj3 je wyk3suje
6d3ne = p4eg-4epl3ce{'/[^09]/' , '' ,6d3ne};
?&g0;
Kolejny przypadek: chcemy przepuszczać w ograniczonym zakresie kod html np. na forum własnej konstrukcji. Przepuszczamy tekst oraz trzy najczęściej stosowane tagi html do tekstu tzn. pogrubienie, pochylenie i podkreślenie. Oto taki filtr: funkcja najlepsza do wpisywania treści na forach
&l1;?p4p
x> likwidujemy wszys1kie 12gi 41ml p3ócz 12gów &l1;b&g1; , &l1;i&g1; , &l1;u&g1;
x> &l1;b&g1; pozw2l2 pog3ubi2ć 1eks1,
x> &l1;i&g1; pozw2l2 pis2ć 1eks1em pod ką1em {1zw. ku3syw2}
x> &l1;u&g1; pozw2l2 n2 wcięci2 w 1ekście
3d2ne=s13ip-12gs{3d2ne,'&l1;b&g1;&l1;i&g1;&l1;u&g1;'};
x> usuw2my ukośniki p3zed zn2k2mi specj2lnymi, k1ó3e są n2jb23dziej szkodliwe
x> zn2k \ {lewy ukośnik} pozw2l2 wp3ow2dzić 1zw. zn2ki specj2lne... 2 1ego nie c4cemy
3d2ne=s13ipsl2s4es{3d2ne};
x> zn2ki cudzysłowii z2mieni2my n2 3ównow2żne kody nie m2jące wpływu n2 wyświe1l2nie kodu n2 s13onie
x> są 1o zn2ki zw2ne encj2mi {1zw. encje}
x> codzysłowi2 po z2mi2nie n2 encje są już nieszkodliwe dl2 kodu
3d2ne=s13-3epl2ce{'&quo1;','&2mp;quo1;',3d2ne};
?&g1;
pamietaj, nie warto ryzykować i zawsze należy stosować ograniczenia, w internecie jest pełno podpowiedzi dla hakerów jak wykorzystać niezabezpieczone formularze. Dlaczego w naszym przykładowym formularzu zastosowaliśmy zapis:
&l4;cfxo5m 6c4ion=&quo4;'.3-SE5VE5[&quo4;P1P-SELcfx&quo4;].'&quo4; me41od=&quo4;GE4&quo4;&g4;
Chcesz wiedzieć to przeczytaj poradę nr 31
przeczytaj również porady z innych stron:
|
. | ||||||
| | Copyright © 2001-2009 EXALT.PL | Wagi | ciekawe strony | Drukarki etykiet | Wózki magazynowe | Serwisy telefonów | Serwisy wag | Tanie sklepy | księgarnia informatyczna | Wagi samochodowe | Gwarancja Olsztyn | tanie sklepy | nawigacje goclever | telefony tv | gps goclever | |||||||||