Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zabezpieczenie strony hasłem
wolfen3
post
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 31.03.2005

Ostrzeżenie: (0%)
-----


  1. <form action="page.php" method="post">
  2. <p>Podaj hasło<br><br>
  3. <input type="pass" NAME="haslo" />
  4. <input type="submit" VALUE="OK">
  5. </form>





  1. <?php
  2.  
  3.  
  4. function checkPass()
  5. {
  6. $haslo = $_POST["haslo"];
  7. if($haslo <> "MOJE SUPER TAJNE HASLO"){
  8. return false;
  9. }
  10. else{
  11. return true;
  12. }
  13. }
  14.  
  15. if(isSet($_POST["haslo"]) && checkPass())
  16. {
  17.  
  18. include ('costam.php');
  19. }
  20.  
  21. else
  22. {
  23.  
  24. //echo 'Nieprawidłowe hasło <a href="index.php">Spróbuj ponownie</a>';
  25. include 'bad.php';
  26. }
  27.  
  28. ?>



Witam !

Czy jest jakakolwiek możliwość aby obejść taki skrypt hasła ?

Ten post edytował wolfen3 5.10.2009, 18:43:57
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
MateuszS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

Ostrzeżenie: (0%)
-----


hasla odgadnac sie nie da za bardzo ale wystarczy wejsc na adres costam.php i mamy panel

w ogole nie zabezpieczasz sesja logowania ;p


--------------------
O! Zimniok :P
Go to the top of the page
+Quote Post
wolfen3
post
Post #3





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 31.03.2005

Ostrzeżenie: (0%)
-----


ok ale musiałbyś zgadnąć ten adres aby na niego wejsc prawda ?

a jak zabezpieczyc taką sesje ?
Go to the top of the page
+Quote Post
Fifi209
post
Post #4





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(wolfen3 @ 5.10.2009, 22:32:03 ) *
ok ale musiałbyś zgadnąć ten adres aby na niego wejsc prawda ?

To chyba logiczne
Cytat(wolfen3 @ 5.10.2009, 22:32:03 ) *
a jak zabezpieczyc taką sesje ?

Nie taką sesję, tutaj w ogóle nie używasz mechanizmu sesji. Poczytaj w pierwszym lepszym kursie co to są sesje.


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
djbarca
post
Post #5





Grupa: Zarejestrowani
Postów: 231
Pomógł: 1
Dołączył: 22.04.2007
Skąd: Rypin

Ostrzeżenie: (0%)
-----


nawet jak ktos Ci zgadnie sciezke dostepu do pliku z panelem zawsze mozesz zadefiniowac zmeinna na stronie np

  1. define(BLOKUJEMY,true);

a w pliku z panelem dodac
  1. if (!defined('BLOKUJEMY') || !BLOKUJEMY) {
  2. header('HTTP/1.1 301 Moved Permanently');
  3. header('Location: http://'.$_SERVER['HTTP_HOST'].'/');
  4. }
Go to the top of the page
+Quote Post
wolfen3
post
Post #6





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 31.03.2005

Ostrzeżenie: (0%)
-----


kurde no i znów ktoś mi wszedł na moją stronę nie znając hasła które było w tym skrypcie. Jak to dobrze zabezpieczyc ?

Jak to jest możliwe że on to przechodzi ?

Wiem że w jakiś sposób omija to hasło, bo po kliknięciu w przycisk zaloguj przechodzi do innej podstrony php która loguje IP które wpisało hasło prawidłowo oraz nieprawidłowo

Ten post edytował wolfen3 6.10.2009, 18:31:32
Go to the top of the page
+Quote Post
Fifi209
post
Post #7





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(wolfen3 @ 6.10.2009, 19:24:29 ) *
kurde no i znów ktoś mi wszedł na moją stronę nie znając hasła które było w tym skrypcie. Jak to dobrze zabezpieczyc ?

Jak to jest możliwe że on to przechodzi ?

Wiem że w jakiś sposób omija to hasło, bo po kliknięciu w przycisk zaloguj przechodzi do innej podstrony php która loguje IP które wpisało hasło prawidłowo oraz nieprawidłowo

A czytałeś w ogóle co to są sesje ?


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
wolfen3
post
Post #8





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 31.03.2005

Ostrzeżenie: (0%)
-----


