Archívum - Blog bejegyzés
augusztus 13, 2002
PHP Weekly - 98.
A Zend szokásos heti hírlevelének 98. számából:
PHP PECL Hitelesítési Hatóság - a két héttel ezelőtti PECL hitelesítési problémákat követően úgy tűnik, hogy vagy Rasmus Lerdorf, vagy Stig Bakken lesz majd e terület felelőse. Ha a PHP közösségben valakinek van már tapasztalata hasonló területeken, vagy a folyamat egyszerűsítésében tudna segíteni, kérjük, vegye fel a kapcsolatot a fejlesztőkkel a levelezőlistán!
Tömb inicializálása - Yasuo Ohgaki talált egy hibát a PHP jelenlegi verzióinak tömbinicializálásában. A következő kódrészlet (amint azt Yasuo megadta) bemutatja a problémát:
Az első példa a következő hibát okozza:
a második pedig:
Már ez a következetlenség is eléggé zavaró, de Yasuo rámutatott, hogy egyik hibaüzenet sem a megfelelő viselkedés - az valószínűleg a változó újrainicializálása lenne tömbként, hiszen a gyakorlott PHP programozók pont ezt a viselkedést várnák.
Még nincs eldöntve, hogyan lesz megoldva a 4.3.0-ig ez a "funkció".
PHP PECL Hitelesítési Hatóság - a két héttel ezelőtti PECL hitelesítési problémákat követően úgy tűnik, hogy vagy Rasmus Lerdorf, vagy Stig Bakken lesz majd e terület felelőse. Ha a PHP közösségben valakinek van már tapasztalata hasonló területeken, vagy a folyamat egyszerűsítésében tudna segíteni, kérjük, vegye fel a kapcsolatot a fejlesztőkkel a levelezőlistán!
Tömb inicializálása - Yasuo Ohgaki talált egy hibát a PHP jelenlegi verzióinak tömbinicializálásában. A következő kódrészlet (amint azt Yasuo megadta) bemutatja a problémát:
< ?php
$str = 'A';
$str[] = 'b';
? >
< ?php
$int = 123;
$int[] = 'b';
var_dump($int);
? >
$str = 'A';
$str[] = 'b';
? >
< ?php
$int = 123;
$int[] = 'b';
var_dump($int);
? >
Az első példa a következő hibát okozza:
"PHP Fatal error: [] operator not supported for strings in - on line 3 -(3) :
Fatal error - [] operator not supported for strings"
Fatal error - [] operator not supported for strings"
a második pedig:
"PHP Warning: Cannot use a scalar value as an array in - on line 3 -(3) :
Warning - Cannot use a scalar value as an array
Warning: Cannot use a scalar value as an array in - on line 3 int(123)"
Warning - Cannot use a scalar value as an array
Warning: Cannot use a scalar value as an array in - on line 3 int(123)"
Már ez a következetlenség is eléggé zavaró, de Yasuo rámutatott, hogy egyik hibaüzenet sem a megfelelő viselkedés - az valószínűleg a változó újrainicializálása lenne tömbként, hiszen a gyakorlott PHP programozók pont ezt a viselkedést várnák.
Még nincs eldöntve, hogyan lesz megoldva a 4.3.0-ig ez a "funkció".
PHP Weekly - 97.
A Zend szokásos heti hírlevelének 97. számából:
XSLT verziószám - Christian Stocker készítette el a kódot, amely elérhetővé teszi az új XSLT funkció által használt Sablotron könyvtár verziószámát, Sterling Hughes pedig már be is olvasztotta a kódot az XSLT kiegészítőbe.
PHP szálak - Alan Knowles elkezdett dolgozni egy projekten, amely szálkezelési támogatást nyújtana a PHP-ben.
Számos fejlesztő fejezte ki véleményüket, valamint mintakódokat adtak leveleikben arra vonatkozólag, mire lenne szüksége ennek a funkciónak, hogy megfelelően működhessen a jelenlegi PHP architektúrán belül. Habár a megvalósítása nem lehetetlen, általános vélemények szerint nem lesz könnyű feladat. Ám a végeredmény megérheti az erőfeszítéseket. A szálak lehetővé teszik a kód egyes részeinek a háttérben történő futtatását, a szkript többi részének futása közben. Ez kétségkívül olyan funkció lenne, amelyet nagyon sok PHP programozó hasznosnak találna, különösen a grafikai kiegészítőket (mint Andrei Zmievski GTK kódja) futtatók. A következő hetekben kétségkívül sokat hallunk még Alan munkájáról.
XSLT verziószám - Christian Stocker készítette el a kódot, amely elérhetővé teszi az új XSLT funkció által használt Sablotron könyvtár verziószámát, Sterling Hughes pedig már be is olvasztotta a kódot az XSLT kiegészítőbe.
PHP szálak - Alan Knowles elkezdett dolgozni egy projekten, amely szálkezelési támogatást nyújtana a PHP-ben.
Számos fejlesztő fejezte ki véleményüket, valamint mintakódokat adtak leveleikben arra vonatkozólag, mire lenne szüksége ennek a funkciónak, hogy megfelelően működhessen a jelenlegi PHP architektúrán belül. Habár a megvalósítása nem lehetetlen, általános vélemények szerint nem lesz könnyű feladat. Ám a végeredmény megérheti az erőfeszítéseket. A szálak lehetővé teszik a kód egyes részeinek a háttérben történő futtatását, a szkript többi részének futása közben. Ez kétségkívül olyan funkció lenne, amelyet nagyon sok PHP programozó hasznosnak találna, különösen a grafikai kiegészítőket (mint Andrei Zmievski GTK kódja) futtatók. A következő hetekben kétségkívül sokat hallunk még Alan munkájáról.
phpMyAdmin 2.3.0
Tegnap megjelent az egyik legkedveltebb adatbáziskezelő felület, a phpMyAdmin új változata, a következő újdonságokkal:
- kisebb oldalak, menüvel a táblák és adatbázistulajdonságok eléréséhez,
- központi adatbázis a támogató táblák számára,
- különböző karakterkészlet választható a MySQL és a HTML számára,
- utf-8 karakterkészlet támogatása,
- SQL parancsok szintaxiskiemelő színezése,
- séma mentése PDF formátumban is,
- kisebb oldalak, menüvel a táblák és adatbázistulajdonságok eléréséhez,
- központi adatbázis a támogató táblák számára,
- különböző karakterkészlet választható a MySQL és a HTML számára,
- utf-8 karakterkészlet támogatása,
- SQL parancsok szintaxiskiemelő színezése,
- séma mentése PDF formátumban is,
augusztus 1
Ismét új PHP programozói verseny
A Codewalkers.com új versenyének díjai ismét Zend póló, egy Zend Studio 2.5, valamint a PHP and MySQL Web Development című könyv. A cél ezúttal olyan szkript készítése (természetesen csakis PHP-ben), amely a "Foglald el a zászlót!" (azaz Capture the Flag) játékban egy 30x30-as mezőn előbb célhoz ér, vagy "eliminálja" ellenfelét.
Részletek valamint a kiírás: http://codewalkers.com/php-contest.php
■ Részletek valamint a kiírás: http://codewalkers.com/php-contest.php
július 31
PHP Accelerator 1.3.2
Megjelent a PHP gyorsító új változata. Az újdonságok közül kiemelendő a napokban említett IonCube Encoder támogatása, valamint az aktivációs kulcsok szükségtelensége, ezeken kívül számos hibajavítást és gyorsítást tartalmaz az elődhöz képest.
Honlap és letöltés: www.php-accelerator.co.uk
■ Honlap és letöltés: www.php-accelerator.co.uk
július 29
PHP Weekly - 96.
A Zend szokásos heti hírlevelének 96. számából:
4.2.x biztonsági problémák - Sebezhető pontot találtak mind a 4.2.0-ás, mind a 4.2.1-es PHP-ben, amely lehetővé teszi a támadó számára tetszőleges kód futtatását a kiszolgálón. A lyuk a PHP HTTP_POST funkciójában található. A probléma megoldására azonnal új PHP verziót tettek közzé, amely egyszerűen egy biztonságossá tett 4.2.1, új funkciók nem kerültek bele. A sebezhetőség részletesebb megértéséhez a hivatalos weboldal, vagy a felfedező e-matters honlapja nyújt segítséget. A 4.2.2 a szokásos helyekről tölthető le.
A kézikönyv fordítása szlovák/cseh, svéd és holland nyelvekre - több önkéntes is jelentkezett már a listán azzal a szándékkal, hogy ezekre a nyelvekre fordítsák a PHP kézikönyvet. Ha valaki folyékonyan beszéli az angol mellett ezek valamelyikét, szívesen látják a jelentkezőket!
4.2.x biztonsági problémák - Sebezhető pontot találtak mind a 4.2.0-ás, mind a 4.2.1-es PHP-ben, amely lehetővé teszi a támadó számára tetszőleges kód futtatását a kiszolgálón. A lyuk a PHP HTTP_POST funkciójában található. A probléma megoldására azonnal új PHP verziót tettek közzé, amely egyszerűen egy biztonságossá tett 4.2.1, új funkciók nem kerültek bele. A sebezhetőség részletesebb megértéséhez a hivatalos weboldal, vagy a felfedező e-matters honlapja nyújt segítséget. A 4.2.2 a szokásos helyekről tölthető le.
A kézikönyv fordítása szlovák/cseh, svéd és holland nyelvekre - több önkéntes is jelentkezett már a listán azzal a szándékkal, hogy ezekre a nyelvekre fordítsák a PHP kézikönyvet. Ha valaki folyékonyan beszéli az angol mellett ezek valamelyikét, szívesen látják a jelentkezőket!
július 26
ionCube PHP Encoder
Ha már az előző hírnél szóba hoztam a Zend Encodert, rögtön eszembe is jutott, hogy a héten jelent meg egy vadiúj (szintén nem ingyenes, ám a Zend szolgáltatásnál sokkal jobb árakkal rendelkező) konkurrense, az ionCube PHP Encoder.
A program előnyei: szkriptjeink erős védelme a lefordított kód titkosításával, olcsóság, teljes PHP kompatibilitás, beleértve pl. a __FILE__ kódolását is, amelybe más titkosítóknak már beletört a bicskája, nagyon gyors dekódolás, valamint teljesen biztonságos támogatás a PHP Accelerator következő (a héten megjelenő) verziója által.
Az árakra jellemző, hogy például a SquirrelMail közel harmincháromezer soros forráskódját is csak 30 dollárért kódolják el.
Bővebb információ, letöltés a honlapon: http://www.ioncube.com/encoder/
■ A program előnyei: szkriptjeink erős védelme a lefordított kód titkosításával, olcsóság, teljes PHP kompatibilitás, beleértve pl. a __FILE__ kódolását is, amelybe más titkosítóknak már beletört a bicskája, nagyon gyors dekódolás, valamint teljesen biztonságos támogatás a PHP Accelerator következő (a héten megjelenő) verziója által.
Az árakra jellemző, hogy például a SquirrelMail közel harmincháromezer soros forráskódját is csak 30 dollárért kódolják el.
Bővebb információ, letöltés a honlapon: http://www.ioncube.com/encoder/
Új Zend Optimizer
Tegnaptól érhető el a Zend Optimizer legújabb változata, amely már teljeskörűen támogatja a PHP 4.2.x változatait is. Az ingyenes Zend Optimizer a Zend Encoder által titkosított fájlokat dekódolja és futtatja, egyben pedig gyorsítani tudja a PHP kód futását Apache 1.3.x, IIS 4 és 5, valamint Zeus szervereken. Letölthető Linuxokra, Sparc platformú Solarisra, FreeBSD-re és Windowsokra a következő címről:
http://www.zend.com/store/products/zend-optimizer.php
■ http://www.zend.com/store/products/zend-optimizer.php
PHP Weekly - 95.
A Zend szokásos heti hírlevelének 95. számából:
PHP hírcsoport indult - azok számára, akik szívesen olvasgatják a hírcsoportokat, érdekfeszítő hír a kétségkívül teljesen "nyilvános" PHP hírcsoport, a comp.lang.php elindulása. A közel három hónapos folyamat megérte a várakozást, hiszen megszilárdítja a PHP helyét a USENET hierarchiában a comp.lang. alatt szereplő programozási nyelvek mellett. A hír írásakor az új csoportnak már ott kellene lennie minden helyi hírkiszolgálón.
A kézikönyv arab fordítása - jól halad, számos önkéntes jelentkező segítségének köszönhetően. Ám ha van itt olyan, aki jól tud arabul és angolul is, nem akar esetleg besegíteni? Ez lesz a 14. nyelv, amelyen a PHP dokumentáció elérhető.
PHP hírcsoport indult - azok számára, akik szívesen olvasgatják a hírcsoportokat, érdekfeszítő hír a kétségkívül teljesen "nyilvános" PHP hírcsoport, a comp.lang.php elindulása. A közel három hónapos folyamat megérte a várakozást, hiszen megszilárdítja a PHP helyét a USENET hierarchiában a comp.lang. alatt szereplő programozási nyelvek mellett. A hír írásakor az új csoportnak már ott kellene lennie minden helyi hírkiszolgálón.
A kézikönyv arab fordítása - jól halad, számos önkéntes jelentkező segítségének köszönhetően. Ám ha van itt olyan, aki jól tud arabul és angolul is, nem akar esetleg besegíteni? Ez lesz a 14. nyelv, amelyen a PHP dokumentáció elérhető.
július 23
PHP 4.2.2 - fontos biztonsági javítás!
Közlemény kibocsátva: 2002. július 22.
Érintett szoftverek: PHP 4.2.0 és 4.2.1
Platformok: Mind
A PHP Csoport komoly biztonsági sebezhetőségre bukkant a PHP 4.2.0 és 4.2.1 változatokban, amely eredményeként egy behatoló akár tetszőleges kódot is futtathat a webkiszolgáló jogosultságaival. A sebezhetőséget a webkiszolgáló kompromittálására, illetve bizonyos körülmények között jogosultságok megszerzésére is kihasználhatják illetéktelenek.
A PHP intelligens módon elemzi a HTTP POST lekérések fejléceit. A kód a böngésző által küldött "multipart/form-data" lekérések változóit és fájljait választja szét, ám hiányos a bemeneti ellenőrzése, ez vezet sebezhetőséghez.
A sebezhetőséget bárki kihasználhatja, aki HTTP POST lekéréseket tud küldeni az érintett webkiszolgálónak. Mind helyi, mind távoli felhasználók szerezhetnek így jogosulatlan hozzáférést a kiszolgálón, akár tűzfal mögött is.
A 32 bites IA platformokon (azaz Intel vagy AMD processzorú gépeken) a sebezhetőséget nem lehet kihasználni, ugyanis az architektúra felépítése (a stackek kiosztása) folytán ellenőrizhetetlen, hova kerül az inicializálatlan kódrész. Ennek eredményeként az IA32 platformon az nem fut le, viszont nagy valószínűséggel összeomlasztja a PHP-t, és gyakran a webkiszolgálót is.
A PHP csoport a sebezhetőség elhárítására új PHP verziót tett közre, és nyomatékosan felhívja a PHP 4.2.0 és 4.2.1 változatok használóit, hogy frissítsenek a hibát javító 4.2.2 változatra. Mind a forráskód, mind a windows telepítő, valamint a patchek letölthetőek a php.net oldalról, illetve magyarországi tükörszerverekről, a hu.php.net és a hu2.php.net címekről.
Érintett szoftverek: PHP 4.2.0 és 4.2.1
Platformok: Mind
A PHP Csoport komoly biztonsági sebezhetőségre bukkant a PHP 4.2.0 és 4.2.1 változatokban, amely eredményeként egy behatoló akár tetszőleges kódot is futtathat a webkiszolgáló jogosultságaival. A sebezhetőséget a webkiszolgáló kompromittálására, illetve bizonyos körülmények között jogosultságok megszerzésére is kihasználhatják illetéktelenek.
A PHP intelligens módon elemzi a HTTP POST lekérések fejléceit. A kód a böngésző által küldött "multipart/form-data" lekérések változóit és fájljait választja szét, ám hiányos a bemeneti ellenőrzése, ez vezet sebezhetőséghez.
A sebezhetőséget bárki kihasználhatja, aki HTTP POST lekéréseket tud küldeni az érintett webkiszolgálónak. Mind helyi, mind távoli felhasználók szerezhetnek így jogosulatlan hozzáférést a kiszolgálón, akár tűzfal mögött is.
A 32 bites IA platformokon (azaz Intel vagy AMD processzorú gépeken) a sebezhetőséget nem lehet kihasználni, ugyanis az architektúra felépítése (a stackek kiosztása) folytán ellenőrizhetetlen, hova kerül az inicializálatlan kódrész. Ennek eredményeként az IA32 platformon az nem fut le, viszont nagy valószínűséggel összeomlasztja a PHP-t, és gyakran a webkiszolgálót is.
A PHP csoport a sebezhetőség elhárítására új PHP verziót tett közre, és nyomatékosan felhívja a PHP 4.2.0 és 4.2.1 változatok használóit, hogy frissítsenek a hibát javító 4.2.2 változatra. Mind a forráskód, mind a windows telepítő, valamint a patchek letölthetőek a php.net oldalról, illetve magyarországi tükörszerverekről, a hu.php.net és a hu2.php.net címekről.



