Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Bezpieczeństwo tego GET'a
ArekJ
post 2.12.2008, 16:06:08
Post #1





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

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


Witam,
chciałbym się dowiedzieć czy skrypt ten jest bezpieczny:
  1. <?php
  2. $akcja = $_GET['akcja'];
  3. if($akcja != NULL AND file_exists($akcja.".php")){
  4. include ''.$akcja.'.php';
  5. echo $tekst;
  6. }
  7. else{
  8. echo 'TEST';
  9. }
  10. ?>

Jeżeli nie to jakie trzeba zastosować w nim zmiany?

Ten post edytował ArekJ 2.12.2008, 16:08:55


--------------------

"Do bramy, bo pada deszcz
Gdy zaćpiesz przejdzie dreszcz
I wróci, wróci tęcza barw
I pęknie twój wrogi świat" R. Riedel
Go to the top of the page
+Quote Post
Gacek89
post 2.12.2008, 16:11:30
Post #2





Grupa: Zarejestrowani
Postów: 77
Pomógł: 8
Dołączył: 2.11.2007
Skąd: Katowice

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


nie jest bezpieczny
tz tak mi se wydaje
niepowinno sie includowac rzeczy z get, ale moge sie mylić bo zstosowałes tutaj sprwdzenie czy taki plik istnieje

Ten post edytował Gacek89 2.12.2008, 16:13:18
Go to the top of the page
+Quote Post
ArekJ
post 2.12.2008, 16:13:35
Post #3





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

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


Cytat(Gacek89 @ 2.12.2008, 16:11:30 ) *
nie jest bezpieczny


No dobrze, ale można by było trochę bardziej rozbudować to zdanie? Dlaczego nie jest bezpieczny? Jak go zabezpieczyć?

@up Gacek89 edytował post w trakcie wysyłania mojego tongue.gif
Czekam na dalszze uwagi i ew. pomoc

Ten post edytował ArekJ 2.12.2008, 16:14:43


--------------------

"Do bramy, bo pada deszcz
Gdy zaćpiesz przejdzie dreszcz
I wróci, wróci tęcza barw
I pęknie twój wrogi świat" R. Riedel
Go to the top of the page
+Quote Post
Darti
post 2.12.2008, 16:14:55
Post #4





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


bo zrobie u siebie plik pod adresem: http://moserwis/aaa.php a tobie podam zmienną w get akcja=http://moserwis/aaa


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
ArekJ
post 2.12.2008, 16:16:57
Post #5





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

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


No, a nie zabezpiecza wykonania tego skryptu to, że to co ma się wyświetlić przechowuję w zmiennej $tekst?


--------------------

"Do bramy, bo pada deszcz
Gdy zaćpiesz przejdzie dreszcz
I wróci, wróci tęcza barw
I pęknie twój wrogi świat" R. Riedel
Go to the top of the page
+Quote Post
wookieb
post 2.12.2008, 16:18:44
Post #6





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Sprawdz jeszcze czy plik nie zaczyna sie od "http://"


--------------------
Go to the top of the page
+Quote Post
decha-design
post 2.12.2008, 16:20:53
Post #7





Grupa: Zarejestrowani
Postów: 415
Pomógł: 46
Dołączył: 26.05.2007
Skąd: Sandomierz

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


nie, bo to i tak wykona skrypt zewnetrzny a i w zmiennej $tekst bedzie NULL ...

korzystaj z basename" title="Zobacz w manualu PHP" target="_manual i ze sprawdzaniem czy taki plik istnieje w danych katalogu (np. tak ./includes/xxx gdzie xx to dany plik) ... a jak masz mało tych plików ktore chcesz includowac ... to switch

Ten post edytował decha-design 2.12.2008, 16:22:18


--------------------
Go to the top of the page
+Quote Post
Gacek89
post 2.12.2008, 16:25:41
Post #8





Grupa: Zarejestrowani
Postów: 77
Pomógł: 8
Dołączył: 2.11.2007
Skąd: Katowice

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


sprawdz tez jak reaguje na includowanie samego siebiem czy sie skrypt tak niezapentli
Go to the top of the page
+Quote Post
ArekJ
post 2.12.2008, 16:29:24
Post #9





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

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


No i właśnie... zapentla się... A jak zrobić, żeby sprawdzał czy plik nie zaczyna się od http://?

EDIT:
Zrobiłem takiego if'a:
  1. <?php
  2. if($akcja != NULL AND file_exists($akcja.".php" AND $akcja != http)){
  3. ?>

Ale mam wrażenie, że to nie ma prawa działać, a inaczej nie umime...

Ten post edytował ArekJ 2.12.2008, 16:35:01


--------------------

"Do bramy, bo pada deszcz
Gdy zaćpiesz przejdzie dreszcz
I wróci, wróci tęcza barw
I pęknie twój wrogi świat" R. Riedel
Go to the top of the page
+Quote Post
wookieb
post 2.12.2008, 16:35:24
Post #10





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Cytat(ArekJ @ 2.12.2008, 16:29:24 ) *
A jak zrobić, żeby sprawdzał czy plik nie zaczyna się od http://?


http://php.net/strpos


--------------------
Go to the top of the page
+Quote Post
ArekJ
post 2.12.2008, 16:47:43
Post #11





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

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


Zastosowałem to co podał wookieb i wyszło mi takie coś:

  1. <?php
  2.                                      $akcja = $_GET['akcja'];
  3.                                      $test1 = $akcja;
  4.                                      $test2 = 'http://';
  5.                                      $test3 = strpos($test1, $test2);
  6.                                      if($akcja != NULL AND file_exists($akcja.".php" AND $test3 === false)){
  7.                                      include ''.$akcja.'.php';
  8.                                      echo $tekst;
  9.                                      }
  10.                                      else{
  11.                                      echo 'TEST';
  12.                                      }
  13.                                      ?>

Ale jak sprawdzić czy to działa?


--------------------

"Do bramy, bo pada deszcz
Gdy zaćpiesz przejdzie dreszcz
I wróci, wróci tęcza barw
I pęknie twój wrogi świat" R. Riedel
Go to the top of the page
+Quote Post
bełdzio
post 2.12.2008, 17:04:25
Post #12





Grupa: Zarejestrowani
Postów: 690
Pomógł: 81
Dołączył: 6.04.2005
Skąd: Szczecin

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


http://www.beldzio.com/bezpieczenstwo-dostepu-do-plikow


--------------------
Go to the top of the page
+Quote Post
ArekJ
post 2.12.2008, 17:10:31
Post #13





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

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


O @bełdzio dzięki za świetny artkył skorzystam! Temat chyba skończony, te zabezpieczenia powinny wystarczyć smile.gif


--------------------

"Do bramy, bo pada deszcz
Gdy zaćpiesz przejdzie dreszcz
I wróci, wróci tęcza barw
I pęknie twój wrogi świat" R. Riedel
Go to the top of the page
+Quote Post
artur_dziocha
post 2.12.2008, 17:14:56
Post #14





Grupa: Zarejestrowani
Postów: 320
Pomógł: 53
Dołączył: 18.09.2007
Skąd: Radom

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


Temat: Bezpieczenstwo_skryptow_PHP
a może ten temat??
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 13:29