Dík, právě jsem si na Wikipedii přečetl o Just-in-time kompilaci a pár příbuzných hesel a zase jsem se dozvěděl něco nového. Naštěstí se nemusím živit programováním programovacích jazyků, to už je pro mě trochu vyšší dívčí. :-)
Nj, vyzniva to jako kdyz by zak se znalostmi vytvarne vychovy ZS poustel do analyzy dila (rekneme) Salvatora Daliho. Ano, daji se michat barvicky, a nekdy se i nejaka trefi...
Cili autor se nekdy trefi, nekdy ne, nekdy z toho vyjde zavadejici polopravda a proto ta diskuse tu vypada tak jak vypada. Samozrejme existuji webosteri, kteri jsou na tom se svymi znalostmi podobne, a na ktere jeho prehled o vecech staci.. ale pak jsou tu lidi, kteri veci rozumi jaksi vic a delaji to poradne (jaily, acl atp. - viz prispevky, ktere nabizi autorovi honeypot) a proto na zacka ZS snaziciho se poucovat reaguji tak jak reaguji, obzvlaste kdyz ten si jakokoliv negativni kritiku nepripousti.
Naprihlad to, ze ne vsechny servery jedou na linuxech a ze jedna z nejrosirenejsich linuxovych distribuci vubec ve sve stable verzi nema nejnoveji jadro je ucivo ZS, ktere autor nezvladl.
S drtivou vetsinou toho co pan Angalovic napsal musim souhlasit.
Jedine snad zaver bych zmenil - nejen v clanku, ale i reakce do diskuze sam autor zpochybnuje sve odborne znalosti.
Dale pak nechapu (otazky na autora):
- proc Vas kazdy, kdo s clankem nesouhlasi hned urazi? Nasel jsem nekolik mnoho prispevku, kde se nereklo nic jineho, nez fakticke chyby a nazory k nedostatkum a hned pod tim autorova reakce v niz se oborujete vuci nejakym neexistujicim urazkam
- proc autor nereaguje konkretne? Co je spatneho na zverejneni jmena webhostera, ktereho povazujete za nebezpecneho? Pusobi to na mne tak, ze bud si vymyslite nebo si tim nejste jist nebo takoveho neznate - tak mne vyvedte z omylu - sem s tim nazvem. Rad se na nej podivam a podle toho co sam najdu si udelam obrazek o tom jaky jste odbornik a treba prekvapite.
- proc jsem dospel k tomu, ze autor si snad mysli, ze diskuze pod clankem je diskuze s nim? Vypada to jak leceni vlastniho ega, kdyz pod kazdou sebemensi reakci vyskoci pan Martin Klubal se svym neomylnym "zase jen urazite.." - myslim ze by stacilo par konkretnich argumentu a par priznani nedostatku (protoze ten clanek je fakt jako o nicem, to se mnou nemusi nikdo souhlasit, ale dokud ho nikdo neprepise, tak me taky nikdo nepresvedci)
Tot muj nazor. A doufam, ze se nedozvim, ze jsem nekoho urazil.
U prvního dílu jsem se ještě držel, čekal jsem totiž, že se tím druhým autor rehabilituje a vše zlé bude zapomenuto. Nestalo se tak a na zázrak v podobě třetího dílu čekat nehodlám. Autor, nebo někdo z Lupy, by se zde měl rozepsat o cílové skupině seriálu, protože z obsahu článků to není patrné a s případnou kritikou to úzce souvisí. Měl-li být určený laikům, jak tvrdí autor v komentářích pod prvním dílem, pak mám několik výhrad:
1) Termíny, obraty a slovní spojení
"konfigurace (…) ovlivňuje integritu sdílených dat"
S pojmem "integrita sdílených dat" se zde setkáme hned dvakrát, aniž by bylo vysvětleno co přesně tím autor myslí. Například pro mě jsou sdílenými daty soubory v adresářích icons nebo error, tedy soubory, které správce systému určil jako sdílené. Jaká data má na mysli autor? Všechna, která jsou přístupná s právy uživatele, pod kterým běží Apache? Dále tu máme to slovo integrita, tedy česky celistvost. Pokud útočník kompletně smaže celý obsah adresáře s mou webovou prezentací, integritu dat nijak nenarušil. Nejde o slovíčkaření, ale o poukázání na vágnost pojmů používaných autorem.
"mass virtual hosting"
S tímto pojmem jsem se setkal poprvé, co teprve chudák laik. Nicméně podle Google se takto označují hostingy, kde se jednotlivé virtuální servery zakládají bez nutnosti ručního zásahu do konfiguračních souborů webserveru. Podle článků i diskusí je seriál zaměřen právě na tento typ hostingu. Takže se nezbytně musím zeptat, proč tomu tak je, co si pod tímto pojmem představuje autor a zda je to důležité ve vztahu k informacím obsaženým v článcích. Na svém serveru používám modul mod_vhost_alias, ale příslušné adresáře pro prezentace zakládám ručně - jedná se nebo nejedná o mass virtual hosting? Které další techniky spadají do autorovi představy o "mass"? Ale především: jsou ohroženy všechny virtuální hostingy, nebo jen ty "mass"? Pojem virtuální hosting je sice široký, ale zato jasný. "Mass virtual hosting" nutně musí být jeho podskupinou. Má toto rozlišení význam z pohledu autorem popisovaných bezpečnostních rizik?
"… neboť PHP, tedy dynamický skriptovací jazyk, jimž je …"
Skutečně je nutné informovat čtenáře, že PHP je "dynamický skriptovací jazyk"? A mohl byste jen na okraj a pro zajímavost uvést jediný dynamický jazyk, který by zároveň nebyl skriptovací?
"lokální exploit"
Nejdřív máte potřebu vysvětlovat co jste myslel slovy "root" a "shell", ale slovo exploit necháte bez vysvětlení. Navíc jste si neodpustil "lokální", ačkoliv je to z předchozího textu více než zřejmé. Pokud někdo ví, co je to exploit, ví také, že jste měl na mysli lokální. Pokud to ale neví, přidání slova lokální mu vůbec nijak nepomůže. Zase jsme u té cílové skupiny. Pro účely takového článku by použité slovo "snadno" stačilo, ale "pomocí volně dostupného lokálního exploitu", zní určitě více dramaticky.
Jistě se shodneme na tom, že jsou tyto mé výtky přísné a nepodstatné, ale mám neodbytný pocit, že právě těmito obraty, jakoby si chtěl autor pomoci k vytvoření dojmu odbornosti textu. Ale jako základ pro knihu "Jak blufovat o bezpečnosti" to na druhou stranu není zlé.
2) Nepřesné a zavádějící informace
"… aplikace lze instalovat buď přímo ze zdrojových kódů, nebo pomocí binárních balíčků, v lepším případě pak jsou standardní součástí používané distribuce."
Tady trochu mícháte jablka s hruškami: je-li program kompilován a následně instalován, nebo je rovnou instalován z připravených binárek je jedna věc a jestli je nebo není standardní součástí distribuce, je zase věc druhá. A to v "lepším případě" si příště laskavě nechte od cesty. Akorát nám matete veřejnost, pane inženýre. :-))
"Instaloval-li správce systému PHP ze zdrojových kódů, můžeme v řádku s názvem Configure Command vidět konfigurační direktivy, se kterými byla aplikace zkompilována."
Zda funkce phpinfo() vrací nebo nevrací informaci o konfiguračním skriptu a jeho parametrech nijak nesouvisí se způsobem, jakým bylo PHP nainstalováno. Navíc mi termín "konfigurační direktiva" pro označení parametru skriptu přijde trošku nešťastný a hlavně matoucí, vzhledem k tomu, že to samé označení dále používáte pro skutečné PHP direktivy jako např. "safe_mode".
Asi nejhorší je předposlední odstavec, ve kterém nejdřív vyjmenujete direktivy, které by měly pomoci zabezpečit PHP bežící jako modul Apache a pak napíšete toto:
"Zdaleka ne všechny se hodí k nasazení na mass virtual hosting a jsou určeny pro PHP v podobě modulu Apache, jsou zde uvedeny pouze pro názornost a lepší pochopení toho, k čemu tato rozšíření slouží."
To opravdu nemůžete myslet vážně. A pak to dorazíte větou:
"Běží-li tedy PHP jako modul, alespoň jedno z výše uvedených rozšíření byste měli v přehledu funkce phpinfo() nalézt."
Jak mi mod_cgi pomůže k vyšší bezpečnosti skriptů běžících pod mod_php5? To bude asi jeden z těch modulů jen pro názornost a lepší pochopení… A to už se nezmiňuji o tom, že obecně samotné zavedení modulu do Apache ještě mnoho neznamená, ve výsledku záleží hlavně na dalších souvisejících nastaveních v jeho konfiguračních souborech.
3) Tlachání kolem
Zábavné jsou povídačky o tom, jak je funkce phpinfo() nenápadná (2x), jak se nemáme nechat mýlit a jak její výstup vzbuzuje obdiv. Další perly jen telegraficky:
"Jak známo, z chyb se člověk učí"
"Vyznáte-li se alespoň trochu v Linuxu, pak zajisté víte, že…"
Závěr
Já nezpochybňuji vaše odborné znalosti, jen schopnost se o ně podělit se čtenáři Lupy.