101
konakona 2016-09-27 15:50:45 +08:00
lz 不会是后端吧。...
后端不用验证?天啊... |
102
qqmishi 2016-09-27 15:51:03 +08:00 via Android
永远不要相信客户端数据,服务端必须验证。
你根本想象不到撸羊毛群里有多少人整天等着用 Fiddler 改数据。 |
103
VRYANG 2016-09-27 15:54:12 +08:00
哈哈... 看来大神多... 没事,坑趟多了就好了。我现在都想把客户端只做显示用,所有能不要的逻辑都撤掉..
|
106
MountainRain 2016-09-27 16:00:03 +08:00 1
就这种水平还要做 APP 啊。。。。。。
|
108
corona 2016-09-27 16:03:15 +08:00
后端不做校验,可以有多种方式修改价格
|
110
explon 2016-09-27 16:05:06 +08:00
神逻辑,怎么不把用户验证也打包到 APP 里面去
|
112
luoyjx 2016-09-27 16:07:59 +08:00
那你肯定是客户端传的什么价格你就用什么价格了,前端的价格只是用来显示的,顶多后端允许订单号、商品 id 、商品数量这类数据,服务端再自己计算一次价格
|
113
falcon05 2016-09-27 16:16:37 +08:00 via iPhone
以前我就职的一家公司也是这样,买了一套 o2o 系统二次开发,也是 TM 一分钱购买,害我修改了大半天,吓死人
|
115
v23ex 2016-09-27 16:20:53 +08:00
LOW
|
116
ijustdo 2016-09-27 16:24:02 +08:00
找台笔记本 设置 wifi 代理 然后手机链接这个 wifi 然后 笔记本对流量抓包
撒分析不出来 偷懒的后台 然后 后台前台数据不加密 还有直接用 http/https 协议 api 的 ... 你们懂的.... 连微信都被抓包然后出来一堆微信机器人 你们后台咋这么自信呢 .... |
117
issues 2016-09-27 16:26:37 +08:00
干脆叫一分钱夺宝
|
118
kevincai100 2016-09-27 16:38:36 +08:00
楼主,请谷哥 FD 大法
|
119
PureDark 2016-09-27 16:41:58 +08:00
后台不验证!价格由客户端传进来!赶紧报告公司把这个后端开了、
写接口时,要抱着这个接口是公开透明的,所有人都知道的想法来写,要写到就算所有人都知道接口,也没有办法钻漏洞 题外话 @ccloli 学弟最近怎么点进哪都能看到你 |
120
ArthurTsang 2016-09-27 16:43:47 +08:00
明显不应该客户端去计算,同样想起了上次客户端生成订单号的帖子
|
121
acvrock 2016-09-27 16:46:59 +08:00
哈哈,以前有人接入支付宝就是在手机端这么搞的,后来还在烦恼怎么生成唯一的订单号
|
122
wclebb 2016-09-27 16:59:26 +08:00 via iPhone
前一阵子被别人要你刚加入什么情报群,好奇进去了,一般都会禁言+群发各种一分钱,网上可以搜一分钱改什么的软件。貌似已经存在很久了,所以这个群主要是分享福利和收钱发一分钱订单之类的(偶尔有免费),经常看见一分钱或一块钱买几百手机或商品,偶尔发发优惠券。
有一次觉得像真的,联系,要求付 240 ,我就付了,然后发来 12 日领取苹果手机,我就知道被骗了,质疑后被踢开。 从此学乖了,当交了智商税,任何提供的 QQ 号手机号一律社工库。当然我也举报了,腾讯理所当然判定我没有证据(最近十条,有证据在最上面……),过一阵子后腾讯又发来通知我这号确定诈骗。 |
123
qleroooo 2016-09-27 17:00:11 +08:00
android 如果代码混淆过的话,想看懂的话还是比较麻烦的吧!可能被抓包了吧
|
124
wclebb 2016-09-27 17:02:20 +08:00 via iPhone
@kevincai100 就是这个,估计已经成规模了,任何有一分钱的漏洞,都会群发到某个群,然后大家都会想办法去利用,最常见的是话费充值和商品送货,话费充值是他们最爱,因为无法追踪。地址起码还能知道在哪里。
|
125
x86 2016-09-27 17:03:37 +08:00
价格您说的算...2333
|
126
yilin101 2016-09-27 17:10:30 +08:00
楼主是微擎 或者微赞吗?
|
127
realpg 2016-09-27 17:12:15 +08:00
233333
都达不到普通工程师的水准就开始做涉及金钱的交易系统 |
128
dassh 2016-09-27 17:14:26 +08:00
试了下,还真可以。。建议赶紧停服务器,取消无效订单
|
129
zacard 2016-09-27 17:16:59 +08:00
后端不校验。这 app 都敢上线。。。
|
130
austinchou0126 2016-09-27 17:17:07 +08:00
"看热闹的不嫌事大"
请问这种态度是来请教大家的么 hhhh |
132
allce231 2016-09-27 17:33:00 +08:00
商品的价格由客户端计算?
你们真牛逼!!!! |
133
panlilu 2016-09-27 17:42:00 +08:00
我就是来歇歇的 2333
|
134
JoyNeop 2016-09-27 17:45:41 +08:00
说下 app 名字吧,大家一起帮楼主 debug (手动斜眼
|
135
goofansu 2016-09-27 17:45:49 +08:00
价格居然客户端算。。怎么想的
|
136
ccloli 2016-09-27 17:50:06 +08:00 via Android
|
137
robinshi2010 2016-09-27 17:51:04 +08:00
我是吃瓜群众。
|
138
konakona 2016-09-27 17:52:47 +08:00
@viator42 那貌似跟你没有多大关系。
APP 里的计算就算再多、再复杂,也只是避免了与 API 的通信以提供更好的用户体验而已。 进入数据库的东西必须是后端经过验证、二次计算后的,不能直接是用户的。 你们的后端也是奇葩。 |
139
killerv 2016-09-27 17:57:24 +08:00
刚才测试了一下,还可以正常下单,话说怎么退单啊……
|
140
Light3 2016-09-27 17:57:25 +08:00
这个东西 肯定是后端给价格 别前端给价格 这样空子 抓包就能钻..
|
141
bugmenein 2016-09-27 18:11:13 +08:00
前端验证没有任何问题,都是后端不做二次验证的锅;另外这种后端属于没救的类型,直接开了;否则以后就是你们公司没救了。
|
142
lcsoft 2016-09-27 18:11:22 +08:00
按理来说 商品价格之类的信息、优惠信息都应该存在后端数据库里吧, APP 下单只是把商品 ID 、优惠 ID 之类的发给后端,后端再从数据库取出数据,然后生成订单。
|
144
iyangyuan 2016-09-27 18:34:53 +08:00 via iPhone
不知道说什么好了,就当做是学费吧
|
145
YvesX 2016-09-27 18:41:39 +08:00
“服务端想校验也不知道商品应该是多少钱”
……迷之设计。 |
146
qinxi 2016-09-27 18:46:30 +08:00
你家后端现在情绪稳定吗?
|
147
ylcx123 2016-09-27 18:49:37 +08:00
|
148
ylcx123 2016-09-27 18:51:09 +08:00
|
149
LokiSharp 2016-09-27 19:07:06 +08:00
啊咧咧, Loki 可以帮你调试客户端的
|
150
cocalrush 2016-09-27 19:15:42 +08:00 via Android
不需要重新打包 拦截请求就可以了……
|
151
gkiwi 2016-09-27 19:16:12 +08:00
为什么后端不知道怎么校验。。
|
152
DingSoung 2016-09-27 20:01:13 +08:00
不要相信前端的数据!
不要相信移动端的数据! 不要相信任何端传过来的数据! |
153
DingSoung 2016-09-27 20:02:46 +08:00
单价,钱,支付状态,这些都要后端自己去算和验证,不能用传过来的数据!
|
155
eddiechen 2016-09-27 23:01:52 +08:00
后端不做校验,这后端也是够牛。。。
|
156
Lullaby 2016-09-27 23:21:17 +08:00
商品的价格由客户端计算 这就是最大的问题
|
157
SlipStupig 2016-09-27 23:46:45 +08:00
请把 app 的名字告诉我,我来帮助你更好的修改 /duge
|
158
irainsoft 2016-09-28 00:35:20 +08:00
整个设计就尼玛有问题....上面无数人都讲了
现在直接数据传输强制 HTTPS 然后加后端验证吧:doge: |
159
peneazy 2016-09-28 06:56:59 +08:00
Fiddler 记一下
|
160
w99wen 2016-09-28 08:58:34 +08:00
@reus
恩。 彻底防止客户端的订单请求被篡改基本不可能,也只能是生成的订单最大限度防止篡改,然后服务端验证订单信息无误,返回支付的 url ,再用支付链接请求服务端进行关键的支付过程。这样就把最后的付款链接的创建逻辑隐藏在服务器端。 客户端能做的也只能是最大限度的防止订单信息被篡改。哎,密钥保存真是痛点,哪怕是 iOS 也是不是那么靠谱的。 |
161
HarveyDent 2016-09-28 09:00:06 +08:00
谁叫你们在技术上省成本,继续啊。
|
162
peinhu 2016-09-28 09:07:48 +08:00
商品的价格由客户端计算 666
|
163
653513754 2016-09-28 09:16:52 +08:00
上次操盘手就是可以 1 分钱冲几百万,然后可以提现 及时到账 23333333
|
164
lianxiaoyi 2016-09-28 09:31:27 +08:00
很明显是服务端的锅 。。。。客户端所有的数据都是服务端给的。。。难道用户积分不是服务端给的吗???难道用户优惠卷信息不是服务端给的么?????无法验证。。。。这是今天看到的最好笑的笑话。。。。。
|
165
hlh3727138 2016-09-28 09:43:53 +08:00
我靠 刚刚我去看了下我第一次工作写的代码 也是一个模拟商城的 价格也是从前端传过去的 后端没校验 他们还上线了 心里好慌怎么办。。。(主要这个功能前后端都是我一个人写的)
|
166
Ahri 2016-09-28 09:48:37 +08:00
666
|
167
zichen0422 2016-09-28 10:01:18 +08:00
哈哈哈, 我公司也出现过这样的问题.
|
168
zichen0422 2016-09-28 10:01:38 +08:00
后端的锅, 后端不做校验, 作死
|
169
jasonding 2016-09-28 10:06:42 +08:00
表示看了楼主的基本介绍,一分钱下单再简单不过了好么。。。客户端计算后提交,而且服务端不校验。。。。心真大
|
170
sobigfish 2016-09-28 10:43:22 +08:00
lz 应该问问后端 有什么价格是前端能算 后端不能算的。。。
那你应该仔细检查下许多应该后端做而不是前端做的东西 !!!! 订单号、 优惠券的使用、价格、支付传参数到支付 API 的加密、 支付结果检查、 订单状态、 退款、 个人资料修改(有没有平行权限漏洞,比如使用了前端传的 userId ) |
171
fjzjk 2016-09-28 10:53:51 +08:00
怎么可能让客户端去处理价格的问题,你们的产品在干什么
|
172
t40462860 2016-09-28 11:38:21 +08:00
听过 fiddler 吗?
|
173
Yvette 2016-09-28 11:52:15 +08:00
这都可以上线?
|
174
xiaonengshou 2016-09-28 11:55:17 +08:00
想了想,在开发范畴这种事还是客户端的工程师责任比较大。
|
175
josephok 2016-09-28 12:05:04 +08:00
验证什么???
听到这个就感觉悬了.... |
176
tumbzzc 2016-09-28 13:40:33 +08:00
因为他们是没有公德心的 13 岁小神童
|
177
hl 2016-09-28 15:48:40 +08:00
服务端要有逻辑做 double check ,不是提交的时候做 double check ,而是在订单系统里做。服务端对用户订单做展示的时候二次过滤,凡是价格上与数据库里的比对不对的,根本不给客户做展示,就算有漏洞刷了一分钱订单,这个和数据库里的商品登记对应不上,也是不让用户能看到这订单的,这样给研发的很大的空间做修复。当然这里面价格比对要考虑到折扣,优惠活动这些条件。
|
178
yongSir 2016-09-28 16:14:46 +08:00
支付上
绝对不能相信客户端的验证 |
179
zohan 2016-09-28 18:53:18 +08:00
@xiaonengshou 带节奏我还是服你
|
180
xiaonengshou 2016-09-28 21:26:18 +08:00
@zohan 遇到这样问题,客户端要去撕逼。
|
181
zohan 2016-09-29 09:23:17 +08:00
@xiaonengshou 这就尴尬了
|
182
icris 2016-09-29 09:28:53 +08:00
不用改逻辑,正常下单正常支付不给发货,等两天封号,怎么说也赚了一分钱,运气好还能赚它一块钱呢
|
183
jianghu521 2016-09-29 10:20:09 +08:00
https 啊, 这种优惠, 价格 应该后台验证
|
184
jianghu521 2016-09-29 10:20:39 +08:00
二次打包, 你们没有代码加固或者混淆吗
|
185
iMono 2016-09-29 11:15:37 +08:00
这。。。。。。。。。。。。。。。。后台。。。 233333333333
|
186
julyclyde 2016-09-29 11:44:07 +08:00
不是前后的问题
是压根就不应该允许客户提交单价这个数据 |
187
5177748 2016-09-29 16:03:06 +08:00
感觉是赚吧大神出手了。。。。。。
|
188
ylcx123 2016-11-22 10:30:09 +08:00
@viator42 我说,我测试了一笔后,都一个多月了,你们是即不退款也不发货?
而且你们的 Android app 还没地方申请退款,求还钱 |
189
viator42 OP @ylcx123 呃,我就是个码代码的,找我退款也没卯用.这个是不出外地的,发货是别想了.退款的话,你直接打电话吧
|
191
voocel 2017-06-07 20:33:59 +08:00 via Android
@hlh3727138 这下慌了吧
|