为安全问题,早上公司热烈讨论

2022-08-31 13:08:39 +08:00
 wenzaiquan199
场景:用户在前端绑银行卡,实名认证,前端通过 https 请求,明文将数据传给后端,故测试给我提了个 bug 要我前端加密传输,我网上搜了搜,觉得前端目前拿不出什么方案加密比 https 安全

测试:你这个东西加个密传给后端
我:有 https ,有一定的安全保障了
测试:但是我接口请求能看到我的身份证号什么的
我:你能拦截到别人的请求么
测试:那肯定有人能拦截到
我:我随便加个加密可以,我们代码没做混淆,别人看代码直接知道什么加密方法,随便解了,别人能从 https 把这个解析出来,破解我们这个跟玩一样,加了有意义么
测试:我之前公司都做了啊

遂测试找前端 leader 说,然后后端 leader 就说前端传过来不用加,后端给前端加密的数据就行了,前端 leader 说要,然后他们吵了半天

末了前端 leader 跟我说,要有“安全意识”,我直接回你项目混淆都不做,我从加密库找个现成的加密方法,有用么

遂结束,我也不理 leader 了,来看看大家什么意见
13693 次点击
所在节点    问与答
188 条回复
Roanapur
2022-08-31 14:07:01 +08:00
加呗。又没多少成本。感觉没必要争。

我一般的态度是:告诉他们这玩意没有意义,但如果他们要,我可以加。

我就一个搬砖的
456789
2022-08-31 14:07:36 +08:00
建议 base64 一下让傻逼舒舒服服的傻逼
mxT52CRuqR6o5
2022-08-31 14:10:39 +08:00
老板让你加你就加,具体为什么这么做参考这个回答
https://www.zhihu.com/question/340109086/answer/1709378074
cweijan
2022-08-31 14:17:12 +08:00
敏感信息加还是有必要的, 主要是防捉包, 加密后能劝退不少不熟悉前端的人..
shyangs
2022-08-31 14:21:47 +08:00
「大衛像」剛完成時,當時市政廳官員正好來巡視,其中一人看著大衛像,皺起眉頭對米開朗基羅表示,大衛的鼻子似乎高了點,眾人也跟著附和著。

一向對自己作品有所堅持的米開朗基羅默默爬上鷹架,一手握著鑿子,另一手卻偷偷抓了一把沙子,他故作聲響地敲打,一邊卻將沙子往下丟,飛塵與沙粒就這樣灑在官員臉上,不到一會兒工夫「修改」完成,官員滿臉粉塵的用那被沙粒弄得睜不開的雙眼,對著米開朗基羅讚許「不錯不錯,這樣好多了!」。

事實上,大衛的鼻子或任何其它部位仍維持原來樣貌,米開朗基羅趁機捉弄官員一鼻子塵灰。



--------


有些人,把 base64 也當加密,你就 base64 一下,測試看看他們是不是外行人唄.
timethinker
2022-08-31 14:27:16 +08:00
看来本楼还有很多人不知道 HTTPS 是用来解决什么问题的。
nekoneko
2022-08-31 14:29:07 +08:00
@twl007 #20 可以伪造证书抓包的, 当然, 这是用户的主动行为
codingBug
2022-08-31 14:39:04 +08:00
没理解“项目混淆都不做”是什么意思,难道开发不用框架?框架打包生产环境的时候会有混淆,明文传输明显就不安全,需要和后端统一加密算法和密钥
dcsuibian
2022-08-31 14:39:58 +08:00
没必要,但是可以加。

如果我是攻击者
①先得用假证书或假浏览器之类的把 https 解开来
②筛选你们网站的流量
③然后再研究从你们的用户输入到请求内容之间的变化路径

第一步很难了,第二步更是把范围缩小到对你们的定向攻击,相比而言第三步。。。

很多所谓的“安全做法”就是这样的,你做了,确实可以提高门槛、增加安全性。但收益真的不大。
peizh2006
2022-08-31 14:56:35 +08:00
Defense in Depth 了解一下,遇到这种前端我也是懒得废话的,有什么好争论的
ZField
2022-08-31 15:01:06 +08:00
https 就是加密啊……
如果 https 都不安全那就说明客户端已经摆烂了,客户端都摆烂了,前端搞再多加密又有什么用。
之前工作中最心累的就是跟测试聊实现,明明不懂还很有自己的想法。
456789
2022-08-31 15:05:41 +08:00
@shyangs 异曲同工之妙
mxT52CRuqR6o5
2022-08-31 15:05:53 +08:00
@peizh2006 前端是没法验证根证书的,所以在前端层面做的任何措施数学上都是不安全的,前端做的安全措施根本就不能算在 Defense in Depth 里
fengye0509
2022-08-31 15:08:06 +08:00
都是出来挣钱的,他让加就加,安全不安全的,又不关你的事
min
2022-08-31 15:17:00 +08:00
情商高一点啊,怼人干什么。

公司有标准就按标准来,没标准 leader 们商量一个出来,按照标准执行
newHunter
2022-08-31 15:19:06 +08:00
加完好摸鱼,现在闹这么难看,心累
shakoon
2022-08-31 15:20:46 +08:00
用 cfca 的国密控件就完事了,也不复杂,而且这还是重点行业明文的要求。缺点是,密码框不能粘贴,密码保存软件将无法保存到真正的密码。
xuelu520
2022-08-31 15:25:37 +08:00
base64 ,假装一下。
Cbdy
2022-08-31 15:27:18 +08:00
随便给他 base64 意思一下,打工而已,你又不是老板
twl007
2022-08-31 15:34:07 +08:00
@nekoneko 用户都能把不信任的根证装电脑上了 人家真想拿数据还用得着这么费劲么

https 在绝大多数情况下提供了足够的保护了 只要不去用 TLS 1.2 以下的版本 那安全性绝对有保障的 不知道怎么说这个测试…… 就像当年大家问为什么 chrome 密码不加密一样 人家 google 就说了人家都能从你电脑上拿到文件了 还有什么做不到的

信用卡信息说实话感觉在 log 里面泄露的问题比 https 严重多了

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

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

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

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

© 2021 V2EX