![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 9.07.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Witam serdecznie,
mam pytanie odnośnie odcięcia możliwości korzystania userom z php - w sytuacjach gdy występują błędy itp. Przykład jest prosty, dzieciak pisze skrypt php typu: Kod <?
$f=fopen("niematakiegopliku","r"); while(!feof($f)){ $s=fgets($f,80);print($s);}fclose($f); ?> Rzecz jasna, w tym przypadku pakuje nam się śmieć o wiadomej treści do pliku error_log, staje cały serwer (zwłaszcza gdy takich operacji na raz wykonywanych po "Odśwież" kilka), proces apacza jest ubijany z powodu nadmiernego użycia pamięci, serwis pada. Pytanie, jak zabezpieczyć się przed tego typu scriptkiddies, można owszem wywalic z konfiguracji php logowanie, ale jak wiemy to nas nie wybawia od problemu (zwłaszcza jak jesteśmy administratorami systemów publicznych), nie ma możliwości przerwania działania skryptu? Pozdrawiam serdecznie. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 786 Pomógł: 0 Dołączył: 18.03.2002 Skąd: Wroclaw/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Hej
Cytat Pytanie, jak zabezpieczyć się przed tego typu scriptkiddies, można owszem wywalic z konfiguracji php logowanie, ale jak wiemy to nas nie wybawia od problemu hmm jedyne co mi przychodzi do glowy na ta chiwile to ograniczenie ilosci pamieci na php w php.ini .. kiepskie ale na raize innych pomyslow nie mam. moze ktos inny podrzuci jakis lepszy pomysl.
Pozdrawiam -------------------- .. make web your home ..
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 9.07.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Zmodyfikowałem tak jak napisałem konfigurację php, jednakże nie chroni to całkowicie przed problemem, owszem nie zabija serwera logami podczas gdy user wklepie pewien 'malformed' kod / instrukcję, niestety, jak wiadomo nie jest to pełnia sukcesu...
Dzięki mimo wszystko za pomoc, poczekamy, być może ktoś będzie jeszcze coś wiedział. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 467 Pomógł: 13 Dołączył: 22.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
Mysle, ze metoda kurtza jest niezla (to sie robi chyba z --enable-memory-limit, czy jakos tak). Mozna jeszcze zmniejszyc maksymalny czas wykonywania, rzeby sie tych logow mnie zrobilo, albo ustawic (nie wiem czy sie da, ale chyba sie da), ze kazdy blad wywala skrypt.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 9.07.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat Mysle, ze metoda kurtza jest niezla (to sie robi chyba z --enable-memory-limit, czy jakos tak). Mozna jeszcze zmniejszyc maksymalny czas wykonywania, rzeby sie tych logow mnie zrobilo, albo ustawic (nie wiem czy sie da, ale chyba sie da), ze kazdy blad wywala skrypt.
Ok, czas, pamięć można w php.ini spokojnie zmodyfikować, natomaist wywalanie skryptu podczas błędu - wymagało by chyba ingerencji w kod źródłowy php, czego robić nie wolno. Cholernie jest to do tyłu, jeżeli nie da się tego skonfigurować pod względem właśnie "Wywal skrypt jeżeli błąd" ;/ |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 786 Pomógł: 0 Dołączył: 18.03.2002 Skąd: Wroclaw/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Hej,
Cytat Ok, czas, pamięć można w php.ini spokojnie zmodyfikować, natomaist wywalanie skryptu podczas błędu - wymagało by chyba ingerencji w kod źródłowy php, czego robić nie wolno.
Jest jeszcze jeden aspekt - jesli ktos ustawi limit nawet na poweidzmy 10 sekund to i tak kod w stylu [php:1:b149b1fce5]$i = 0;
Cholernie jest to do tyłu, jeżeli nie da się tego skonfigurować pod względem właśnie "Wywal skrypt jeżeli błąd" ;/ while(1){ include($i . "niemapliku.txt"); $i++; }[/php:1:b149b1fce5] sporo wygeneruje.... Pozdrawiam -------------------- .. make web your home ..
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 9.07.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Dokładnie, wydaje mi się słusznym wycięcie logowania błędów generowanych przez usera, chyba najbardziej owocna metoda.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 17.06.2025 - 22:08 |