PrestaShop網站漏洞修復如何修復

網站安全發表於2019-01-02

PrestaShop網站的漏洞越來越多,該網站系統是很多外貿網站在使用的一個開源系統,從之前的1.0初始版本到現在的1.7版本,經歷了多次的升級,系統使用的人也越來越多,國內使用該系統的外貿公司也很多,PrestaShop擴充套件性較高,模板也多,多種貨幣自由切換,並支援信用卡以及paypal支付,是外貿網站的首選。就在最近幾天,PrestaShop被爆出有遠端程式碼注入漏洞,該漏洞影響範圍較光,危害較大,可以上傳webshell到網站根目錄下。

50ed476c04a4446bbb38cdb61f17b386.png

2018年11月7號PrestaShop官方釋出了最新的版本,並修復了網站的漏洞,其中包含了之前被爆出的檔案上傳漏洞,以及惡意刪除圖片資料夾的漏洞,該漏洞的利用條件是需要有網站的後臺管理許可權。

這次發現的PrestaShop漏洞,是遠端程式碼注入漏洞,漏洞產生的程式碼如下在後臺的admin-dev目錄下filemanager檔案裡的ajax_calls.php程式碼,這個遠端的注入漏洞是後臺處理上傳檔案的功能導致的,程式碼裡的getimagesize()函式是獲取圖片地址的一個函式,該函式使用了php反序列化,這個反序列化存在遠端呼叫的一個功能,就是在這個功能裡存在遠端程式碼注入與執行,我們構造惡意的注入程式碼對其圖片程式碼提交就會執行我們的程式碼,我們來演示一下,首先搭建一臺linux伺服器,並搭建好apache+mysql資料庫的環境,拷貝PrestaShop程式碼到伺服器中,進行安裝,並除錯可以開啟。

37dd952b902d4c9f8e05176a91b51f62.png

我們來嘗試一下如何利用該漏洞,在後臺admin-rename目錄下的filemanager資料夾dialog.php的檔案,進行呼叫,這個頁面就是控制上傳檔案,上傳圖片的,使用action可以對上傳的引數進行安全控制,我們可以構造程式碼執行,admin-rename/filemanager/execute.php?action=rename_folder,post的方式進行提交,傳送資料到這個檔案程式碼裡,利用PHP的反序列化就可以自動的解析程式碼,達到遠端程式碼注入執行的效果。

PrestaShop網站漏洞修復與辦法

升級PrestaShop的版本到最新版本,設定php.ini的解析功能為off具體是phar.readonly=off,這裡設定為關閉,對網站的上傳功能加強安全過濾,過濾非法引數的插入,對網站的漏洞程式碼進行功能性的註釋。


相關文章