ecshop手机支付宝支付篡改金额BUG
手机版ECShop点击支付宝支付的时候跳到这个php文件,
链接如下面:
wapapli/alipayapi.php?WIDseller_email=[卖家支付宝帐户]&WIDout_trade_no=[商户订单号]&WIDsubject=[商品名/或者订单号]&WIDtotal_fee=668.00
任意修改红色数字都可以正常提交,并且正常支付,正常返回成功支付.
原因:
当用户点击支付进入 alipay.api.php 这个文件的时候 , 程序才把金额以及其他支付信息签名并构造xml传输 , 这个过程中金额是明文传输 , 不免有人恶意篡改金额 .
至于为什么回调通知签名认证通过 , 是因为签名是在进入 alipay.api.php 这个文件才进行 , 此时金额已经篡改
修复:
1.把 卖家支付宝账户 、 商户订单号 、商品名/或者订单号 、金额 这些参数通过对称加密POST提交到 alipay.api.php 这个文件 , 然后解密才构造签名并构造xml提交给支付宝
2.在 alipay.api.php 文件内做一个验证金额是否正确的操作(不正确则返回非法操作) , 如 :
//验证金额
define('IN_ECS',true);
require_once('../includes/init.php');
$sql = "SELECT order_amount FROM " . $GLOBALS['ecs']->table('order_info') . " where order_sn='$out_trade_no'";
$order['order_amount'] = $GLOBALS['db']->getOne($sql);
if($order['order_amount'] != $total_fee){echo '非法操作';exit();
}
ecshop手机支付宝支付篡改金额BUG相关推荐
- 集成支付宝支付流程 和查询支付的结果
一:介绍 支付之前,在网上也查寻了资料, 支付接入坑太多,微信坑最多,api文档太复杂. 二:交互流程 建议先把开发文档仔仔细细看一遍,一定要看,刚开始的时候没有老老实实地看完,结果遇到很多的坑,浪费 ...
- 打开支付宝 html,如何处理支付宝支付后端返回的html代码
支付宝支付输入金额后发送ajax请求,后端返回的是一段html代码,如下: value='{"body":"\u652f\u4ed8\u5b9d\u5145\u503c& ...
- 支付宝html页面乱码,如何处理支付宝支付后端返回的html代码
支付宝支付输入金额后发送ajax请求,后端返回的是一段html代码,如下: value='{"body":"\u652f\u4ed8\u5b9d\u5145\u503c& ...
- java 支付宝支付(手机APP支付、电脑网站支付)
基础配置类 import com.alipay.api.AlipayClient;/* **类名:AlipayConfig*功能:基础配置类*详细:设置帐户有关信息及返回路径*修改日期:2017-04 ...
- 支付宝手机网站支付,app支付,PC端支付流程以及服务端php支付下单,回调流程详解
一.支付宝支付相关文档地址: 支付宝支付相关的文档地址:https://open.alipay.com/api 电脑网站支付:https://opendocs.alipay.com/open/270/ ...
- Spring Boot支付宝集成手机网站支付
一:简介 手机网站支付常用于HTML5应用,常见于微信公众号上的应用.手机网站支付文档 手机网站支付的流程图: 1.用户点击H5应用中的支付按钮 2.点击支付按钮会请求后台接口,后台接口请求支付宝的支 ...
- 支付宝PC即时到账和手机网站支付同步
前几个月做了一个旅游网站,有PC站和手机站,涉及支付宝支付功能. 要求:PC站下的单,用户用手机登录也能支付;同理,手机站下的单,PC端登录也能支付. 附支付宝开放平台网址:即时到账 ,手机网站支付. ...
- ecshop 手机版的php代码在哪里,PHP 在ecshop上集成 手机网页支付_php
参考alipay网页支付接口的代码 其实原理跟ecshop上集成的alipay支付差不多 就是因为利用curl请求的时候相应时间过长 所以不能直接去先post数据再生成button /** * 生成 ...
- 支付宝支付-手机浏览器H5支付
前言 支付宝支付-沙箱环境使用 支付宝支付-支付宝PC端扫码支付 支付宝支付-手机浏览器H5支付「本文」 手机浏览器支付,用户在安装支付宝APP的情况下,调用手机网站支付接口默认会唤起支付宝钱包支付, ...
- 呕心之作:支付宝的手机网站支付接口的应用
由于去年做手机Portl接口的工作,需要使用支付宝的支付,于是手机网站支付接口就成了首选. 1.首先下载接口包 支付宝商家服务中心链接:https://b.alipay.com/login.htm?g ...
最新文章
- 一次挂死(hang)的处理过程及经验
- android11测试版下载,Find X2系列 Android 11 Beta1 测试版发布,你要尝试一下吗?
- R语言|PLS_DA分析绘图示例
- calabash-android教程,自动化测试工具_Calabash-android调研
- UVA 610 Street Directions 双连通分量
- 认识CentOS下boot目录和el5、el6文件
- C#并发实战Parallel.ForEach使用
- html 在手机上运行,怎么在手机上打开HTML
- python外卷(12)-sort(),sorted(),ord(),chr()
- LeetCode 846. 一手顺子(map)
- c++ qt获取电脑的内存_Qt官方示例-TCP客户端/服务器示例
- linux网卡备份还原,CentOS6.x双网卡采用主-备份策略绑定(bond)
- 【简报】帮助开发人员在线了解CSS Filter特性的工具 - CSS FilterLab
- Netgear R6800 padavan稳定固件亲测
- android手机fingerprint,Fingerprint HIDL
- 教你如何写出完美的论文——5. 做笔记
- 移动硬盘文件丢失如何找回丨500G硬盘
- python批量下载bilibili视频_关于bilibili视频下载的一些小思路
- 我来告诉你哪个银行的信用卡最好用!
- 【艺术评析】陈全胜先生山水画
热门文章
- 51单片机学习笔记——串口通信
- 随机过程(基本概念、平稳随机过程)
- c语言调试程序错误,如何调试C程序的语法错误和逻辑错误
- mysql 分组查询 语句_MySQL分组查询
- win10 仿照linux终端,[菜鸟win10系统]类似Windows界面的Linux发行版
- Matlab窄带信号的测向算法
- 如何系统学习知识图谱-胖子哥的实践经验分享
- python 解决Fatal error in launcher:错误问题
- Python+tkinter应用程序设置背景图片
- HDL4SE:软件工程师学习Verilog语言(十)