在
《
论篡改微信余额的技术可刑性
》一文
发出去后
,
收到了许多给小帅的建议:
-
有说应该买好机票,改完余额趁系统发现之前跑路的。
-
有说不能改余额,应该从别人的账户里薅的。
-
有说可以用 ps 改的,好好好,自己给自己带来情绪价值是吧?图我给你 p 好了,拿去发朋友圈!
评论区都很刑,也很可拷,说话又好听,看你们跃跃欲试的样子,真的很有判头。
于是我觉得就还是很有必要解答一下大家的疑问和建议。
数据库做签名能不能防篡改?
这是网友私信的建议,签名当然是有点用的,但又不完全有用。
例如可以给(账户 ID+账户所有者+账户余额)加一个联合签名,只要数据被篡改,下一次读取验签的时候就能发现。
但这一招只能防君子不能防小人
,既然都决定要篡改数据了,重新计算一下签
名,把签名一起改掉也不难吧?君子不会去改数据,小人弄到一个签名算法也不是难事,因此这一招意义不大。
能不能改完余额,趁对账没发现赶紧跑?
有朋友敏锐地观察到,
对账手段都是事后
的
,也就是说在篡改余额和被发现之间有一个时间差,利用时间差跑路是不是就安全了?
太天真了兄dei,改完余额要想获利是不是得提现?那么在提现的时候就会遇上风控拦截。
风控是基于大数据对用户画像进行分析,特别是对巨额提现行为,如果不符合该用户日常的操作,会对这一请求进行拒绝。
那既然提现走不通,直接把钱花掉可以吗
?比如
花4500万买一根香蕉
?同样行不通,支付的时候一样有风控,类似请求可能会被
反洗钱策略
拒绝。
不改余额了,改一下提现不校验余额可以吗?
不通过改数据,而是找到提现链路中的关键环节,绕过余额校验,能提现成功吗?
首先,改代码的难度要比改数据还要高,
改代码需要经过代码审核(Code Review),还需经过自动化测试,还未把代码发布到线上就已经被发现了
。
其次,前面说了提现需要过风控的,在这里同样会拦截。
最后,即便悄摸摸地把代码发布了,把余额检查和风控都绕过去,在系统上依然有防控措施。
这里除了有风控拦截,还有渠道打款的余额二次校验和其他校验,所以
绕过余额检查是不可能提现成功
的
。
能不能从其他人的账户中转1元到自己的账户?
有人在评论区提到从沉睡账
户中薅钱,100w个沉睡账户,每个1元也是一笔不小的收入是吧?
这当然不行!要完成转账也需要核身,就是
证明你是你才可以完成转账
,前台的功能走不通,只能后台改数据了。
但你觉得改数据也容易吗?
-
怎么筛选 100w 个沉睡账户?你得先有查询权限并且知道怎么筛选出来。