Cytat(fifi209 @ 6.10.2009, 18:15:21 ) *
A czytałeś w ogóle co to są sesje ?


Tak czytałem. Jak to jest możliwe że przeszedł on ten prosty skrypt ? Znał hasło czy nie ?
Go to the top of the page
+Quote Post
Fifi209
post
Post #9





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(wolfen3 @ 6.10.2009, 20:18:48 ) *
Tak czytałem. Jak to jest możliwe że przeszedł on ten prosty skrypt ? Znał hasło czy nie ?


Nas się pytasz czy znał ? Może to Twój kumpel? Czytałeś o sesjach, dlaczego nie zastosowałeś ich ?


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
wolfen3
post
Post #10





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 31.03.2005

Ostrzeżenie: (0%)
-----


Nie mój kumpel, a w poprzednim pytaniu chodziło mi o to czy w JAKIKOLWIEK sposób mógł to hasło poznać ? Bo skoro jest ono zapisane w pliku php to raczej nie, prawda ? Nie zastosowałem sesji bo ich nie rozumiem.
Go to the top of the page
+Quote Post
blooregard
post
Post #11


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Nie rozumiesz również odpowiedzi na Twoje pytania.
@MateuszScirka dokładnie podał Ci odpowiedź, jak można obejść Twoje "zabezpieczenie":
Cytat
hasla odgadnac sie nie da za bardzo ale wystarczy wejsc na adres costam.php i mamy panel



--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
wolfen3
post
Post #12





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 31.03.2005

Ostrzeżenie: (0%)
-----


Cytat(blooregard @ 6.10.2009, 21:18:32 ) *
Nie rozumiesz również odpowiedzi na Twoje pytania.
@MateuszScirka dokładnie podał Ci odpowiedź, jak można obejść Twoje "zabezpieczenie":


Aha, a powiedz mi , skoro ty wszystko rozumiesz, w jaki sposób osoba ta może poznać adres tej strony która jest w include ?
Go to the top of the page
+Quote Post
blooregard
post
Post #13


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
a powiedz mi , skoro ty wszystko rozumiesz,

Ja nigdzie nie napisałem, że wszystko rozumiem.
A mogła odgadnąć metodą prób i błędów, tak samo, jak odgaduje się najpopularniejsze hasła. Po prostu ktoś miał fart, wpisując "costam.php". No i trafił.


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
wolfen3
post
Post #14





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 31.03.2005

Ostrzeżenie: (0%)
-----


Cytat(blooregard @ 6.10.2009, 21:42:07 ) *
Ja nigdzie nie napisałem, że wszystko rozumiem.
A mogła odgadnąć metodą prób i błędów, tak samo, jak odgaduje się najpopularniejsze hasła. Po prostu ktoś miał fart, wpisując "costam.php". No i trafił.


Ja pier.... to costam.php to sobie wpisałem dla PRZYKŁADU exclamation.gif! tak jak wszystkie inne nazwy w tym kodzie. Skrypt skopiowałem z pierwszej lepszej stronki na której ludzie chwalili go że jest "bomba". A mimo to ktoś cwańszy nie wiem w jaki sposób umie go obejść. Po pierwszym "włamie" pozmieniałem wszystkie nazwy plików które biorą udział w "logowaniu". Drugi "włam" - znów pozmieniałem, hasło, nazwy plików. Trzeci "włam" zmieniłem własnie na ten skrypt który tutaj skopiowałem. Dzisiaj znów był czwarty włam. Teraz już sobie z tym poradziłem bo logowania na .htaccess cwaniak nie przejdzie. Ale BARDZO ciekawi mnie w jaki sposób on obszedł ten skrypt, skoro na 100% nie zna strony z panelem, na 99% nie zna hasła.
Go to the top of the page
+Quote Post
blooregard
post
Post #15


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
Ja pier.... to costam.php to sobie wpisałem dla PRZYKŁADU

Widocznie to, co wpisałeś nie dla przykładu, a w żywym skrypcie, też nie było trudne do odgadnięcia.


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
wolfen3
post
Post #16





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 31.03.2005

Ostrzeżenie: (0%)
-----


Cytat(blooregard @ 6.10.2009, 21:59:51 ) *
Widocznie to, co wpisałeś nie dla przykładu, a w żywym skrypcie, też nie było trudne do odgadnięcia.


heh...


