用不当手段破解了公司的 1024 活动题

2021-10-25 21:38:41 +08:00
 wisetc

我没有惶恐不安,只是觉得有些庆幸。

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

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

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

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

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

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

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

要是在阿里,我可能被开除了。

1568 次点击
所在节点    程序员
21 条回复
enchilada2020
2021-10-25 21:44:25 +08:00
道理我都懂 教教我怎么躺赢好不好
jay_chiu
2021-10-25 21:45:34 +08:00
你这个灵机一动别人不会吗?会。那确实不应该。
darknoll
2021-10-25 21:48:18 +08:00
这样做不太好
jmc891205
2021-10-25 21:57:10 +08:00
道理我都懂,1024 是谁公认的程序员节日?
chenluo0429
2021-10-25 21:59:33 +08:00
规则限定了不允许篡改 js 的执行或者从控制台获取信息吗?否则只能说题目本身就是不太严谨的,如果你没有故意以这个作为结果并且获取名次,那你就是没问题的。如果公司像阿里一样,那反而才是应该被唾弃的。
sickoo
2021-10-25 22:00:24 +08:00
为什么要夹带私货那么多阿里。。。阿里是什么?
mxT52CRuqR6o5
2021-10-25 22:01:15 +08:00
对于专门给程序员做的题目来说,很难划个很清晰的界限区分什么方法算作弊,什么方法不算作弊(说不定前端破解就算是预期解呢)
wpblank
2021-10-25 22:06:38 +08:00
个人感觉专门给程序员做的题改改前端就能通过也是一种思路啊?(规则写明不允许的方式时除外
learningman
2021-10-25 22:07:40 +08:00
@sickoo #6 阿里月饼
learningman
2021-10-25 22:08:59 +08:00
其实确实不应该这么干的,NOIP 曾经有位大仙在提交代码里写入输入文件然后 AC 题,如果是 CTF 那肯定正解,但是这是 NOIP ,所以他爆零了
wisetc
2021-10-25 23:16:06 +08:00
@chenluo0429 谢谢~确实也是看身处一个怎样的环境和怎样的一个评判标准吧,如果连这么一个游戏活动都这么严肃估计也都人人自危了,今后还有谁敢参与
wisetc
2021-10-25 23:20:04 +08:00
@darknoll 我认同不太好
wisetc
2021-10-25 23:26:35 +08:00
@jmc891205 或许称不上程序员节,1024 作为对于程序员有特殊意义的一天至少被周围媒体普遍接受。
wisetc
2021-10-25 23:29:59 +08:00
@wpblank 是的,本身如此。可能还因为那样题就白出了,活动设置没有任何难度,行不成梯度,挑战太小,参与者的热情不会很高。
wisetc
2021-10-25 23:33:24 +08:00
@learningman 好的
wisetc
2021-10-25 23:36:00 +08:00
@mxT52CRuqR6o5 预先知道是否算作弊,除非对所有情况都特别清楚,把所有条目都能一一列举出来,这个很难做到,所以有一个解释权的保留和裁判权
wisetc
2021-10-25 23:40:46 +08:00
@sickoo 夹带私货以形成鲜明对比,阿里月饼比较典型,一说大家都知道。为什么要夹带私货,夹带私货是目的。
wisetc
2021-10-25 23:42:45 +08:00
@chenluo0429 规则没有说的那么细致,但是后面有补充,不让这么干,属于非正规解且或属于作弊。
wisetc
2021-10-25 23:46:27 +08:00
@jay_chiu 明白了。我猜应该少数人才会去灵机一动,因为如果大多数人多灵机一动规则中就会早先预防,且差距就不会拉大了
wisetc
2021-10-25 23:49:38 +08:00
@enchilada2020 想躺赢,你得有一个个人能力坚强的队友,他不过分依赖你,若你 gg 了,你就歇着,默默的欣赏着他,平静的,等待出结果就可以了。躺赢学不来,只能看你的伙伴是不是坚强-)。

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

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

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

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

© 2021 V2EX