5.2.14 版本推出同時核心團隊也宣佈將會停止修正 PHP 5.2 系列的一般性錯誤,安全性修正會在發現與修正同時立即獨立發佈,建議早點升級到 PHP 5.3 。
5.2.14 修正的安全性問題:
* 改寫 var_export() 為使用 smart_str ,取代輸出緩衝設計,避免錯誤發生時造成資料外洩
* 修正 strrchr() 中一個可能造成中斷的陣列弱點 (CVE-2010-2484)
* 修正 strchr(), strstr(), substr(), chunk_split(), strtok(), addcslashes(), str_repeat(), trim() 中可能造成中斷的陣列弱點
* 修正 substr_replace() 中一個可能的記憶體錯誤
* 修正 SplObjectStorage 在反序列化的問題 (CVE-2010-2225).
* 修正一個 fnmatch() 可能發生的堆疊耗盡問題
* 修正處理錯誤 XML-RPC 請求時發現的一個空指標反參考問題 (Fixes CVE-2010-0397, bug #51288).
* 修正 session 變數序列化在特定前置字元的處理問題
* 修正 sqlite 外掛可能發生任意存取記憶體問題
這個版本的主要改進:
* 升級內建的 PCRE 到 8.02
* 更新時區資料庫到版本 2010.5
* 修正 bug #52238 (在 iterator_to_array 發生例外時造成程式中止)
* 修正 bug #52237 (傳遞非物件的屬性參考時造成程式中止)
* 修正 bug #52041 (寫入函式傳回的未宣告變數出現記憶體弱點)
* 修正 bug #51822 (在靜態物件變數異常執行 __destruct() 時出現的記憶體區段錯誤)
* 修正 bug #51552 (debug_backtrace() 造成記憶體區段錯誤或是記憶體問題)
* 修正 bug #49267 (iconv on MacOS 的連結錯誤 "Undefined symbols: _libiconv")
完整的資訊請參考:
http://www.php.net/ChangeLog-5.php#5.2.14