![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 0 Dołączył: 15.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam forumowicze, mam problem odnośnie do pewnego kodu HTML Otóż kiedy wchodzę na moją stronę zabezpieczoną hasłem KLIK pokazuję mi się pole na w które trzeba wpisać hasło --> "norq" Kiedy zostanie podane poprawne hasło wyświetli się komunikat "Podane hasło jest poprawne!" oraz następnie ukaże mi się treść strony, ale gdy hasło zostanie podane nieprawidłowe wyświetli mi się komunikat "Podane hasło jest błędne!" ale w tym problem że i tak mi się ukaże treść strony, Chodzi mi o efekt, gdy zostanie podane nieprawidłowe hasło, zamiast ujawniać treść strony ma przekierować do punktu w którym trzeba wpisać je jeszcze raz. Niżej ujawniam kod strony: Kod <html lang="pl">
<head> <title>kurshtml</title> <script language="JavaScript"> <!-- var password = prompt("Podaj hasło:"); if (password == "norq") //hasło obecne { alert("Podane hasło jest poprawne!"); } else { alert("Podane hasło jest błędne!"); java script:history.back() } --> </script> </head> <body> <center>Skrypt PHP PASS 1.0 by NorQ(wersja testowa)</center> //Treść strony </body> </html> Ten post edytował phpion 15.07.2011, 13:59:28
Powód edycji: [phpion]: Zmieniłem tag.
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Pomijając fakt, że Twoje zabezpieczenie to żadne zabezpieczenie (do przejścia w 2 sekundy) to po błędnie podanym haśle przekieruj użytkownika na inną stronę:
PS: I zmień nazwę z PHP PASS na JS PASS bo z PHP to nie ma nic wspólnego. PS2: Przenoszę do przedszkola bo na PHP to ciut za mało (IMG:style_emoticons/default/wink.gif) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 0 Dołączył: 15.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
Nadpisałem twój kod z linijką
Kod java script:history.back() A zapomniałem dodać słowo "Dzięki!" (IMG:style_emoticons/default/Lkingsmiley.png) Ten post edytował NorQ 15.07.2011, 13:51:02 |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 0 Dołączył: 15.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
O.o dzięki to zaoszczędza kod... ale to okno można chyba ominąć w niektórych przeglądarkach... ;{
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 518 Pomógł: 18 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
wystarczy w dowolnej przegladarce wcisnac pokaz kod i juz wiemy jakie masz haslo
zrob to w php i sesji |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 91 Pomógł: 0 Dołączył: 15.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
Ej, a czy można to okno hasła edytować na takie co niema opcji omijaniu ? (IMG:style_emoticons/default/haha.gif)
@EDIT Na takim jednym forum znalazłem taki dobry kod (IMG:style_emoticons/default/haha.gif) (posiada funkcję ukrywania hasła i linku) Kod <?php //wysyłanie nagłówka http przed ewentualnymi informacjami o błędach dot. zmiennych z konfiguracji header('Cache-Control: no-cache, must-revalidate'); header('Expires: Tue, 01 Jan 1980 00:00:00 GMT'); /* Ochrona hasłem -------------- >v1.1 -------------- >changelog: 1.1 -zmiana domyślnej wartości $nazwa_pliku z $PHP_SELF na $_SERVER['PHP_SELF'] -drobne uzupełnienia w jakże obfitej dokumentacji;) -dodanie zabezpieczenia przed cache'owaniem strony -dodanie przekierowania przez nagłówek HTTP jako pierwszego w kolejności -------------- >Problemy? Sugestie? yahoo89@o2.pl -------------- >Copyright: "Róbta co chceta" */ //Konfiguracja //------------ //Kilka podstawowych opcji. // //1. Nazwa obecnego pliku // Żeby wysłać hasło na serwer w celu stwierdzenia, czy jest ono // poprawne, potrzebna jest nazwa pliku, który aktualnie edytujesz. PHP // potrafi samodzielnie podać tę nazwę, ale taka możliwość może zostać // wyłączona przez administratora serwera. Zatem, jeżeli po wpisaniu // w formularzu hasła i wciśnięciu klawisza [Enter] pojawi się błąd // (najprawdopodobniej HTTP 404) wpisz w poniższej linii nazwę obecnie // edytowaniego pliku, np. $nazwa_pliku='haslo.php'; $nazwa_pliku=$_SERVER['PHP_SELF']; //2. Treść nagłówka // Tutaj należy wpisać treść nagłówka, który pojawi się nad polem do // wpisywania hasła, np. $tresc_naglowka="Wprowadź hasło:"; $tresc_naglowka="Podaj hasło:"; //3. Link do strony docelowej // Tutaj należy podać link* do strony, do której użytkownik zostanie // przekierowany po podaniu hasła (razem z nazwą protokołu, // tj. z "http://"), np. $link="http://www.domena.com/album"; // // *patrz: Słów kilka o bezpieczeństwie $link="http://radio-drive.cba.pl"; //4. Komunikat w przypadku błędnego hasła // Tutaj należy podać treść komunikatu, jaki zostanie wyświetlony po // wprowadzeniu błędnego hasła, np. $komunikat_bledu="Złe hasło!"; $komunikat_bledu="Złe hasło! Spróbuj jeszcze raz:"; //5. Poprawne hasła // Lista poprawnych haseł w formacie $hasla[]="hasło1"; // Jeżeli ma być kilka poprawnych haseł wpisz je w nowych liniach, tj. // $hasla[]="poprawne hasło 1"; // $hasla[]="poprawne hasło 2": // $hasla[]="poprawne hasło 3"; // itd. $hasla[]="pawian31"; //6. Ukrywanie hasła // Wpisz $ukrywanie_hasla=false, jeżeli w polu przeznaczonym na hasło // ma się pojawić dokładnie to, co wpisałeś lub $ukrywanie_hasla=true; // jeżeli hasło w tym polu ma być zastąpione przez *** (tzn. zostanie // użyty znacznik 'input' typu 'text' (dla false) lub typu 'password' // (dla true)); $ukrywanie_hasla=true; // //Słów kilka o bezpieczeństwie. // //Ten skrypt działa na takiej zasadzie, że po podaniu hasła udostępnia //link i dokonuje przekierowania. Dlatego dobrze by było umieścić stronę //docelową w jakimś katalogu o losowej nazwie, tj. jeżeli strona //chroniona znajdowała by się pod adresem //http://www.domena.com/zdjęcia/index.htm, to, nie znając //adresu, można się łatwo domyślić, gdzie się ona znajduje i na nic //będzie takie zabezpieczenie, natomiast jeżeli strona będzie się //znajdowała pod adresem www.domena.com/4dc6hba89d8070ef/index.htm to //nie tak łatwo na nią wejść nie znając adresu i nasze małe //zabezpieczenie może przynieść jakieś tam efekty. // //v1.1: //W skrypcie znalazło się zabezpieczenie przed indeksowaniem strony //przez boty wyszukiwarek internetowych oraz cache'owaniem przez //przeglądarki. Dotyczy to tak strony z prośbą o podanie hasła, jak //i strony generowanej po jego podaniu. Zabezpieczenie jest //realizowanie poprzez odpowiednie modyfikacje treści sekcji 'meta' //oraz nagłówków http obydwu stron. Niemniej jednak modyfikacje te są //tylko sugestią dla botów, serwerów proxy i przeglądarek, i nie są //w stanie zabronić im gromadzenia treści tej strony. Może to być ważne //w przypadku gdy w historii przeglądarki zostanie zapisana strona //wygenerowana po podaniu przwidłowego hasła (tj. ta z linkiem do //chronionego zasobu) //------------------- //Koniec konfiguracji ?> <?php if (isset($_POST['haslo'])) { if (in_array($_POST['haslo'], $hasla)) { //nagłówek przy przekierowaniu header('Cache-Control: no-cache, must-revalidate'); header('Expires: Tue, 01 Jan 1980 00:00:00 GMT'); header("Location: $link"); //przekierowanie echo("<html>\r\n <head>\r\n\t <meta http-equiv=\"content-type\" content=\"text/html; charset=iso-8859-2\"> <meta http-equiv=\"pragma\" content=\"no-cache\"> <meta http-equiv=\"expires\" content=\"Tue, 01 Jan 1980 00:00:00 GMT\"> <meta http-equiv=\"cache-control\" content=\"no-cache\"> <meta name=\"robots\" content=\"none\"> <meta name=\"googlebot\" content=\"noarchive\"> <meta http-equiv=\"refresh\" content=\"3; url=$link\">\r\n\t <title>Przekierowanie</title>\r\n </head>\r\n <body>\r\n <p>Trwa przekierowanie... Jeżeli przeglądarka nie przekieruje cię automatycznie, kliknij <a href=\"$link\">tu</a>.</p>\r\n </body>\r\n </html>"); exit; } else { //komunikat błędu $komunikat=$komunikat_bledu; } } else { //komunikat podania hasła $komunikat=$tresc_naglowka; } ?> <html> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="expires" content="Tue, 01 Jan 1980 00:00:00 GMT"> <meta http-equiv="cache-control" content="no-cache"> <meta name="robots" content="none"> <meta name="googlebot" content="noarchive"> <title>Hasło</title> </head> <body> <form action="<?php echo($nazwa_pliku) ?>" method="post" accept-charset="iso-8859-2"> <h2 align="center"> <br><br> <?php echo($komunikat); ?> <br><br> <input type="<?php if ($ukrywanie_hasla) {echo('password');} else {echo('text');} ?>" name="haslo" size="30"> </h2> </form> <script type="text/javascript"> <!-- //co by na polu do wpisywania hasła automatycznie ustawiał się focus document.forms[0].elements[0].focus(); --> </script> </body> </html> Ej, a czy by wypaliło zabezpieczenie hasła w kodzie ? Mam namyśli includowanie go czy coś w tym stylu ... I wtedy nadać odpowiedni CHMOD ? Nie wiem czy wypali ... (IMG:style_emoticons/default/haha.gif) Phion, kod który skróciłeś:
Nie jest bardziej bezpieczny, teraz samo pokazuje opcję obejścia po błędnie wpisanym haśle. zostaję przy:
;D Ten post edytował NorQ 15.07.2011, 14:11:56 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
eee ale co to za zabezpieczenie skoro w 5 sekund, można odkryć twoje supertajne * n+1 / poufne hasło?
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 729 Pomógł: 346 Dołączył: 4.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Zabezpieczenie js to nie jest zabezpieczenie, raz, że każdy może zobaczyć źródło strony, dwa każdy może zmodyfikować kod js podczas przeglądania strony, trzy każdy może wyłączyć js.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 25.08.2025 - 03:54 |