Miesiąc dziur w PHP

02.03.2007 15:41, Autor: Grzegorz Niemirowski (gniemirowski), Kategoria: News
NewsImage

Po inicjatywie Month of Apple Bugs przyszła kolej na Month of PHP bugs. Specjalista od bezpieczeństwa PHP, Stefan Esser, zamierza przez cały marzec ujawniać po jednej dziurze w PHP dziennie.

Stefan Esser odszedł w grudniu z założonej przez siebie PHP Security Response Team, gdyż uważał, że zbyt wolno reaguje na wykrywane luki. Zaznacza jednak, że nie chce działać wbrew dawnym kolegom a jedynie poinformować o błędach, które stanowią realne zagrożenie dla użytkowników PHP. Chce też wskazać konieczne zmiany jakie są potrzebne w procesie zarządzania błędami stosowanym przez PHP Security Response Team. Choć jest dopiero 2 marca, Esser opublikował już pięć błędów.

Źródło: eWeek
r   e   k   l   a   m   a

Komentarze (16)  

Avatar
xD (niezalogowany) | 02.03.2007 15:48#1

Jak chce osiągnąć cel, niech da sobie spokój z dziurami, niech robi atak na jedna strone w php dziennie ;] - Oczywiscie to Joke ;P

Avatar
kijanek6 (niezalogowany) | 02.03.2007 16:46#2

xD, masz rację :D, i to nie joke xDDDDD. Mogę ja tak robić ;)

Avatar
SSEE (niezalogowany) | 02.03.2007 17:05#3

Nieźle...

No to pozostaje czekać na wrzaskaczy z tekstami o "serze szwajcarskim". Ciekawe, przyjdą czy nie?

(Obstawiam to drugie... ;)

Avatar
Spoon (niezalogowany) | 02.03.2007 17:15#4

Czasem tylko radykalne akcje dają rezultaty. Oczywiście bez przesady w drugą stronę, czyli terroryzm! Miejmy nadzieję, że ta nagonka przyniesie wymierny efekt w podniesieniu bezpieczeństwa!

Avatar
NIC (niezalogowany) | 02.03.2007 17:18#5

Czyli PHP ma co najmniej 31 błędów. Popieram człowieka. Niech publikuje. Może koledzy się obudzą. Bo szkoda byłoby zaprzepaścić PHP.

A koledzy niech się nie ważą nawet krytykować ujawniania błędów. Niech poprawiają.

Avatar
Mądry (niezalogowany) | 02.03.2007 17:51#6

Kurcze a ja mam strone w php :)

Avatar
Model_T (niezalogowany) | 02.03.2007 23:08#7

Twórcy PHP już dawno powinni coś zrobić z tym zacofanym językiem. Ale widocznie spoczęli na laurach bo po co poprawiać coś co i tak dominuje i przez najbliższe kilka lat będzie dominowało w Internecie. Jak tak dalej pójdzie to większą popularność zdobędzie ASP or something a twórcy PHP obudzą się z ręką w nocniku.

Avatar
BlackMan© (niezalogowany) | 03.03.2007 1:56#8

Faktycznie ci ludzie coś ostatnio olewają. Ta wersja PHP6 to już chyba z 3 lata wychodzi...

Może ktoś powinien przejąć ten projekt i zrobić jakieś P2HP, SUPER-HP (SHP) czy coś... :D

Na razie PHP całkowicie do wszystkiego wystarcza, ale jak nadal będzie się tak powoli rozwijać to jakiś .NET czy .ASP faktycznie je wyprzedzi.

Avatar
BlackMan© (niezalogowany) | 03.03.2007 2:13#9

@Model_T

[[[Twórcy PHP już dawno powinni coś zrobić z tym zacofanym językiem]]]

A co takiego zacofanego jest w PHP ? Jak do stron WWW i webowych systemów to jest świetny. Uwielbiam go i nie zamienię na żadne .NETowe badziewie. Niech jeszcze szybciej te BUGi poprawiają i będzie COOL.

Chociaż jak się MONO rozwinie to może zobaczę. Przyznam że pisałem jeszcze do niedawna w VB6 i bardzo mi się podobało, więc MONO nawet dość mnie kręci (przynajmniej powinno w teorii).

