Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak oszukać przekierowanie
Forum PHP.pl > Forum > PHP
tapis
Czesc
Czy jest mozliwe zrobienie czegos takiego:
Mam adres www.jakasstrona1.pl i ktos zarejestrowal sobie
domene www.jakasstrona2.pl gdzie jest umieszczone przekierowanie,
czyli wpisujac adres www.jakasstrona2.pl ladujemy w www.jakasstrona1.pl.
Jak moge sie przed czyms takim zabezpieczyc?Jak zabronic takich przekierowan?
Czy da sie to tylko zrobic tylko na serwerze www, czy mozna w skryptach strony?

Z gory dzieki za odp.
Wojtek Kaliszak
aarambo.gif
reod
Znaczy jak zabronienie?
Jak nie chesz, żeby ktoś odwiedzał twoją stronę z adresu np adres.pl, to tworzysz prosty warunek z $_SERVER['HTTP_REFERER']
hwao
W tablicy $_SERVER masz klucz w ktorym jest podane skad uzytkownik przyszedl (poprzednia strona).
tapis
Tak o to mi chodzi, ale jak napisac kod w php, zeby np. wchodzac na strone, np. index.php wyswietlil sie komunikat o bledzie.

dzieki
pozdrawiam
Wojtek
skowron-line
Cytat(reod @ 22.09.2006, 17:54:46 ) *
Jak nie chesz, żeby ktoś odwiedzał twoją stronę z adresu np adres.pl, to tworzysz prosty warunek z $_SERVER['HTTP_REFERER']

  1. <?php
  2. if($_SERVER['HTTP_REFERER'] == 'jakas_strona'){echo'blad';}
  3. ?>

jesli o to chodzi
tapis
OK , rozumien, tylko ze moj index.php jest miesznina kodu php i html, tzn.

<?
//kod php
?>
blok html
<?
//kod php
?>
blok html
...

Gdyby moj index.php byl konstrukcji:
<?
//kod php
?>

To instrukcja zabraniajaca :

if($_SERVER['HTTP_REFERER'] == 'jakas_strona')
//operacja
echo 'blad';
else
//kod strony

wtedy bylaby idealna.

Czy nie mozna zastosowac zabronienia przekierowania
w przypadku mojego index.php?

dzieki, pozdrawiam
Wojtek
janus
To wpisz na początku strony
  1. <?php
  2. if($_SERVER['HTTP_REFERER'] == 'jakas_strona'){die ('blad');}
  3. ?>


Wtedy po wykryciu zabronionej domeny zatrzyma wykonywanie strony. Nie będzie potrzebny żaden else.
tapis
Niestety nie dziala ten sposob:-(

pozdrawiam
Wojtek
eai
  1. <?php
  2. if(eregi('jakasstrona2',$_SERVER['HTTP_REFERER'])){die ('blad');}
  3. ?>


sprobuj tak
tapis
No niestety, az glupio jest mi pisac nie dziala. rolleyes.gif

Chyba, ze ma znaczenie wpis 'jakasstrona2'.
Ale mysle, ze nie poniewaz probowalem wszystkiego:
http://www.jakasstrona2.pl
www.jakasstrona2.pl
http://jakasstrona2.pl
www.jakasstrona2.pl

pozdrawiam
Wojtek
eai
Utworz sobie plik index z tym co Ci napisalem.
Uży Curl" title="Zobacz w manualu php" target="_manual i wyslij sobie naglowek referer jakasstrona2
i zobaczysz ze zadziala. Wszystkie te przyklady dzialaja jesli referer faktycznie jest jakasstrona2.pl jesli z tej strony nie wchodzisz na ten plik index to normalne ze instrukcja nie zadziala, wiec zeby sobie przetestowac uzyj Curl i zobacz co Ci wyrzuci.
tapis
snitch.gif takie rozwiazanie jak biblioteka curl nie wchodzi w gre, poniewaz
nie mam bezposredniego dostepu do serwera i nie moge tam nic instalowac,
no i nie znam curl-a. sad.gif

pozdrawiam
wojtek
eai
Nie zrozumiales mnie.
  1. <?php
  2. if(eregi('jakasstrona2',$_SERVER['HTTP_REFERER'])){die ('blad');}
  3. ?>
sprawdza czy REFERER zawiera jakasstrona2, a Curl mial byc tylko przetestowaniem.

Druga sprawa REFERER zawsze da sie oszukac wlasnie przez np CURL, ale nie wszyscy umieja wiec jest to jakies czesciowe zabezpieczenie.
free
Jak to zastosowac w przypadku gdy jakasstrona ma aliasy:
www.jakasstrona2.pl
www.jakasstrona2.go.pl
www.jakasstrona2.prv.pl
Jak zabronic wejscei dla kilku adresow ?
eai
  1. <?php
  2. if(eregi('jakasstrona2.go.pl',$_SERVER['HTTP_REFERER'])){die ('blad');}
  3. ?>

itd...
free
Eai rozumiem ze w kodzie nalezy powtarzac 2 linijke kodu ? A moze zastosowac tu tablice ?
eai
  1. <?php
  2. $tablica[] = 'jakasstrona2.pl';
  3. $tablica[] = 'jakasstrona2.go.pl';
  4. $tablica[] = 'jakasstrona2.prv.pl';
  5. //....
  6. $tablica[] = 'itd...alias.pl';
  7. foreach ($tablica as $val){
  8. if(eregi($val,$_SERVER['HTTP_REFERER'])){die ('blad');}
  9. }
  10. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.