wisetc / practice

Practice conclusion
5 stars 0 forks source link

用特殊方法破解了公司的1024活动题目 #43

Closed wisetc closed 2 years ago

wisetc commented 2 years ago

我没有惶恐不安,只是觉得有些羞愧。

我们公司非常重视程序员,在今天也就是10.25本周上班的第一天特地举办了一个crack的活动,是有丰厚奖金的。因为1024是公认的程序员节日。这个活动由公司行政部门举办,由技术部门人参与,公司的老板也知道这件事。

明文规定不允许作弊。因为作弊是违背公司价值观的,而且不符合这个游戏的宗旨。

游戏活动开始后,我一开始不知道玩法,以为需要密码才能参加。于是用其他人在活动群里面发的“密码”死都提示“密码不正确”。处于技术人的本能和好奇心,我打开了console,搜索了提示文本和对应的按钮,找到了对应的事件和相关代码。于是一个断点打下去,再几个提交再次跳转,答案就逐渐浮出了水面。原来是在前端有一个md5的加密判断,判断相等则通过到下一关。我灵机一动能不能更改这个md5函数,用s => s替代,于是随着这个思路,就把这个给改掉了。我更是手贱,竟然一路改了下去。可没想到,羞耻的,竟然只有我不顾规则的这么干。事后回想起来,可能一方面是出于技术员的本能,另一方面则是因为脱离大环境没有监管所以比较野。

因为做的太过,且露骨,我被人发现了,马上就找上来。问我是怎么做的,看屏幕一清二楚懂的都懂就不用再解释。我没有被强制取消资格,只是说自觉的md5逆向或者篡改数据的都不算。我的身边还有一位队友大神,他继续作战,而他是没有用作弊的手段的。游戏结束收集游戏结果的时候,我自然是没脸去上报的。好在队友给力,他没有受到我的影响,主办方承认了他的成绩。因为队友的成绩,我躺赢了。

要是在阿里,我可能被开除了。当年阿里抢月饼的事件大家应该都记忆犹新。或者要是在其他家公司,我起码要被狠狠地批评一顿或者鄙视一番。然而并没有,我只是成绩不算,甚至没有因此而影响到我的队友,他没有被取消参赛资格,也没有被取消游戏成绩。

我并不因这件事情而沾沾自喜,我也不喜欢“出类拔萃”。我只是不知道游戏的玩法,才走了“歪路”。我承认游戏的不公平之处所呈现的差异,如果是在其他场合,我可能会利用一些不公平的方法来不当获胜,但在一个讲究公平的严肃场合我并不想这么做。

我这么做的后果,是不是影响到了其他参赛队伍的积极性呢,结果间接影响到了他们的成绩。又是不是打了游戏提供方的脸了,明文规定的都违反,而且展示自己的技艺,搞得好像参赛游戏非常脆弱容易破解一样。参与游戏时我确实没有想太多,我只是出于技术员的本能,在走一条隐秘的路。

要是在阿里,我可能被开除了。或者我可能至少被叫去谈话了。