Laravel團隊發佈了Laravel 6 (v6.18.27) 和Laravel 7 (v7.22.0) ,以及即將發佈的Laravel 5.5 LTS 計劃安全發佈。您應儘快將應用程序更新到最新的修補程序版本,尤爲是在使用「 cookie」會話驅動程序的狀況下。php
安全性提示:Laravel 6.18.27和7.22.0已發佈,並帶有與安全相關的補丁程序。全部Laravel用戶都應儘快升級到這些版本。安全
Laravel 6是Laravel的當前LTS版本。可是,以前的LTS 5.5版本將在2020年8月底以前收到重要的安全更新。微信
Laravel 5.5。用戶應避免在生產環境中使用「 cookie」會話驅動程序:cookie
因爲咱們還沒有發佈 Laravel 5.5 的安全版本,所以咱們建議全部運行Laravel 5.5及更早版本的應用程序在其生產部署中不要使用「 cookie」會話驅動程序。oracle
下面是 Laravel 官方團隊發佈的原文:框架
今天咱們發佈了一些修復程序,以解決咱們在週末收到通知的框架中的安全漏洞。
受此漏洞影響的主要是使用「 cookie」會話驅動程序的應用程序。因爲咱們還沒有發佈Laravel 5.5版本的框架的安全版本,所以建議全部運行Laravel 5.5及更早版本的應用程序在其生產部署中不要使用「 cookie」會話驅動程序。
咱們還發布了Passport 9.3.2,以提供與當前版本的兼容性。若是您在Laravel 6.x或7.x上運行Passport,則應更新到今天的Passport 9.3.2版本。Passport 版本不是安全版本。可是,該庫須要更新才能與當今的框架更改內容兼容。
關於此漏洞,使用「 cookie」會話驅動程序的應用程序也經過其應用程序公開了一個加密 oracle,所以容易受到遠程代碼執行的攻擊。encryption oracle 是一種機制,好比對任意用戶的輸入進行加密,而後將加密後的字符串顯示給用戶。這種方案的組合使用戶能夠爲任何純文本字符串生成有效的 Laravel 簽名加密字符串,這樣,當應用程序使用「 cookie」驅動程序時,它們就能夠生成Laravel會話有效負載。
現在的修復程序在加密以前使用cookie名稱的HMAC哈希爲cookie值添加前綴,而後在解密時驗證匹配的哈希,即便經過應用程序公開了加密 oracle,也沒法制做有效的cookie有效負載。
我我的爲今天的安全發佈所帶來的不便深表歉意,由於此修復程序的性質要求咱們使Laravel應用程序發佈的現有加密cookie無效。感謝您的耐心和理解。
本文分享自微信公衆號 - PHP開源Hub(php_open)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。加密