copy
změní vlastníka souboru, nijak neovlivňuje funkčnost direktivy open_basedir
.tempnam
přidává k prefixu souboru náhodné znaky, není motivováno změnou koncovky, ale zajištěním unikátnosti názvu souboru.getimagesize
, kterou má možná na mysli, každopádně s koncovkou souboru vůbec nepracuje a rozhoduje se výhradně na základě obsahu souboru.Dne 21.10.2008 pořádám školení Bezpečnost PHP aplikací, kde se takových chyb nedopouštím. Tímto na něj autora srdečně zvu.
P.S. Tu zmínku o nebezpečnosti tečky jsem do PHP manuálu před čtyřmi lety napsal já.
Tak ja bych si to dovolil shrnout.
1. dil: Prvni dil byl prohlasen autorem jako "teoreticky". To je ponekud ironicke, ponevadz teorie v clanku opravdu mnoho nenajdeme a autor si zrejme plete terminy "teorie" a "uvodni omacka"... coz ale neni takove prekvapeni, ponevadz jak se ukazuje v clancich, nejsou to jedine terminy ktere si autor plete.
Dozvidame se zde, ze je nutne dbat u webhostingu na bezpecnost a ze prolomeni bezpecnosti muze mit neprijemne dusledky. Dalsi informaci je, ze i pri dobre zajistene bezpecnosti na urovni serveru mohou byt vyuzity chyby ve webovych aplikacich jako takovych. Posledni informace, kterou se ve clanku dozvidame je, ze autor ma kamarada a tento kamarad jmenoval dva "nahodne" hostingy (s velkou pravdepodobnosti, ze jde o garazovky) kde autor tvrdi, ze se dostal snadno k datum behem nekolika minut. Toto je ilustrovano malebnym obrazkem zmeny ceny produktu v MySQL databazi.
Toto vse se dozvidame na deviti pomerne rozlehlych odstavcich.
Shrnuti: Self-congratulatory yap ktery by se dal shrnout (a mel by se shrnout) do jedineho odstavce.2. dil: Druhy dil ma dle autora nabidnout jiz konkretnejsi pohled na problematiku. V uvodu se dozvidame, ze neni principialne rozdil v prubehu utoku a penetracnich testu (coz je pomerne prekvapive, kdyz vezme clovek v uvahu, ze pri utoku se clovek snazi proniknout bezpecnosti dane aplikace... narozdil od penetracnich testu, kdy se clovek snazi proniknout bezpecnosti dane aplikace).
Dale se dozvidame, ze k tomu aby clovek mohl uspesne utoky provest musi byt uzivatelem daneho webhostingu, coz je samozrejme pravdou v tom nejsirsim hledisku. S prekvapenim zjistujeme, ze autor zna pouze nasazeni pres CGI nebo pres mod_php, ze vyzaduje nejnovejsi verzi Linuxoveho jadra a zrejme nezna moznosti backportovani oprav. Clanek nas seznamuje s tim, ze vystup funkce phpinfo() dava komplexni prehled o nastaveni PHP na webhostingu.
V clanku je take obsazena komparativni analyza ceny beznych komodit.
Shrnuti: Odbornejsi publikum by se tomuto clanku vysmalo (a ostatne tak ucinilo v diskuzi). Pro laicke publikum to budou poplasne zpravy, ponevadz autor se omezuje jen na konkretni pripady, konkretni nasazeni a nijak neakceptuje ani nenaznacuje v clanku rozmanitost technologii na tomto trhu.3. dil: Tretil dil jiz obsahuje konkretnejsi informace, ackoliv porad ze zcela omezene perspektivy. Dozvidame se o zakladnich konfiguracnich direktivach (neni na to v zaverecnem dile trochu pozde?), ale opet pouze pro konkretni pripady, konkretni nasazeni, ktere ani zdaleka nemaji obecnou platnost pro laickou verejnost, jak autor rad tvrdi.
Dozvidame se o nekolika utilitach automatizujicich zneuziti obvyklych chyb na obvyklem nasazeni. Neni to prilis velke prekvapeni -- ostatne je skoda, ze termin "script kiddie" odesel z bezneho povedomi. Dozvidame se o nekolika moznostech zlepseni bezpecnosti (Suhosin, mod_security), ale nedozvidame se nic o jejich nastaveni. Opet, neni to na zaverecny dil tridilne serie ponekud malo?
Shrnuti: Lepsi? Urcite. Dobre? V zadnem pripade.Celkem by se dalo rict, ze prvni dil "serialu" vyda obsahove tak maximalne za perex. Oznacovani jeho obsahu za "teoreticky" je naprosto smesne. Druhy a treti dil serialu, pomineme-li (rozsahle) obsahove nepresnosti vyda priblizne za jeden bezny clanek minus perex. Dozvidame se, ze webhostingy jsou vetsinou nebezpecne, ale bez jakychkoliv statistiky, prehledu nebo dukazu... coz pusobi dojmem levne "pusobive" poplasne zpravy.
Diskusi ke clankum snad ani netreba komentovat: arogantni a urazejici vypady v diskuzi predevsim u prvniho clanku logicky vyvolaly posmech a nevoli vsech ctenaru. U druheho clanku jiz po nejake dobe autor prestal v diskuzi reagovat a neprekvapilo by mne, kdyby proto, ze dostal od lupy durazne doporuceni se diskuze vyvarovat.
Jak si autor vysvetluje temer nulove mnozstvi kladnych reakci v diskuzi je zahadou.
Autor tohoto serialu v diskuzi popsal svuj profil. Je mu 21 let, ma jako stredni skolu vystudovanou obchodni akademii v rakousku, je nyni studentem vysoke skoly kterou oznacil jako "informatika/ekonomie" (zda se jedna o VSE nebo o VSMIE ci neco uplne jineho nevime).
Co se tyka svych profesnich zkusenosti, nema jedinou firmu kterou je ochoten predat jako referenci. Autor se zabyva vyvojem webovych aplikaci a penetracnimi testy. Nikdy nepracoval ve webhostingovem prumyslu. Nikdy nebyl zamestnancem a neni drzitelem zivnostenskeho opravneni.
Jako svoje dovednosti uvedl HTML, CSS, JS, PHP, MySQL pro profesionalni potrebu a C++ "pro vlastni potrebu". O jakemkoliv nizkourovnovem vyvoji ci o administraci serveru ma pouze povsechne povedomi, natolik nizke, ze si je dle vlastnich slov netroufa dat do zivotopisu. To je ponekud prekvapive vzhledem k tomu, ze si naopak troufa verejne psat clanky o bezpecnosti ktere se v dusledcich dotykaji vetsiho mnozstvi firem.
Co se tyka ostatnich aktivit, je autor spjat pod prezdivkou "Emkei" s komunitnim portalem http://soom.cz/ (ktery je nechvalne prosluly jako sbirka "security odborniku" bez obcanskeho prukazu), pro ktery take pise clanky. Portal soom.cz bezi na webhostingu jehoz bezpecnost (i vuci vagnim doporucenim v clanku) byla v ramci diskuze zpochybnena - autor toto vysvetluje ekonomickymi duvody.
v prve rade bych ale rad vyjadril svoje pobaveni nad tim, ze jste si me komentovane shrnuti, soude dle vasi reakce, vylozil (opet) jako nejaky osobni utok;)
ad "...VSE nebo o VSMIE ci neco uplne jineho nevime"
Nevite, protoze je to irelevantni a v kontextu s anonymimi prispevky zde diskutujicich ctenaru naprosto smesne.
...jako napriklad zde. Stredni skolu jde uvedl konkretni, vysokou skolu nikoliv, proto jsem zminil v ramci shrnuti informaci o autorovi (ackoliv jste informace o sobe podal v diskuzi u jednoho z dilu, nejsou k dispozici v podstate nikde jinde) ze o jakou konkretni skolu jde neni znamo. Nic vic;)
ad "nema jedinou firmu kterou je ochoten predat jako referenci"
Proc se vyjadrujete k necemu, cemu nerozumite? O tomto nerozhoduji ja, nybrz zakaznik. Pokud si nejaka spolecnost nepreje byt vedena v referencich, tak to respektuji a parta anonyminich uzivatelu kdesi na lupe na tom nic nezmeni.
Opet, zkuste reagovat o neco mene ublizene. Z meho pohledu je jedno, jestli vas k mlcenlivosti zavazali vasi zakaznici. Z meho pohledu proste vidim, ze nemate jedinou referenci. Nic vic.
Nenapsal jsem, ze si ostatni jazyky "netroufam" dat do CV, nybrz ze nejsem alibista, abych tak jednal, opet si vymyslite, vyraz "dle vlastnich slov" mel byt tedy co? Vtip?
Kdyz jste se ptal na ty terminy, se kterymi mate problem... vite, co znamena "alibista"?;)
Neomezuji se na konkretni, nybrz nejrozsirenejsi pripady a nasazeni.
[...] Co je podle Vas "omezena perspektiva"? Nejbeznejsi konfigurace verejnych webhostingu? To si malinko protireci, nemyslite?
Ptal jsem se Vas na to i v nektere z predchozich diskuzi a komentoval jsem to i zde. Mate ty vase "nejbeznejsi konfigurace verejnych webhostingu" nejak dolozene? Napriklad kdyz se podivam na hormart.cz, vidim, ze top10 webhostingu ma hostovano neco pres 180 tisic domen, coz je pomerne slusne reprezentativni vzorek klientely. Muzete prosim tedy dolozit tvrzeni "nejbeznejsi konfigurace" pro tento nebo jiny velky vzorek klientely? Bez toho je totiz "nejbeznejsi" a "nejrozsirenejsi" pouhe placnuti do vetru - byva zvykem tato tvrzeni dokladat.
Clanek se zminuje o behu PHP v podobe modulu a CGI procesoru z toho duvoud, ze jsou tyto dva zpusoby nejbeznejsi a jsem zvedav, jakymi argumenty se mi toto tvrzeni pokusite vyvratit.
Ja jsem spis zvedav, jakou statistikou to vy budete prokazovat;) Mozna by bylo lepsi brzdit s temi superlativy, kdyz je nemate podlozene cisly, nemyslite? Zda se, ze to ostatne neni prvni pripad;)
Vy po mne chcete, abych ucil ctenare konfigurovat suhosin patch a firewall mod_security? A co treba rovnou instalovat selinux a zrizovat chroot, aby nam tech garazovek jeste pribylo?
Ne, to se nesnazim rict - ackoliv jsem presvedcen, ze uz po tomto clanku garazovek pribyde dost a dost. Mou pointou je neco jineho: obsahove toto proste na tridilny serial nema.
Pokud tou rozmanitosti mate na mysli minoritni anomalie, tak Vam nic nebrani v tom, abyste o nich napsal clanek nebo serial, co rikate?
Na obdobny argument jsem jiz reagoval vyse, viz: [diskuze vyse]
Co ma skutecnost, zda jsem byl nekdy zamestnan na plny uvazek nebo jsem drzitelem zivnostenskeho opravneni spolecneho s bezpecnosti webhostingovych serveru? Muzete me prosim poucit?
To, ze nemate nijak dolozitelnou praxi v oboru.
Stejne tak nizkourovnove jazyky. Pokud neumim dobre programovat v assembleru, nesmim provadet penetracni testy webovych aplikaci, to jste tim chtel rici?
Ne - chtel jsem tim rici, ze k tomu mate mensi odborne predpoklady.
Zaverem bych rekl, ze odkazovani se na to, zda-li jsou nebo nejsou diskutujici odbornici je v podstate irelevantni. Vy jste placen za to, ze pisete clanek/clanky o nejakem tematu. Vasi snahou je sepsat tyto clanky poutave, na jiste odborne urovni a tudiz presvedcit ctenare o tom, ze jde o zajimavy material. Jste opravdu presvedcen, ze se to povedlo?
Ctenar, jemuz ta reakce patrila, zavadel u jednoho z top 10 webhosteru minimalne 2 sluzby, ktere zasadne ovlivnily podobu jeho nabidky pro pristich par let, a take krome cele rady dalsi prace (napr. zmena systemu zalohovani, etc.) automatizoval a standardizoval podobu produktu, ktere se prodavaji klientum, coz je narozdil od Vas dost konkretni podlozeni praxi. Mozna mate spis Vy problem, ze neumite akceptovat jakoukoliv kritiku (nebo ji nerozumite) a misto toho se jako male dite hadate do morku kosti a chvilemi reagujete zcela zcestne. Bohuzel nemam tento tyden dost casu na to abych se tu s Vami mohl denne nonstop dohadovat. A ani to nema vyznam. Vy se tu uspesne shazujete sam, a kupodivu to jeste stupnujete. Mozna bych Vam mel pogratulovat.
Ještě k té bezpečnosti webových aplikací VS serverů:
Přišlo mi, že v této oblasti máte jisté rezervy, proto jsem si vás dovolil na školení pozvat. Pokud by někdo takhle pozval mě, s radostí bych pozvání přijal. Stejně tak se těším na spuštění vašeho serveru.
Bezpecnost je tak nejak nutno brat v kontextu souvislosti.
"Věci je nutno viděti nikoli odděleně, nýbrž vcelku. Dějiny jsou dějinami třídních bojů. Já to tak vidím."
"Ty vidíš, Jasánku, veliký hovno," odvětil kulak Vata.
Teda tak nějak v kontextu souvislosti, to je fakt perla, to by se mělo tesat.
A čo vy si, Kefalín, predstavujete pod takým slovom "kontext"? :-)
- ifmodule mod_php5.c>
php_value register_globals 0
-/ifmodule>