今天來分享對客戶網站代碼進行滲透測試,漏洞測試的同時我們ESAFE安全滲透技術要對
客戶的網站原始程式碼進行全方位的安全檢測與審計,只有真正的瞭解網站,才能更好的去滲透測試,發現
網站存在的漏洞,盡可能的讓客戶的網站在上線之前,安全防護做到最極致.在後期的網站,平臺快速發
展過程中,避免重大的漏洞導致的經濟損失.
在您網站還沒遇到駭客時請找我們ESAFE幫您做測試讓您的資產更多了一層保護。
通常如果是使用PHP代碼去建立網站,大部分一定離不開SQL,這是後我們就可以開始做邏輯注入滲透攻擊:
首先分享一下我們ESAFE安全前段時間對客戶的金融平臺的滲透測試過程,在審計代碼的時候發現了
問題,首先看到的是客戶網站採用的php語言+mysql資料庫,前端還使用了VUE JS框架,在進行滲
透測試前,我們要檢查客戶網站的原始程式碼是否加密以及混淆,再一個查看php檔是否對應的URL
位址,是調用的,還是單獨的PHP功能頁面,還有入口檔和index.php首頁訪問頁面的代碼是否一
致化.接著要瞭解的是整個金融平臺網站的目錄,都包含哪些功能目錄,這次我們檢查到的,客戶網
站有會員註冊功能,頭像上傳功能,銀行卡添加,充值,提現,投資記錄,意見與回饋,個人資料修改等
等功能.
我們ESAFE安全在進行網站代碼的安全審計,採用的審計方法是敏感函數以及傳輸值的追蹤與調試的
辦法去查看代碼是否含有惡意程式碼以及存在的漏洞隱患,是否可導致產生網站漏洞,包括一些邏輯漏
洞,垂直,平行越權漏洞的產生.
在大體的代碼審計一遍後發現有些PHP檔存在SQL注入漏洞,沒有開關閉合引號,導致可以前端傳
入惡意的參數值,並傳入到資料庫中進行執行,尤其新聞公告欄目裡newxinxi.php?id=18,打開後是
直接調用資料庫裡的新聞內容,但是ID這個值沒有限制輸入中文以及特殊字元,導致直接執行到後端
的資料庫當中去了,我們ESAFE安全技術隨即對客戶的網站漏洞進行了修復,限制ID=的值為數位,不
允許輸入中文等特殊字元.在充值,以及提現功能裡,我們發現客戶的網站代碼並沒有對數字的正負
號進行限制,導致可以輸入負號進行充值,以及提現,在實際的滲透測試中發現提現中輸入負數,可以
導致個人帳戶裡的金額增加,後臺並沒有審核提現的功能.而是直接執行了提現功能.
網站還存在遠端執行代碼寫入漏洞.可導致網站被上傳webshell,進而導致網站的許可權以及伺服器的
許可權被拿下,使用者資料被篡改被洩露都是可以發生的.我們來看下這個代碼,如下圖:
我們來看下這個變數值是如何寫,如何賦值的,$page, $dir = dirname(__FILE__)
.‘/../backup/’這個backup就是自訂的備份目錄.dirname 就是輸出的檔案名,當我們用helper
去定義這個類的時候,就會調用代碼裡的IF語句,判斷條件是否滿足,如果滿足就可以導致遠端插入
惡意程式碼,或構造惡意的代碼去執行,並輸出惡意檔到網站目錄中,像webshell都是可以的.
以上是我們ESAFE安全在對客戶網站進行滲透測試服務中發現的一部分漏洞,以及如何做的代碼安全
審計,漏洞測試過程的分享,,如果網站在運行中出現了被攻擊,資料被篡改等攻擊問題,可以找專業的
在您網站還沒遇到駭客時請找我們ESAFE幫您做測試讓您的資產更多了一層保護。