Ale nie wiem czy PHP nie jest nawet przyjemniejszy w programowaniu od VB6... Jednak VB6 brakowało czegoś co jest w PHP i czuję się z tym świetnie. Nie wiem jak z VB.NET - pewnie dodali już tam te bajery...

Avatar
zbyszekk (niezalogowany) | 03.03.2007 12:06#10

przynajmniej PHP jest darmowe, pozatym to bardzo prosty język programowania

Avatar
Model_T (niezalogowany) | 03.03.2007 14:03#11

@BlackMan©
"A co takiego zacofanego jest w PHP ?"

Ładnie wypunktowana lista znajduje się np. tutaj:
http://toykeeper.net/soapbox/php_problems/

Avatar
BlackMan© (niezalogowany) | 03.03.2007 15:06#12

@Model_T

[[[Ładnie wypunktowana lista znajduje się np. tutaj:
http://toykeeper.net/soapbox/php_problems/]]]

Zgadzam się w dużej części. Ale i tak mimo wszystko dla początkującego i średnio zaawansowanego programisty (< 6 lat stażu) PHP jest zdecydowanie najlepszym językiem.

Te rzeczy które są tam wymienione dotyczą głownie EXPERTÓW....

PHP jest popularne ponieważ jest łatwe, proste, przyjemne i szybsze od ASP/.NET, w sieci jest do niego mnóstwo dokumentacji i przykładów - więcej niż do ASP czy w ogóle jakiegokolwiek innego języka webowego.

Natomiast prawdą jest też to, że PHP stało się TAK POPULARNE, że twórca SPOCZĄŁ ostatnio trochę na laurach i OLEWA sprawę. Miejmy nadzieję, że w nowym PHP 6 będzie inaczej. A jeżeli nie, to jakaś grupa niezadowolonych programistów powinna wziąć kod PHP i zrobić z nim porządek - w końcu po to jest przecież idea OPEN SOURCE i cały GPL.

Avatar
Ehh (niezalogowany) | 03.03.2007 20:47#13

@Blackman:
"i szybsze od ASP/.NET"

Mit.

Avatar
BlackMan© (niezalogowany) | 03.03.2007 21:47#14

@Ehh

[[[@Blackman:
"i szybsze od ASP/.NET"

Mit.]]]

Być może się mylę, bo to się zmieniło. Ale wrzuć jakieś konkretne benchmarki popierające swoją tezę.

Powodem spowolnienia .NET może nie być bezpośrednio sama jego powolność, ale powolność servera na którym stoi (.NET chodzi tylko na windzie, która jest wolniejsza od UNIXów/Linuxa)

Avatar
zertaul (niezalogowany) | 04.03.2007 1:15#15

"PHP jest popularne ponieważ jest łatwe, proste, przyjemne i szybsze od ASP/.NET, w sieci jest do niego mnóstwo dokumentacji i przykładów - więcej niż do ASP czy w ogóle jakiegokolwiek innego języka webowego."

To nie do końca prawda. Faktem jest, że jest mnóstwo przykładów dla PHP, tyle że są one niewiele warte.



"Ale i tak mimo wszystko dla początkującego i średnio zaawansowanego programisty (< 6 lat stażu) PHP jest zdecydowanie najlepszym językiem."

I tu znowu się nie zgodzę. Moim zdaniem technologię i język programowania należy dobrać w zależności od tego, co mamy zamiar zrobić. Bezsensowne jest pisanie np. chatu w PHP - lepiej jest to zrobić we flashu, czy też Javie. Faktem jest, że do wielu zastosowań PHP nadaje się idealnie ze względu na prostotę i (co niestety może być też ogromną wadą) automatyczną konwersją typów zmienych.

Dodam tylko, że programuję w PHP od 4 lat, a od ponad 2 lat zawodowo i zaczynam dostrzegać poważne braki tego języka.



"Te rzeczy które są tam wymienione dotyczą głownie EXPERTÓW...."

I tutaj się zgodzę, choć tylko częściowo. Nie uważam się za eksperta - 4 lata stażu - to za mało, aby być ekspertm, jednak zaczynam się borykać z problemami z tej listy:

http://toykeeper.net/soapbox/php_problems/


"Magic quotes (and related mis-features) make data input needlessly complex and error-prone. Instead of fixing vulnerabilities (such as malformed SQL query exploits), PHP tries to mangle your data to avoid triggering known flaws."

Pewnie nie raz "przejechałeś" się na tym :-/



"Vague and unintuitive automatic coercion; "==" is unpredictable, and "===" does not solve all the problems caused by "==". According to the manual, "==" returns true if the operands are equal, and "===" returns true if the operands are equal and of the same type. But that's not entirely true. For example:
Two different strings are equal... sometimes.
"1e1" == "10": True
"1e1.0" == "10": False
So, they're "equal and of the same type", right?
"1e1" === "10": False

Unexpected results:
"1 two 3" == 1: True
1.0 === 1: False
"11111111111111111117" == "11111111111111111118": True

Equality is (apparently) not transitive:
$a = "foo"; $b = 0; $c = "bar";
$a == $b: True
$b == $c: True
$a == $c: False"

Tego komentować nie trzeba, bo każdy prędzej, lub później zetknie się z tym problemem.



Niektóre z wymienionych na tej liście "problemów" to oczywiste brednie, np.:

" No other language makes it so convenient to mix code and html, which is great for lone web developers who are also programmers."

To, że inne języki nie pozwalają na mieszanie kodu html z php, nie znaczy wcale, że jest to złe. Oczywisty jest, że w dużych projektach jest to nie do pomyślenia, lecz jeśli mam napisać prosty skrypt, który zawiera się w kilkunastu - kilkudziesięciu linijkach, to pisanie aplikacji 3-warstwojej będzie przerostem formy nad treścią.


"PHP tends to use a lot of similar functions, instead of just one, powerful one. For example, PHP has sort(), arsort(), asort(), ksort(), natsort(), natcasesort(), rsort(), usort(), array_multisort(), and uksort(). For comparison, Python covers the functionality of all of those with list.sort()."

Tutaj trzeba zwrócić uwagę na dwie rzeczy. Po pierwsze: Python ma coś takiego, jak listy - nie ma tego wogóle w PHP. Po drugie cieszę się, że ktoś dał mi klika funkcji, które kojarzą mi się jednoznacznie i dzięki temu nie muszę używac większej ilości parametrów.

"Exceptions didn't exist until PHP5"

Typowe czepianie się. PHP5 istnieje od 2004 roku i obsługuje wyjątki.


"and aren't implemented in a useful "deep" fashion."

nie bardzo rozumiem, co "poeta" miał na myśli.

Można by napisać jeszcze wiele, ale każdy, kto programuje w PHP na poważnie zetknął się z wieloma jego bolączkami.
Niewątpliwą jego zaletą jest szybkość działania (nie będę porównywał z ASP, bo nie nie widzę specjalnej różnicy, ale w porównaniu z Javą, PHP to rakieta), otwarty kod, brak opłat licencyjnych oraz niewielkie wymagania sprzętowe w porównaniu z Javą i ASP.NET a także wspomniana wcześniej prostota, mnogość przykładów.

Avatar
prgTW (niezalogowany) | 05.03.2007 20:24#16

Odnośnie przykładu:
Unexpected results:
"1 two 3" == 1: True
1.0 === 1: False

Odnośnie pierwszego przykładu: zrzutujcie sobie "1 two 3" na typ int i zobaczycie że wynik będzie 1, bo tak ma być ... więc porównany z 1 typu int dal true, więc jest dobrze :/

Odnośnie drugiego: jakby ktoś znał PHP to by wiedział że operator === sprawdza wartości i TYP zmiennej, więc porównując te same wartości ale RÓŻNE typy zmiennych (float i int) wiadomo że dostaniemy false, więc dlaczego jest to "unexpected result" :/

Popieram @zertaul, że niektóre teksty to brednie, sam programuje w PHP od ponad 7 lat i jeszcze nie narzekałem na ten język, nigdy nie miałem problemów, a jak miałem to były moje błędy, bo po głębszym zastanowieniu dochodziłem do tego że PHP działa dobrze tylko ja się mylę

Dodaj komentarz

Zasady publikowania komentarzy
Autor
Treść
 
Polecamy
Recenzja MSI WindTop AE2410

Powiew świeżości?
Test: PocketBook Pro 612

Biblioteka w kieszeni
Recenzja nowego iPada

Rewolucja czy stagnacja?
Testujemy: Manta Smart TV Box

Internet w telewizorze
Top programy
  •  
Top programy ostatnie 7 dni
  •  
Top programy ostatnie 30 dni
  •  
Skanery antywirusowe
skaner av