APP滲透測試基本內容與漏洞掃描介紹

網站安全發表於2019-10-24

天氣越來越涼爽,在對客戶網站程式碼進行滲透測試,漏洞測試的同時我們SINE安全滲透技術要對客戶的網站原始碼進行全方位的安全檢測與審計,只有真正的瞭解網站,才能更好的去滲透測試,發現網站存在的漏洞,儘可能的讓客戶的網站在上線之前,安全防護做到最極致.在後期的網站,平臺快速發展過程中,避免重大的漏洞導致的經濟損失.

APP滲透測試基本內容與漏洞掃描介紹

首先分享一下我們SINE安全前段時間對客戶的金融平臺的滲透測試過程,在審計程式碼的時候發現了問題,首先看到的是客戶網站採用的php語言+mysql資料庫,前端還使用了VUE JS框架,在進行滲透測試前,我們要檢查客戶網站的原始碼是否加密以及混淆,再一個檢視php檔案是否對應的URL地址,是呼叫的,還是單獨的PHP功能頁面,還有入口檔案和index.php首頁訪問頁面的程式碼是否一致化.接著要了解的是整個金融平臺網站的目錄,都包含哪些功能目錄,這次我們檢查到的,客戶網站有會員註冊功能,頭像上傳功能,銀行卡新增,充值,提現,投資記錄,意見與反饋,個人資料修改等等功能.

APP滲透測試基本內容與漏洞掃描介紹

我們SINE安全在進行網站程式碼的安全審計,採用的審計方法是敏感函式以及傳輸值的追蹤與除錯的辦法去檢視程式碼是否含有惡意程式碼以及存在的漏洞隱患,是否可導致產生網站漏洞,包括一些邏輯漏洞,垂直,平行越權漏洞的產生.

APP滲透測試基本內容與漏洞掃描介紹

在大體的程式碼審計一遍後發現有些PHP檔案存在SQL隱碼攻擊漏洞,沒有開關閉合引號,導致可以前端傳入惡意的引數值,並傳入到資料庫中進行執行,尤其新聞公告欄目裡newxinxi.php?id=18,開啟後是直接呼叫資料庫裡的新聞內容,但是ID這個值沒有限制輸入中文以及特殊字元,導致直接執行到後端的資料庫當中去了,我們SINE安全技術隨即對客戶的網站漏洞進行了修復,限制ID=的值為數字,不允許輸入中文等特殊字元.在充值,以及提現功能裡,我們發現客戶的網站程式碼並沒有對數字的正負號進行限制,導致可以輸入負號進行充值,以及提現,在實際的滲透測試中發現提現中輸入負數,可以導致個人賬戶裡的金額增加,後臺並沒有稽核提現的功能.而是直接執行了提現功能.

APP滲透測試基本內容與漏洞掃描介紹

網站還存在遠端執行程式碼寫入漏洞.可導致網站被上傳webshell,進而導致網站的許可權以及伺服器的許可權被拿下,使用者資料被篡改被洩露都是可以發生的.我們來看下這個程式碼,如下圖:

APP滲透測試基本內容與漏洞掃描介紹

我們來看下這個變數值是如何寫,如何賦值的,$page, $dir = dirname(__FILE__).‘/../backup/’這個backup就是自定義的備份目錄.dirname 就是輸出的檔名,當我們用helper去定義這個類的時候,就會呼叫程式碼裡的IF語句,判斷條件是否滿足,如果滿足就可以導致遠端插入惡意程式碼,或構造惡意的程式碼去執行,並輸出惡意檔案到網站目錄中,像webshell都是可以的.以上是我們SINE安全在對客戶網站進行滲透測試服務中發現的一部分漏洞,以及如何做的程式碼安全審計,漏洞測試過程的分享,,如果網站在執行中出現了被攻擊,資料被篡改等攻擊問題,可以找專業的網站安全公司來進行滲透測試服務,國內SINESAFE,綠盟,啟明星辰,都是比較不錯的,安全防患於未然,發現漏洞,修復漏洞,促使網站在上線之前安全防護做到極致,網站安全了,使用者才能用的安心,也希望更多的人瞭解滲透測試服務.


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31542418/viewspace-2661222/,如需轉載,請註明出處,否則將追究法律責任。

相關文章