Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zasady panujące na forum News

1. Posty w tym forum są poddawane moderacji więc nie dodawaj ich kilka razy.
2. Akceptujemy tylko wartościowe wiadomości o php lub pochodnych
3. Publikacja newsa na wortalu po moderacji oscyluje w granicach 30min
4. Wstawiane grafiki powinny mieć maksymalną szerokość 357px

Zapraszamy do uzupełniania wortalu o ciekawe informacje :)

 
Reply to this topicStart new topic
> Poważny błąd w PHP, setki serwisów podatnych na ataki DoS
Gabrielx
post 5.01.2011, 20:42:35
Post #1





Grupa: Zarejestrowani
Postów: 157
Pomógł: 2
Dołączył: 24.03.2009

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


Jeśli do zmiennej w skrypcie PHP przypiszemy następującą wartość numeryczną: 2.2250738585072011e-308, to jest spora szansa na to, że skrypt najpierw pożre 100% zasobów procesora, a potem zaliczy crasha. Błąd jest o tyle uciążliwy, że za jego pomocą można zawieszać większość internetowych webaplikacji napisanych w PHP ? wystarczy przekazać powyższą liczbę w URL-u jako parametr GET.

2.2250738585072011e-308: PHP x87 FPU bug

Za DoS w PHP odpowiedzialna jest funkcja zend_strod() konwertująca liczby zmiennoprzecinkowe. Wprowadza ona systemy Linux, Windows i FreeBSD w nieskończoną pętlę. Na atak podatne są architektury wykorzystujące koprocesor FPU z zestawem instrukcji x87 (o ile PHP nie skompilowano z flagami: -mfpmath=sse lub -ffloat-store, bo tak naprawdę całemu złu winny jest bug w gcc).




Ten post edytował Gabrielx 6.01.2011, 02:44:44
Go to the top of the page
+Quote Post
rocktech.pl
post 6.01.2011, 02:51:11
Post #2





Grupa: Zarejestrowani
Postów: 587
Pomógł: 131
Dołączył: 8.02.2010

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


U mnie podatny.

Kod
PHP 5.3.3 (cli)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
    with Xdebug v2.1.0, Copyright (c) 2002-2010, by Derick Rethans


Kod
Linux linux-mnro 2.6.34.7-0.7-desktop #1 SMP PREEMPT 2010-12-13 11:13:53 +0100 i686 athlon i386 GNU/Linux


Poza takimi kwasami będącymi zabezpieczeniem.

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


Najbardziej rozsądne wydaje się gdzieś w httpd.conf coś takiego ~

Kod
<LocationMatch ".*011e.*>
   deny from all
</LocationMatch>


Oczywiście rozwiązanie na szybko przydatne versus script kiddie smile.gif

Albo radykalniej.

Kod
<LocationMatch ".*\d+e\-\d+.*>
   deny from all
</LocationMatch>



Ten post edytował rocktech.pl 6.01.2011, 03:11:37


--------------------
Despite the tons of examples and docs, mod_rewrite is voodoo. Damned cool voodoo, but still voodoo. --Brian Moore

I never go looking for a sucker. I look for a Champion and make a sucker of of him. --Amarillo Slim


Home-made : js-gui-classes | Accordion | Tabs | Carousel / php-sms-classes | Obsługa bramki SMS MultiInfo | Obsługa bramki SMS Mobiltek
Go to the top of the page
+Quote Post
Deallas
post 6.01.2011, 13:57:30
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 4.01.2007

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


@Gabrielx
Zapomniałeś dodać, że luka dotyczy tylko systemów 32 bitowych
Go to the top of the page
+Quote Post
Gabrielx
post 6.01.2011, 18:51:08
Post #4





Grupa: Zarejestrowani
Postów: 157
Pomógł: 2
Dołączył: 24.03.2009

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


Cytat(Deallas @ 6.01.2011, 13:57:30 ) *
@Gabrielx
Zapomniałeś dodać, że luka dotyczy tylko systemów 32 bitowych


Reszta jest w rozwinięciu artykułu ;]
Go to the top of the page
+Quote Post
Cysiaczek
post 7.01.2011, 10:20:35
Post #5





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Cytat
Zapomniałeś dodać, że luka dotyczy tylko systemów 32 bitowych


Ja mam 64 bitowy i też się powiesił smile.gif


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
throw.pl
post 8.01.2011, 03:56:50
Post #6





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 23.09.2009

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


No coś Ty? Jakim cudem?


--------------------
The great thing about Object Oriented code is that it can make small, simple problems look like large, complex ones.
Go to the top of the page
+Quote Post
kwiateusz
post 8.01.2011, 10:50:45
Post #7


Admin Techniczny


Grupa: Administratorzy
Postów: 2 071
Pomógł: 93
Dołączył: 5.07.2005
Skąd: Olsztyn




bo mógł miec 32bitową binarke php smile.gif
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: 19.04.2024 - 23:17