![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 715 Pomógł: 47 Dołączył: 5.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Mam walidacje zarówno po stronie klienta jak i serwera.
Zajrzałem wczoraj do swojego kodu źródłowego i się lekko przeraziłem widząc jak w kodzie tym js wypluwa wszystkie dane jak i operacje obiektów przerabiane przez js-wszystkie wyrażenia regularne używane do walidacji,nazw,id walidatorów jak i inputów ,które są walidowane ,są widoczne jak na dłoni dla potencjalnego "użyszkodnika" w kodzie źródłowym. Mam ,takie pytanie czy użyć javascript obfuscation ,czy lepiej użyć Ajaxa który ,będzie pobierał dane z inputa wysyłał na serwer,gdzie funkcja zwaliduje i zwróci wynik spowrotem do Ajaxa ,który wyświetli odpowiednie komunikaty po stronie klienta.Wiem,że to będzie generowało dodatkowy ruch na stronie ,ale chyba nie powinny być widoczne w kodzie źródłowym wyrażenia regularne które są ,po stronie serwera. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
To zależy do czego tych wyrażeń używasz, jeśli jest to sprawdzenie poprawności maila lub adresu url to czemu miałbyś to chować, są to tak popularne regexpy że nikt nawet nie zajrzy w kod żeby ci je 'ukraść'
![]() -------------------- Nawet świnka może wejść na drzewo kiedy jest chwalona :)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 715 Pomógł: 47 Dołączył: 5.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Cytat jeśli jest to sprawdzenie poprawności maila lub adresu url to czemu miałbyś to chować, są to tak popularne regexpy że nikt nawet nie zajrzy w kod żeby ci je 'ukraść' Byłoby dobrze gdyby ktoś tylko chciał ukraść -nie miałbym nic przeciwko temu gdyby wykorzystał to do swoich celów, ale jakby szukał "dziury"w całym,to miałby wszystko podane na tacy. Walidacja ,to jedna z najważniejszych metod poprawiających bezpieczeństwo naszej strony,dlaczego ma być widoczna w kodzie źródłowym? ![]() ![]() Nie widząc tego,strzela wtedy w ciemno,jest to chyba jakaś forma dyskomfortu dla niego. Ten post edytował Rid 21.04.2011, 20:47:41 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Ja swoją walidację mogę pokazać każdemu, nawet tą po stronie serwera bo jestem pewien co do jej działania. Jeśli ty nie jesteś pewien i uważasz, że można znaleźć w niej dziurę to znaczy że źle to zroiłeś i nawet niepokazywanie kodu użytkownikom nie uchroni cię w pełni przed planowanym atakiem
![]() -------------------- Nawet świnka może wejść na drzewo kiedy jest chwalona :)
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 589 Pomógł: 91 Dołączył: 22.05.2008 Skąd: Gliwice Ostrzeżenie: (0%) ![]() ![]() |
Ja bym wykorzystał oba sposoby - obfuscation i ajaxa. Natomiast tak jak @kowal pisze, jeśli wyrażenia regularne masz dobrze przemyślane to nie powinieneś się obawiać publikacji kodu. Jedyna obawa jest taka, że nie znasz jakiegoś smaczka językowego, gdzieś w samym języku jest luka. Prostym przykładem może być http://gynvael.coldwind.pl/?id=360.
Ajaxa wykorzystałbym tylko z wygodnictwa. Jeśli nie masz biblioteki do walidacji formularzy w PHP i porta jej na JS to musiałbyś takiego porta zrobić... Jeśli Ci zależy na czasie, formularz nie jest głównym elementem strony to wysyłasz jedynie requesta do skryptu po stronie serwera. Co do zaciemniania kodu to jeśli Ci zależy, jak sama nazwa wskazuje, na zaciemnianiu kodu to to rób. -------------------- Moja gra - scraby.io
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 715 Pomógł: 47 Dołączył: 5.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Jeśli ty nie jesteś pewien i uważasz, że można znaleźć w niej dziurę to znaczy że źle to zroiłeś i nawet niepokazywanie kodu użytkownikom nie uchroni cię w pełni przed planowanym atakiem. Nie testowałem jeszcze całości ,więc mam lekkie obawy,po za tym chyba będzie bardziej bezpieczne jak kod będzie ukryty. To tak jak z powiedzeniem: Cytat "Co mnie nie zabije, to mnie wzmocni."
Ten post edytował Rid 22.04.2011, 13:21:17 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 17.06.2025 - 10:40 |