临近春节,某聚合支付平台被攻击篡改,导致客户修改提取的银行卡信息,恶意回拨支付订单,篡改回拨ApI接口数据,用户管理后台任意登录,商户、编码员订单自动确认,损失数十万余元。没有办法完全攻击平台。通过朋友的介绍,我们找到SINE安全公司寻求网站安全防护支持。针对客户的支付渠道和聚合支付网站被网站攻击篡改的问题,我们立即成立网站安全应急响应小组,对问题进行分析,找出漏洞根源,防止攻击篡改,最大限度减少客户损失。
我们分享这个安全处理的解决过程,希望整个支付平台更加安全。首先,在客户方面,我们在Sinesafe安排了几位工作了十年的安全工程师,解决聚合支付平台被攻击篡改的安全问题,了解客户支付网站目前的症状和支付漏洞。客户说这些问题是在支付平台运营一个月的时候出现的,然后在运营的第二个月就发生了几次攻击和篡改。在客户自己的技术阻断了攻击路线后根据网站日志分析,在随后的两个月内支付并没有受到攻击。近几天付款订单被篡改,很多未付款订单实际上被篡改为成功付款,成功的数据被渠道退回,导致平台损失较大。立即暂停支付渠道,联系代码提供商停止支付接口。该客户还报告称,支付链接被劫持并跳转到其他人,导致许多已支付订单被支付到攻击者的账户,损失难以言表。
很多商家和团体使用聚合支付平台,所以损失的既是商家,也是支付平台。有时商家对小价值订单不进行详细检查,包括支付平台对一些小价值订单不认真审核,导致攻击者混淆视线,模拟正常支付流程,篡改订单状态,以获取自身利益。支付渠道对接,秒发出回拨,支付指令过于并发,几乎没人能察觉到资金被盗。客户从渠道对比聚合支付总账,发现金额不对等,才意识到网站被黑客入侵。
接下来,我们开始对客户的网站代码和服务器进行全面的人工安全审计,检测网站存在的漏洞和代码后门。客户网站采用thinkphp mysql数据库架构,服务器系统由linuxcentos以宝塔面板为服务器进行管理。我们打包并压缩了一个完整的聚合支付源代码。包括网站一个月的访问日志,也被压缩下载到我们SINE安全工程师的本地电脑上。通过我们工程师的一系列安全测试和追踪日志来源,发现了问题。网站上有一个木马后门,也叫webshell。在文件上传目录中找到了redmin.php的pHp脚本木马和coninc.php数据库管理的木马后门,如下图所示:
这个数据库木马后门的功能是修改数据库的表段。通过查看日志发现,修改订单支付状态的原因是通过这个数据库木马后门,修改未付款订单状态,绕过上游渠道的回拨接口,返回数据,直接将状态改为支付成功,返回商家端将充值金额添加到客户网站。攻击者直接在客户网站消费取现,一切损失由支付平台承担。我们的SINE安全技术发现,在支付提交功能代码的安全审计中存在一个SQL注入漏洞,可以更新要在数据库中执行的恶意代码,导致修改数据库内容,生成远程代码并下载到网站根目录,生成webshell文件。Tp架构本身也存在远程代码执行漏洞,导致该网站遭到攻击和篡改。我们立即修复了网站的漏洞,也叫Tp框架漏洞,并对网站文件目录做了防篡改安全部署,禁止任何pHp文件的生成。
继续进行安全检查,发现客户网站的商户和码商的用户登录功能存在任意登录漏洞。程序员在代码编写过程中没有判断用户的状态,导致用户在后台随机登录。攻击者可以登录后台确认未支付订单,直接将订单设置为支付成功,返回商家网站,实现资金被盗。我们修复了客户后台登录功能,判断了用户权限,验证了数据库密码。到目前为止,我们的SINE安全技术已经清除了所有支付平台的木马后门文件,包括网站漏洞的全面修复,网站的全面加固和防御。如果你的聚合支付或者支付渠道系统被篡改攻击,建议找专业的网站安全公司解决。绿盟深信他们在国内都是专业的,也希望我们的安全问题处理流程的共享能够让支付平台的网络安全更上一层楼。平台越安全,我们的支付就越安全,我们的资金也就越安全。