前端如何做好安全这块?

2019-02-14 09:19:00 +08:00
 Colorful

我们公司主要做手机话费充值的,昨天突然被个人盗刷了,用 fiddler,然后修改参数,支付了上百笔。 每笔都是 1 分钱

框架用的是 vue,加前端端分离,公众号上的功能,支付是微信支付,支付的过程中是调用后端的接口。

知道大部分安全是由后端去弄,但请教下,前端能够做好哪些或者说哪些需要注意的? 之前没接触过安全这块

现在已经改好了

7365 次点击
所在节点    前端开发
64 条回复
ByZHkc3
2019-02-14 10:37:27 +08:00
明显是没有对价格参数做校验啊
amazingrise
2019-02-14 10:40:13 +08:00
@Colorful 楼上有个人说的对,post 时传商品 id 就可以。公钥加密也不行。fiddler 通过 mitm 把 https 都给破了。。公钥加密也是属于密码学的忌讳,自己造轮子了,还不如 https。。改成传商品 id 就 ok
Colorful
2019-02-14 10:40:22 +08:00
@domty
我没有说甩锅给谁,我只是想知道前端这块有哪些可以做的
Colorful
2019-02-14 10:41:32 +08:00
@amazingrise 这倒是个不错的想法
yamedie
2019-02-14 10:42:41 +08:00
上 HTTPS,
既然是微信公众号项目, 至少不要让页面在非微信浏览器里被访问 (用微信 snsapi 静默授权可以保护起来)
amazingrise
2019-02-14 10:42:49 +08:00
哦对了还要设定同一 ip 交易间隔,防止恶意刷单。不过我感觉这不太像前端的锅,前端手段解决得不是很彻底。。
otakustay
2019-02-14 10:43:17 +08:00
这是标准的重放攻击了,跟前端没啥关系,加验证码加手机短信验证吧
Colorful
2019-02-14 10:43:43 +08:00
@yamedie
这个都有做的
Colorful
2019-02-14 10:44:14 +08:00
@amazingrise 同一 IP 交易间隔,这个确实不错
amazingrise
2019-02-14 10:44:28 +08:00
@yamedie 虽然 https 对 fiddler 无效,但是微信授权这个很棒!
amazingrise
2019-02-14 10:47:30 +08:00
如果非要在前端动手脚,可以学学 Google 登录的套路,我记得有个文章分析过。个人水平局限,了解不深,lz 可以去搜索一下相关分析文章。不过这个难度不小。。。
Colorful
2019-02-14 10:49:49 +08:00
@amazingrise 好的,感谢,我去找找
cyclone
2019-02-14 11:01:59 +08:00
《 Web 前端黑客技术揭秘》 钟晨鸣 / 徐少培
不想深入可以只看最后一章
kisshere
2019-02-14 11:42:00 +08:00
第一次听说前端还和安全挂钩。。。
M4ster
2019-02-14 11:55:15 +08:00
对提交参数进行签名,签名算法的代码做好混淆保护,很大程度上可以提高攻击 /测试者的门槛。
nekoneko
2019-02-14 12:01:54 +08:00
杀死前端
lutla
2019-02-14 12:33:37 +08:00
……前端被迫干安全?
chairuosen
2019-02-14 12:35:13 +08:00
绝对是设计不合理造成的
loading
2019-02-14 12:38:01 +08:00
所谓的提高成本是把菜鸟挡一下,在金钱面前,抓包花点时间就搞定了。

后端职业操守:永远不相信用户发来的数据。
killerv
2019-02-14 13:33:01 +08:00
前端需要注意的安全一般是 xss 这些,你说的这个问题是后端的范围。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/534758

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX