Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Podgląd źródeł
Forum PHP.pl > Forum > Przedszkole
hao
Stronę mam napisaną w php. Teraz okazuje się, że jest możliwy podgląd źródeł i np. niektórych elementów wymaganych do poprawnego działania strony... Do czego to może doprowadzić nie muszę mówić...

W jaki sposób można zabezpieczyć strone przed podglądem źródeł php?

Myślę, że nie potrzebuję dokładnego tutoriala, skryptów ani kodu.. tylko jakiegos małego nakierowania jak co i gdzie smile.gif

Pozdrawiam!
Kicok
hostingu z obsługą php
i z włączonym short_tags (jak jest wyłączone to zamień wszystkie <? na <?php
oraz plików php z rozszerzeniem *.php

tyle wystarczy. Pliki będą wykonywane po stronie serwera a do usera prześle się tylko czysty HTML. No chyba że sam w kodzie php zrobiłeś wyświetlanie kodu plików *.php, lub goście znają twoje hasło do FTP'a ;]
hao
Czyli mam rozumieć, że samo <? umożliwia w jakiś sposób podgląd kodu? W jaki sposób ?

Reszta jest tak jak napisałeś... jedynie ten tag.. A myślałem, że <? i <php czy <phpX to to samo smile.gif

Dzięki.

Jeszcze sobie sprawdzę, czy mi obsuguje short_tags ... ale to chyba standard? (mam konto na boo.pl )
hwao
Troche trudniejszy proble...

Po 1, jak te "pliki wyswietla".

Jezeli jakies pliki maja nie dzialac "same" tylko zalaczane to zrob jakies zabezpieczenie np:

Definiujesz w glownym pliku (odpalajacym)
  1. <?php
  2. define( 'test', 'true' );
  3. ?>

Potem w zalaczanych robisz
  1. <?php
  2. if( !defined( 'test' ) ) die();
  3. ?>


No i pozostale... ale to juz zalezy jak rozumiesz "wyswietlenie" zrodla.
hao
Bardzo fajny pomysł z define.

Podam przykład dość prostacki:

  1. <?php
  2. $login="hao";
  3. print ( "Cześć ".$login );
  4. ?>


Konwencjonalny podgląd źródla da zwykły kod html... ale czy poza tym ktokolwiek może w jakikolwiek sposób podglądnąć login? Czy jest to w 100% bezpieczne ?
Kicok
Po 1) boo.pl obsługuje krótkie tagi - wiem bo sam mam tam konto. Zresztą tak jak powiedziałeś jest to standard ;]

Po 2)
  1. <?php
  2. $login = 'Kicok';
  3. $haslo = 'moje_haselko';
  4.  
  5. echo('<b>'.$login.'</b>');
  6. ?>

Z tego kodu nikt hasła nie wyciągnie. Jeśli wchodzisz na http://strona.pl/skrypt.php to serwer WWW przesyła plik skrypt.php do interpretera php wm którym jest obrabiany, do pamięci na serwerze ładowane są dwa ciągi znaków, czyli mój login i hasło, wysyłany jest do serwera WWW wynikowy kod HTML, czyli w tym przypadku <b>Kicok</b> i zmienne usuwane są z pamięci. To wszystko dzieje się po stronie serwera i do tego nikt z zewnątrz nie ma dostępu. Do użytkownika zostanie przesłane jedynie <b>Kicok</b>.

A zobaczyć kod php da się jeśli plik skrypt.php nie zostanie wysłany do obróbki do interpretera php. Powody to właśnie może być źle skonfigurowany serwer WWW, złe rozszerzenie pliku lub po prostu brak php na serwerze ;]
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.