我没有惶恐不安,只是觉得有些庆幸。
我们公司非常重视程序员,在今天也就是 10.25 本周上班的第一天特地举办了一个 crack 的活动,是有丰厚奖金的。因为 1024 是公认的程序员节日。这个活动由公司行政部门举办,由技术部门人参与,公司的老板也知道这件事。
明文规定不允许作弊。因为作弊是违背公司价值观的,而且不符合这个游戏的宗旨。
游戏活动开始后,我一开始不知道玩法,以为需要密码才能参加。于是用其他人在活动群里面发的“密码”死都提示“密码不正确”。处于技术人的本能和好奇心,我打开了 console ,搜索了提示文本和对应的按钮,找到了对应的事件和相关代码。于是一个断点打下去,再几个提交再次跳转,答案就逐渐浮出了水面。原来是在前端有一个 md5 的加密判断,判断相等则通过到下一关。我灵机一动能不能更改这个 md5 函数,用s => s
替代,于是随着这个思路,就把这个给改掉了。我更是手贱,竟然一路改了下去。可没想到,羞耻的,竟然只有我不顾规则的这么干。事后回想起来,可能一方面是出于技术员的本能,另一方面则是因为脱离大环境没有监管所以比较野。
因为做的太过,且露骨,我被人发现了,马上就找上来。问我是怎么做的,看屏幕一清二楚懂的都懂就不用再解释。我没有被强制取消资格,只是说自觉的 md5 逆向或者篡改数据的都不算。我的身边还有一位队友大神,他继续作战,而他是没有用作弊的手段的。游戏结束收集游戏结果的时候,我自然没脸去上报。好在队友给力,他没有受到我的影响,主办方承认了他的成绩。因为队友的成绩,我躺赢了。
似乎有些后怕,要是在阿里,我可能被开除了。当年阿里抢月饼的事件大家应该都记忆犹新。或者要是在其他家公司,我起码要被狠狠地批评一顿或者鄙视一番。然而并没有,我只是成绩不算,甚至没有因此而影响到我的队友,他没有被取消参赛资格,也没有被取消游戏成绩。
我并不因这件事情而沾沾自喜,我也不喜欢“出类拔萃”。我只是不知道游戏的玩法,才走了“歪路”。我承认游戏的不公平之处所呈现的差异,如果是在其他场合,我可能会利用一些不公平的方法来不当获胜,但在一个讲究公平的严肃场合我并不想这么做。
我这么做的后果,是不是影响到了其他参赛队伍的积极性呢,结果间接影响到了他们的成绩。又是不是打了游戏提供方的脸了,明文规定的都违反,而且展示自己的技艺,搞得好像参赛游戏非常脆弱容易破解一样。要找我的麻烦很容易。参与游戏时我确实没有想太多,我只是出于技术员的本能,在走一条隐秘的路。
要是在阿里,我可能被开除了。
1
enchilada2020 2021-10-25 21:44:25 +08:00 via Android
道理我都懂 教教我怎么躺赢好不好
|
2
jay_chiu 2021-10-25 21:45:34 +08:00 via Android
你这个灵机一动别人不会吗?会。那确实不应该。
|
3
darknoll 2021-10-25 21:48:18 +08:00
这样做不太好
|
4
jmc891205 2021-10-25 21:57:10 +08:00 via iPhone
道理我都懂,1024 是谁公认的程序员节日?
|
5
chenluo0429 2021-10-25 21:59:33 +08:00 1
规则限定了不允许篡改 js 的执行或者从控制台获取信息吗?否则只能说题目本身就是不太严谨的,如果你没有故意以这个作为结果并且获取名次,那你就是没问题的。如果公司像阿里一样,那反而才是应该被唾弃的。
|
6
sickoo 2021-10-25 22:00:24 +08:00 1
为什么要夹带私货那么多阿里。。。阿里是什么?
|
7
mxT52CRuqR6o5 2021-10-25 22:01:15 +08:00
对于专门给程序员做的题目来说,很难划个很清晰的界限区分什么方法算作弊,什么方法不算作弊(说不定前端破解就算是预期解呢)
|
8
wpblank 2021-10-25 22:06:38 +08:00
个人感觉专门给程序员做的题改改前端就能通过也是一种思路啊?(规则写明不允许的方式时除外
|
9
learningman 2021-10-25 22:07:40 +08:00 1
@sickoo #6 阿里月饼
|
10
learningman 2021-10-25 22:08:59 +08:00 1
其实确实不应该这么干的,NOIP 曾经有位大仙在提交代码里写入输入文件然后 AC 题,如果是 CTF 那肯定正解,但是这是 NOIP ,所以他爆零了
|
11
wisetc OP @chenluo0429 谢谢~确实也是看身处一个怎样的环境和怎样的一个评判标准吧,如果连这么一个游戏活动都这么严肃估计也都人人自危了,今后还有谁敢参与
|
14
wisetc OP @wpblank 是的,本身如此。可能还因为那样题就白出了,活动设置没有任何难度,行不成梯度,挑战太小,参与者的热情不会很高。
|
15
wisetc OP @learningman 好的
|
16
wisetc OP @mxT52CRuqR6o5 预先知道是否算作弊,除非对所有情况都特别清楚,把所有条目都能一一列举出来,这个很难做到,所以有一个解释权的保留和裁判权
|
18
wisetc OP @chenluo0429 规则没有说的那么细致,但是后面有补充,不让这么干,属于非正规解且或属于作弊。
|
19
wisetc OP @jay_chiu 明白了。我猜应该少数人才会去灵机一动,因为如果大多数人多灵机一动规则中就会早先预防,且差距就不会拉大了
|
20
wisetc OP @enchilada2020 想躺赢,你得有一个个人能力坚强的队友,他不过分依赖你,若你 gg 了,你就歇着,默默的欣赏着他,平静的,等待出结果就可以了。躺赢学不来,只能看你的伙伴是不是坚强-)。
|