czy myślisz że nazwę pliku typu "3eufow.php" lub "3dfj32iofj2o3.php" łatwo odgadnąć ?

ale nawet nie chodzi o to. Jest plik index.html który wysyła post'em hasło na skrypt mojplik.php (nazwa przykładowa)
w mojplik.php jest funkcja właśnie ta podana wyżej czyli

  1. function checkPass()
  2. {
  3. $haslo = $_POST["haslo"];
  4. if($haslo <> "tajnehaslo"){
  5. return false;
  6. }
  7. else{
  8. return true;
  9. }
  10. }


dalej jest warunek if
  1. if(isSet($_POST["haslo"]) && checkPass())


Jeżeli hasło jest OK, to zapisuje IP do pliku tekstowego ze jest prawidlowo zalogowany i includuje mu plik "tralalalala.php"
Jezeli haslo jest złe, to zapisuje IP do pliku i includuje inny plik.

I własnie widze po tym pliku tekstowym, IP tego kolesia. IP jest z warszawskiego GTS. Potem gdy go przekierowuje na plik "tralalalal.php" to wpisuje jakieś pierdoły i próbuje zamówić rzecz za którą nie zapłacił smile.gif

Czyli zakańczając ten wątek na forum. Jedyną możliwością jest to że ten ktoś zna hasło ?

Ten post edytował wolfen3 6.10.2009, 23:27:40
Go to the top of the page
+Quote Post
deha21
post
Post #17





Grupa: Zarejestrowani
Postów: 544
Pomógł: 5
Dołączył: 18.08.2009

Ostrzeżenie: (0%)
-----


Nie znam się aż tak ale dzisiaj widziałem jakiś temat i takiego znaku <> niestosuje się w php, zamiast tego jak dobrze pamiętam != .

Możesz to zabezpieczyć m.in hashowaniem hasła (np. MD5 lub SHA1). Do tego jeszcze filtracja danych.


--------------------
Go to the top of the page
+Quote Post
Dumdas
post
Post #18





Grupa: Zarejestrowani
Postów: 65
Pomógł: 7
Dołączył: 8.10.2009
Skąd: Lubin

Ostrzeżenie: (0%)
-----


Nazwę pliku może generować skrypt (tak samo, jak hasło) lecąc po kolei po wszystkich literach i cyfrach. Problem jest tlyko taki, że im więcej liter ma hasło(i nazwa pliku), tym dłużej trzeba, by je odgadnąć. Nie do złamania (z powodu czasu) są w ten sposób hasła 15 znakowe i większe (dla 15 znakowego hasła z samych liter małych i cyfr jest 1555098314991537910888601 kombinacji).
Ale wracając do zabezpieczenia:
1. Sprawdzaj za każdym razem hasło zapisane w sesji (jeżeli nie rozumiesz, to ułatwię: na początku każdego pliku dajesz session_start(); i potem $_SESSION['haslo'] = $_POST['haslo']winksmiley.jpg.
2. Sprawdzaj IP wchodzącego przy każdym odwiedzeniu pliku (czyli ktoś wchodzi. Nie ma jeszcze zapisanego w sesji IP - zapisuj. Jest już zapisane - porównaj ze starym). Jeżeli IP się zmieni - exit();
3. Ustaw w pliku z formularzem logowania sesje $_SESSION['form'] = true; i sprawdzaj w panelu, czy $_SESSION['form'] == true; Jeżeli nie - exit();

Możliwości jest naprawdę wiele, tylko chwilę trzeba pomyśleć.
To, co pisałem teraz, to było z palca wymyślane, żebyście się nie czepiali szczegółów winksmiley.jpg
Go to the top of the page
+Quote Post
wolfen3
post
Post #19





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 31.03.2005

Ostrzeżenie: (0%)
-----


Dzięki ! To się nazywa konkretna odpowiedz bez dyrdymałów smile.gif Jeszcze raz dziękuje i pozdrawiam.
Go to the top of the page
+Quote Post
Wolfie
post
Post #20





Grupa: Zarejestrowani
Postów: 686
Pomógł: 0
Dołączył: 10.11.2008
Skąd: Łódź

Ostrzeżenie: (20%)
X----


wolfen, jak Dumdas pomogl to wcisnij mu pomogl aaevil.gif tak na marginesie winksmiley.jpg

Ten post edytował Wolfie 10.10.2009, 12:34:39
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 06:34