首頁 -> 安全研究

安全研究

緊急通告
綠盟科技緊急通告(Alert2015-05)

NSFOCUS安全小組([email protected])
http://www.nsfocus.com

PHP multipart/form-data頭部解析遠程拒絕服務漏洞

發布日期:2015-05-18


受影響的軟件及系統:
====================
PHP 5.0.0 - 5.0.5
PHP 5.1.0 - 5.1.6
PHP 5.2.0 - 5.2.17
PHP 5.3.0 - 5.3.29
PHP 5.4.0 - 5.4.40
PHP 5.5.0 - 5.5.24
PHP 5.6.0 - 5.6.8

未受影響的軟件及系統:
======================
PHP 5.4.41
PHP 5.5.25
PHP 5.6.9

綜述:
======
PHP 存在一個遠程拒絕服務漏洞,攻擊者通過發送惡意的HTTP請求,可以導致CPU資源大量占用,造成遠程拒絕服務。

此漏洞影響所有PHP 5版本,更低版本可能也受影響,建議盡快升級。

分析:
======
PHP 在處理HTTP請求中的multipart/form-data頭部數據時存在一個安全漏洞,導致PHP大量重復分配和拷貝內存的操作,可能造成CPU資源占用100%并持續較長時間,這可能造成遠程拒絕服務攻擊。

PHP 調用multipart_buffer_headers()函數來解析HTTP請求中的multipart頭部數據,每次解析由get_line得到的一行。當被解析的行是以空白字符開始或者不包含“:”字符時,該行將被當作是前一頭字段的延續來處理。此時,將會分配一個新的緩沖區,將前一頭字段的值與當前行拼接起來作為該字段新的值。這個過程包含1次emalloc調用、2次memcpy調用。

若一個頭字段是由多行組成,將導致多次調用emalloc與memcpy,并且分配的空間與拷貝的長度將越來越大。

因此,當行的數目足夠多時,拷貝的操作將顯著的消耗服務器的CPU。實際測試中,包含近一百萬行的頭字段可以使服務器的CPU保持100%幾秒或者數十秒。如果并發多個攻擊請求,可能造成更長時間的資源占用。

攻擊者可通過發送一個2M左右的包含多行multipart頭部數據的HTTP請求來發起攻擊,無需認證,也不依賴PHP程序本身的內容。

解決方法:
==========
沒有好的臨時解決方法,建議進行升級。

廠商狀態:
==========
PHP 已經在下列版本中修復此漏洞:

PHP 5.4.41:
http://php.net/downloads.php#v5.4.41

PHP 5.5.25:
http://php.net/downloads.php#v5.5.25

PHP 5.6.9:
http://php.net/downloads.php#v5.6.9

附加信息:
==========
1. https://bugs.php.net/bug.php?id=69364
2. http://php.net/ChangeLog-5.php#5.6.9
3. http://www.uaeogq.live/index.php?act=alert&do=view&aid=157

聲 明
==========

本安全公告僅用來描述可能存在的安全問題,綠盟科技不為此安全公告提供任何保證或承諾。由于傳播、利用此安全公告所提供的信息而造成的任何直接或者間接的后果及損失,均由使用者本人負責,綠盟科技以及安全公告作者不為此承擔任何責任。綠盟科技擁有對此安全公告的修改和解釋權。如欲轉載或傳播此安全公告,必須保證此安全公告的完整性,包括版權聲明等全部內容。未經綠盟科技允許,不得任意修改或者增減此安全公告內容,不得以任何方式將其用于商業目的。

關于綠盟科技
============

綠盟科技(NSFOCUS Co., Ltd.)是中國網絡安全領域的領導企業,致力于網絡和系統安全問題的研究、高端網絡安全產品的研發、銷售與網絡安全服務,在入侵檢測/保護、遠程評估、 DDoS攻擊防護等方面提供具有國際競爭能力的先進產品,是國內最具安全服務經驗的專業公司。有關綠盟科技的詳情請參見: http://www.nsfocus.com

© 2019 綠盟科技
重庆时时彩计划准不准 棋牌破解黑客吧 闲来广东汕头麻将 北京时时彩规则 重庆时时诈骗最新案 江苏快3app 幸运飞艇冠军预测软件破解版 pk10彩票投注软件制作 辽宁快乐12预测号码推荐号码 街头烈战AG现金游戏 七星彩开奖走势图彩宝贝 上证指数是什么意思 海王捕鱼为何这么坑