A A A

PHP - dyrektywa include

Czy dyrektywa include() może wpłynąć na bezpieczeństwo aplikacji PHP?

Instrukcja „include” pozwala wczytać plik, którego adres został podany w jej argumencie. Służy ona do wczytania i wykonania kodu z określonego pliku w trakcie wykonywania skryptu.

Użycie tej dyrektywy może być niebezpieczne kiedy aplikacja przesyła adres strony w postaci zmiennej poprzez protokół HTTP za pomocą metody GET, np:

$strona=$_GET['adres'];
include($strona);

index.php?adres='http://adres_strony.php'

Istnieje niebezpieczeństwo w tym przypadku, że modyfikując adres strony w przeglądarce możliwe jest wywołanie dowlonej strony WWW.

Aby temu zaradzić możemy zastosować na przykład taką instrukcję:

include('./'.$_GET['katalog']);
?>


W ten sposób będziemy mogli dołączać jedynie pliki, które znajdują się w określonym w skrypcie katalogu. Wówczas nie można będzie załączyć pliku z innego serwera.
Generalnie, ważne jest to, aby nigdy nie zezwalać użytkownikowi na dostęp do jakiegokolwiek pliku oraz odpowiednie przefiltrowanie wszystkiego co pochodzi z zewnątrz.

 

Uważasz, że artykuł był ciekawy i chcesz otrzymywać powiadomienia o moich kolejnych wpisach lub projektach?
Wpisz swoje imię oraz adres e-mail a następnie kliknij "ZAPISZ MNIE"

Twoje imię:


Adres email:


Bezpieczeństwo PHP
Człowiek - Komputer

Podobne wpisy

 

Komentarze

Umieść swój komentarz jako pierwszy!
Gość
wtorek, 26 marzec 2019

Zdjęcie captcha

Najnowsze komentarze

Gość - Andy SSL i Joomla! w Smarthost
03 styczeń 2019
Dzięki, jak zwykle dobra robota! Warto dodać, że instalacja certyfikatu SSL nie zapewnia bezpieczeństwa transmisji danych. To jest możliwe po wdrożeniu polityki bezpieczeństwa w firmie. Co do SSL - to...
Gość - Henryk Jak utworzyć menu poziome w szablonie protostar?
02 styczeń 2019
Robię punkt po punkcie i nie wyświetla się poziome menu Nie wiem gdzie tkwi błąd i co robię źle?Jeśli to możliwe to proszę o pomocps. posiadam książkę "Joomla! 3x" i tu również niema pomocy Pozdrawiam...
Gość - Joanna Jak utworzyć własny szablon dla Joomla! nie dotykając kodu? EF4 cz.2
09 grudzień 2018
Czy jest jakaś możliwość, żeby zmienić układ top-bar i tej linii, w której jest logo? Tam niby są flexibloki ale nie można zmienić ich szerokości, a tego potrzebuję bardzo. Jak tego dokonać???
Gość - Informatyk Tworzenie bazy danych w CPanelu na Smarthost - instalacja Joomla!
19 listopad 2018
Dziękuje za ten wpis joomla zawsze była dla mnie problematyczna
Gość - Sławomir DJ Image Slider
04 listopad 2018
co robić? Zdjęcia wyświetlają się pionowo, jedno pod drugim. Żadna zmiana w opcjach, nic nie daje??? Pomożecie?