[2011年8月18日]
PHP 開發團隊在此宣布 PHP 5.3.7 正式發佈。此版本著重於提升 PHP 5.3.x 分支的穩定性,包含超過 90 個錯誤修正,其中一些與安全性相關。
PHP 5.3.7 的安全性增強和修正
- 將 crypt_blowfish 更新至 1.2 版。(CVE-2011-2483) (更多資訊)
- 修正了 error_log() 中的當機問題。由 Mateusz Kocielski 回報。
- 修正了 crypt() 中過長 salt 導致的緩衝區溢位問題。
- 修正了錯誤 #54939(RFC1867 檔案上傳檔名中的檔案路徑注入漏洞)。由 Krzysztof Kotowicz 回報。(CVE-2011-2202)
- 修正了 socket_connect() 中的堆疊緩衝區溢位問題。(CVE-2011-1938)
- 修正了錯誤 #54238(substr_replace() 中的 use-after-free 問題)。(CVE-2011-1148)
PHP 5.3.7 的主要增強功能包括:
- 將內建的 Sqlite3 升級至 3.7.7.1 版。
- 將內建的 PCRE 升級至 8.12 版。
- 修正了錯誤 #54910(使用未知函式名稱呼叫 call_user_func 時當機)。
- 修正了錯誤 #54585(track_errors 導致區段錯誤)。
- 修正了錯誤 #54262(在非陣列變數中指定維度值時當機)。
- 修正了錯誤處理解構器中的當機問題。
- 修正了錯誤 #55339(allow_call_time_pass_reference = Off 時發生區段錯誤)。
- 修正了錯誤 #54935 php_win_err 可能導致當機的問題。
- 修正了錯誤 #54332(zend_mm_check_ptr 中的當機 // 堆積損壞)。
- 修正了錯誤 #54305(gc_remove_zval_from_buffer 中的當機)。
- 修正了錯誤 #54580(當 browscap ini 指令透過 php_admin_value 設定時,get_browser() 發生區段錯誤)。
- 修正了錯誤 #54529(SAPI 在 apache_config.c:197 處當機)。
- 修正了錯誤 #54283(new DatePeriod(NULL) 導致當機)。
- 修正了錯誤 #54269(過短的例外訊息緩衝區導致當機)。
- 修正了錯誤 #54221(在多個查詢中使用 mysqli::get_warnings 時發生區段錯誤)。
- 修正了錯誤 #54395(使用錯誤參數呼叫 Phar::mount() 時當機)。
- 修正了錯誤 #54384(當使用者空間類別未呼叫父建構函式時,雙迭代器、GlobIterator、SplFileObject 和 SplTempFileObject 當機)。
- 修正了錯誤 #54292(錯誤參數導致 SplFileObject::__construct() 中的當機)。
- 修正了錯誤 #54291(迭代以 \0 開頭的目錄名稱的 DirectoryIterator 時當機)。
- 修正了錯誤 #54281(未初始化的 RecursiveIteratorIterator 中的當機)。
- 修正了錯誤 #54623(在關閉通訊端副本後寫入永久通訊端時發生區段錯誤)。
- 修正了錯誤 #54681(使用無效旗標呼叫 addGlob() 時當機)。
- 修正了其他 80 多個錯誤。
Windows 使用者請注意:我們不再提供使用 Visual Studio C++ 6 建置的版本。使用這個未維護的編譯器無法維護高品質且安全的 PHP Windows 版本。
對於 Apache SAPI (php5_apache2_2.dll),請確定您使用 Visual Studio C++ 9 版本的 Apache。我們推薦使用由 ApacheLounge 提供的 Apache 版本。對於任何其他 SAPI(CLI、透過 mod_fcgi 的 FastCGI、使用 IIS 或其他支援 FastCGI 的伺服器的 FastCGI),一切都照舊運作。第三方擴充套件供應商必須重新建置他們的擴充套件,以使其與我們現在提供的 Visual Studio C++ 9 版本相容並可載入。
所有 PHP 使用者都應注意,PHP 5.2 系列已不再支援。強烈建議所有使用者升級到 PHP 5.3.7。
有關 PHP 5.3.7 的完整變更清單,請參閱 變更日誌。如需下載原始碼,請造訪我們的 下載頁面,Windows 二進位檔可在 windows.php.net/download/ 找到。