What's new

PHP [WA?NE!] Zabezpieczenie PHP

Status
Not open for further replies.

Baabuseek

Advanced User
Joined
Aug 17, 2008
Messages
449
Reaction score
45
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:
Code:
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)
Code:
<?php
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
?>
lub zmodyfikuj ustawienia, w pliku php.ini:
znajd? i zamie?:
Code:
error_reporting = E_ALL
na:
Code:
error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED
i zrestartuj apache.

Nie czekaj a? kto? inny zajmie si? Twoim serwerem, zabezpiecz si? ju? dzi?.
 

Xordex11

Active User
Joined
Sep 20, 2012
Messages
137
Reaction score
0
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?
 

Baabuseek

Advanced User
Joined
Aug 17, 2008
Messages
449
Reaction score
45
Odp: [WA?NE!] Zabezpieczenie PHP

do index.php
konwersja warto?ci tekstowej (string) do warto?ci double mo?e powodowa? ?mier? procesu PHP.
 

Xordex11

Active User
Joined
Sep 20, 2012
Messages
137
Reaction score
0
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 :)
 

Baabuseek

Advanced User
Joined
Aug 17, 2008
Messages
449
Reaction score
45
Odp: [WA?NE!] Zabezpieczenie PHP

Gdzie to dok?adniej dodajemy?
do index.php
i DZI?KI TEMU DOK?ADNIE CO B?DZIE?? Nikt nam nie ukradnie servera, nie b?dzie robi? bug?w itd?
konwersja warto?ci tekstowej (string) do warto?ci double mo?e powodowa? ?mier? procesu PHP.

lepiej?
 

Dubler

Lua Factory =)
Joined
Apr 8, 2009
Messages
1,874
Reaction score
112
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
 
Last edited:

Baabuseek

Advanced User
Joined
Aug 17, 2008
Messages
449
Reaction score
45
Odp: [WA?NE!] Zabezpieczenie PHP

Temat ma na celu przestrzega? nowicjuszy przed u?ywaniem starych wersji serwer?w WWW.
Dubler said:
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.
 

Dubler

Lua Factory =)
Joined
Apr 8, 2009
Messages
1,874
Reaction score
112
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.
 

Maniucza

Advanced User
Joined
Jan 18, 2009
Messages
374
Reaction score
57
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>";
}
?>
 

Baabuseek

Advanced User
Joined
Aug 17, 2008
Messages
449
Reaction score
45
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 said:
ewentualne zapisuje w jakim? oddzielnym logu.
Apache robi to za nas, ale jak kto woli mo?na mie? 2x to samo.
 
Status
Not open for further replies.
Top