首頁  >  文章  >  php框架  >  Laravel如何修補網站漏洞

Laravel如何修補網站漏洞

藏色散人
藏色散人轉載
2020-06-12 15:11:503794瀏覽

以下由Laravel開發教學專欄為大家介紹Laravel修復網站漏洞的方法,希望對需要的朋友有幫助!

Laravel如何修補網站漏洞

Laravel框架是目前許多網站,APP經營者都在使用的一款開發框架,正因為使用的網站較多,許多攻擊者都在不停的對該網站進行漏洞測試,我們在對該套系統進行漏洞測試的時候,發現存在REC漏洞.主要是XSRF漏洞,下面我們來詳細的分析漏洞,以及如何利用,漏洞修復等三個方面進行全面的記錄.

該Laravel REC漏洞的利用是需要條件的,必須滿足APP_KEY洩漏的情況下才能成功的利用與觸發,我們SINE安全技術在整體的漏洞測試與復現過程裡,共發現2個地方可以導致網站漏洞的發生,第一個是Post數據包裡的cookies字段,再一個是HTTP header字段可以插入惡意的共計代碼到網站後端中去.

我們來搭建一下網站漏洞測試的環境,使用linux centos系統,PHP5.5版本,資料庫是mysql,使用apache環境來搭建,使用的Laravel版本為5.6.28.首先我們去官方下載該版本,並解壓到apache設定的網站目錄路徑.首先我們post資料過去可以看到我們程式碼裡,會呼叫十幾個類別,並將類別裡的物件進行呼叫,參數賦值,而在cookies和verifycsrftoken值裡發現可以使用app_key進行漏洞利用,首先我們使用cookies來複現看下:

Laravel如何修補網站漏洞

程式碼如下:

POST / HTTP/1.2
Host: 127.0.0.2:80
Cookie: safe_SESSION=PHPSTORM; 5LqG5L+d6K+B5omA6L6T5Ye655qE57yW56CB5L2N5Y+v6K+75a2X56ym77yMQmFzZTY05Yi25a6a5LqG5LiA5Liq57yW56CB6KGo77yM5Lul5L6/6L+b6KGM57uf5LiA6L2s5o2i44CC57yW56CB6KGo55qE5aSn5bCP5Li6Ml42PTY077yM6L+Z5Lmf5pivQmFzZTY05ZCN56ew55qE55Sx5p2l44CCDQoNCkJhc2U2NOe8lueggeihqA==;
Content-Type: application/x-www-form-
Connection: open
Content-Length: 1

上面的程式碼中在cookies欄裡.加密的值就是我們要偽造的攻擊代碼,將該POST請求提交到網站中去,首先會對APP_key進行解密並賦值過去,如果解密成功的話, 哪麼就會效驗cookies裡的值,並對其進行反序列的操作,進而導致漏洞的發生,就會觸發RCE漏洞了.

http header方式的漏洞利用,我們漏洞測試一下,首先也是構造跟cookies差不多的程式碼,如下:

POST / HTTP/1.2
Host: 127.0.0.2:80
X-XSRF-TOKEN: +B5omA6L6T5Ye655qE57yW56CB5L2N5Y+v6K+75a2X56ym77yMQmFzZTY05Yi25a6a5LqG5LiA5Liq57yW56CB6KGo77yM5Lul5L6/6L+b6KGM57uf5LiA6L2s5o2i44CC57yW56CB6KGo55qE5aSn5bCP5Li6Ml42PTY077yM6L+Z5Lmf5pivQmFzZTY05ZCN56ew55qE55Sx5p2l44CCDQoNCkJhc2U2NOe8lueggeihqA==;
Content-Type: application/x-www-form-
Connection: open
Content-Length: 1

Laravel如何修補網站漏洞

#這裡看這個X-XSRF-TOKEN:值,Laravel 框架在提交過程中會去判斷並效驗這個值,如果解密成功就會進行反序列化的操作,這裡就不再一一的介紹與解釋了.

那如何對Laravel的漏洞進行修復?

我們SINE安全技術對Laravel的版本進行升級發現,最新的5.6.30版本已經對該rce漏洞進行了修復,在我們對程式碼的比對中看出,對cookies的解密並解析操作進行了判斷,多寫了static::serialized() 值,同樣的在X-XSRF-TOKEN裡也加入了這個值.如果您對程式碼不是太懂的話,也可以找專業的網站安全公司來進行修復,針對於Laravel的網站漏洞檢測與測試就到此,也希望透過這次的分享,讓更多的人了解網站漏洞,漏洞的產生原因,以及該如何修復漏洞,網站安全了,我們才能放開手腳去開拓市場,做好營銷.

以上是Laravel如何修補網站漏洞的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:aliyun.com。如有侵權,請聯絡admin@php.cn刪除