聚合支付網站被黑客攻擊 致使數據庫被篡改的防護辦法

2020春節即未來臨,收到新聚合支付平臺網站客戶的求助電話給咱們Sinesafe,反映支付訂單狀態被修改由原先未支付修改成已支付,致使商戶那邊直接發貨給此訂單會員了,商戶和平臺的損失較大,不少碼商都不敢用此支付平臺了,爲了防止聚合支付系統繼續被攻擊,咱們SINE安全大致狀況瞭解後,當即安排從業十年的安全工程師,成立聚合、通道支付平臺安全應急響應小組。php

分析並瞭解支付過程前端

咱們Sinesafe對整個第三方支付平臺網站的流程進行了分析以下,平臺首先要對接到上游支付通道,而後由上游支付通道返回支付狀態回調到平臺,而後由平臺的狀態返回給商戶(也就是碼商),首先碼商註冊好平臺的商家用戶,而後從商家用戶後臺獲取接口對接程序與碼商本身的網站進行對接調試,若是商家會員對訂單進行了支付,若是支付成功會回從平臺獲取支付狀態,而平臺去從上游通道獲取狀態來回調到自身平臺,目前大部分的接口都是一些PDD通道以及我的二維碼對接的企業通道,俗稱爲聚合支付。mysql

支付漏洞安全緣由症狀web

1.發如今碼商下的會員訂單並未成功支付致使在平臺這裏的支付狀態被黑客修改成已支付,從而回調數據給商戶說明已經支付了,致使訂單是成功的狀態,商家不得不發貨給會員(也就是上分給會員)從而惡意提現致使商家損失嚴重。sql

2.發現商戶申請提現這裏的收款人信息被篡改,致使商戶的資金被冒領。不少碼商對這一點是很是重視的,幾乎都是日結算。並且平臺天天放量都是有數量的,幾乎都是集團下的在收量,對於資金這一塊很是敏感而重視。thinkphp

3.發現有些訂單被刪除,致使對帳對不起來老是商戶結算和上游通道結算的金額不對應,致使盈利少,其實這是由於黑客把訂單刪除了而商戶的成功金額是增長的,但上游通道里的金額是不增長的。shell

網站漏洞安全日誌檢查分析數據庫

瞭解上述的問題後,知道了具體的問題發生症狀以及支付的整個流程,安排Sine安全工程師團隊小組快速響應處理找出漏洞問題關鍵,把客戶的損失降到最低,隨即登陸了支付平臺網站服務器對程序代碼作了審計和分析,發現程序用的是TP架構(thinkphp)管理後臺和前端都是在一塊兒的,對程序代碼功能函數作了對比看支付過程當中的函數有無被誇權限調用,發現後臺登陸這裏被作了手腳能夠經過內置的函數去任意登陸不須要任何密碼,如圖:安全

經過get此函數admin_login_test123能夠直接任意登陸後臺。發現這只是其中一點,後臺登陸後能夠設置訂單的狀態,但黑客的手法不是這樣操做的,由於從後臺手動改狀態的話那麼在支付成功的狀態這裏的數據庫表會增長一個data時間戳,而黑客篡改支付的狀態是沒有這個時間戳的,說明不是經過後臺去修改的,是經過直接執行sql語句或直接修改數據庫才達到的,知道問題緣由後分析了下程序其餘文件看是否有腳本後門,果然發現了phpwebshell後門,其中有好幾個後門都是能夠直接操做mysql數據庫以下:服務器

發現程序裏有很多的後門文件以及隱蔽一句話後門木馬,經過咱們SINE工程師的滲透測試服務發現商戶功能圖片上傳存在漏洞能夠任意上傳php格式的後門文件,致使被入侵,發如今訂單查詢功能中存在SQL注入漏洞能夠進行updata更新語句去執行數據庫修改。隨後咱們當即對這3個網站漏洞進行了修復,清理了木馬後門和隱蔽後門。讓平臺開始運營3天觀察看看還有無被篡改,至此沒再發生過訂單狀態被篡改攻擊的安全問題。

第三方支付平臺網站安全防禦建議

對新平臺的上線前必需要滲透測試漏洞,對sql注入進行語句嚴格定義和轉換,對上傳這裏的格式進行白名單控制,對網站支付回調和經過獲取狀態嚴格作對比,如對sgin作來回匹配比對,簽名效驗看是否存在被篡改值若是被篡改直接返回數據報錯,若是對程序代碼安全問題不熟悉不專業的話建議找專業的網站安全公司來處理解決,國內作的比較不錯的如Sinesafe,鷹盾安全,綠盟,啓明星辰等等都是比較大的網站安全服務商。

相關文章
相關標籤/搜索