• logo_cipsoft
    Nowe serwery zostały otwarte 19 Lut 2025:
    Noctalia (Open PvP) Ignitera (Open PvP) us_logo Xybra (Open PvP)

PHP [WA?NE!] Zabezpieczenie PHP

Status
Zamknięty.

Baabuseek

Advanced User
Dołączył
Sierpień 17, 2008
Posty
449
Liczba reakcji
43
Temat kieruj? do wszystkich, kt?rzy s? ?wi?cie przekonani, ?e "b??dy" z nowszych serwer?w WWW najlepiej obchodzi? instaluj?c ich starsze wersje.
Czas z tym sko?czy?.
Szczeg?lnie na tym w?a?nie forum zauwa?y?em multum post?w kt?re poniek?d maj? pom?c, a w rzeczywisto?ci nios? ze sob? katastrofalne skutki.

Zawsze m?wi?em, ?e w jakim? celu wydaj? nowe wersje Xampp'a. Jak zawsze mia?em racje.
Potraktujcie to jako przestrog?. Nie wierzysz? Ko?ystaj sobie dalej ze starych wersji, b?d? mia? zaj?cie.

B??d jest ju? do?? stary ale sprawdzajac serwery z list, wiekszo?? z nich jest podatna na tego typu atak.

Na pocz?tek om?wmy spraw? pseudo b??d?w PHP:
Notice: jest to notatka, zazwyczaj ukazuj?ca sie gdy nie zdeklarujemy wcze?niej zmiennej a chcemy z niej ko?ysta? (najcz??ciej metody POST i GET)
Deprecated: jest to notatka informuj?ca i? dana funkcja wkr?tce przestanie istnie? (zostanie zast?piona inn?)

Wi?c.. Jak sie broni??
Zainstaluj niezw?ocznie najnowszego Xampp'a lub/i dodaj na pocz?tku skryptu:
Kod:
if(strpos(str_replace('.', '', serialize($GLOBALS)), '22250738585072011')!==false) die();

Rozwi?zanie dotycz?ce notatek:
Notatki typu Deprecated mo?emy wyeliminowa? poprzez poprzedzenie funkcji znakiem @. Nale?y jednak pami?ta? aby zacz?? si? rozgl?da? za zamiennikami na przysz?o??.
Wszystkie notatki:
Dodaj poni?szy kod na sam? g?r? pliku index.php (lub plik?w w kt?rych b??d wyst?puje)
Kod:
<?php
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
?>
lub zmodyfikuj ustawienia, w pliku php.ini:
znajd? i zamie?:
Kod:
error_reporting = E_ALL
na:
Kod:
error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED
i zrestartuj apache.

Nie czekaj a? kto? inny zajmie si? Twoim serwerem, zabezpiecz si? ju? dzi?.
 
Odp: [WA?NE!] Zabezpieczenie PHP

if(strpos(str_replace('.', '', serialize($GLOBALS)), '22250738585072011')!==false) die();

Gdzie to dok?adniej dodajemy?

i DZI?KI TEMU DOK?ADNIE CO B?DZIE?? Nikt nam nie ukradnie servera, nie b?dzie robi? bug?w itd?
 
Odp: [WA?NE!] Zabezpieczenie PHP

Chyba troszke mnie nie zrozumia?e? :)

Zainstaluj niezw?ocznie najnowszego Xampp'a lub/i dodaj na pocz?tku skryptu:

Chodzi mi oto :) Ty mi napisa?e? chyba gdzie doda? ten nast?pny tekst :)
 
Odp: [WA?NE!] Zabezpieczenie PHP

yyy... a po co to? jak kto? ci robi sql injecta to chyba lepiej ?eby NIE pokazywa?o b??du kt?ry zwr?ci baza. Naprawiasz jeden b??d u?atwiaj?c zastosowanie innych luk. Btw. pohamuj si? troch? bo nie s?dz? ?eby? mia? "zawsze racj?" jak to wspomnia?e? w pierwszym po?cie
 
Ostatnia edycja:
Odp: [WA?NE!] Zabezpieczenie PHP

Temat ma na celu przestrzega? nowicjuszy przed u?ywaniem starych wersji serwer?w WWW.
Dubler napisał:
jak kto? ci robi sql injecta to chyba lepiej ?eby NIE pokazywa?o b??du kt?ry zwr?ci baza.
a kto tutaj m?wi o pokazywaniu czego?? W temacie napisa?em w?a?nie o tym, jak pozby? si? owych "b??d?w". Pierw czytamy potem wypowiadamy.
 
Odp: [WA?NE!] Zabezpieczenie PHP

error_reporting = E_ALL
po co jakiekolwiek error_reporting? doprowadza si? kod do takiego stanu ?eby nie wywala?o ?adnych a potem si? ukrywa, ewentualne zapisuje w jakim? oddzielnym logu.
 
Odp: [WA?NE!] Zabezpieczenie PHP

To jak nie wiesz, gdzie s? b??dy to poszukaj sobie.

PHP:
<?php

function bledy($numer, $ciag, $plik, $linia) {
   
   echo "<br /><table bgcolor='red'><tr><td>
         <p><b>B??D:</b> $ciag</p>
         <p>B?ad w linii $linia pliku '$plik'</p>";
   
   if ($numer == E_USER_ERROR) {
     echo "<p>B??d krytyczny, zako?czenie programu</p>";
     echo "</td></tr></table>";
     exit; 
   }
   echo "</td></tr></table>";
}
?>
 
Odp: [WA?NE!] Zabezpieczenie PHP

Je?li nie chcesz widzie? ?adnych b??d?w ustaw sobie warto?? na 0. Serwer z kt?rego korzystam posiada dwa pliki konfiguracyjne (production/development) z kt?rych jeden z nich nie pokazuje ?adnych b??d?w a drugi ma w??czone wszystkie. Zale?nie od tego czy pisz? czy udost?pniam, wybieram odpowiedni pakiet.

Dubler napisał:
ewentualne zapisuje w jakim? oddzielnym logu.
Apache robi to za nas, ale jak kto woli mo?na mie? 2x to samo.
 
Status
Zamknięty.
Do góry