V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wisetc
V2EX  ›  程序员

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

  •  
  •   wisetc · 39 天前 · 1071 次点击
    这是一个创建于 39 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

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

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

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

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

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

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

    enchilada2020
        1
    enchilada2020  
       39 天前 via Android
    道理我都懂 教教我怎么躺赢好不好
    jay_chiu
        2
    jay_chiu  
       39 天前 via Android
    你这个灵机一动别人不会吗?会。那确实不应该。
    darknoll
        3
    darknoll  
       39 天前
    这样做不太好
    jmc891205
        4
    jmc891205  
       39 天前 via iPhone
    道理我都懂,1024 是谁公认的程序员节日?
    chenluo0429
        5
    chenluo0429  
       39 天前   ❤️ 1
    规则限定了不允许篡改 js 的执行或者从控制台获取信息吗?否则只能说题目本身就是不太严谨的,如果你没有故意以这个作为结果并且获取名次,那你就是没问题的。如果公司像阿里一样,那反而才是应该被唾弃的。
    sickoo
        6
    sickoo  
       39 天前   ❤️ 1
    为什么要夹带私货那么多阿里。。。阿里是什么?
    mxT52CRuqR6o5
        7
    mxT52CRuqR6o5  
       39 天前
    对于专门给程序员做的题目来说,很难划个很清晰的界限区分什么方法算作弊,什么方法不算作弊(说不定前端破解就算是预期解呢)
    wpblank
        8
    wpblank  
       39 天前
    个人感觉专门给程序员做的题改改前端就能通过也是一种思路啊?(规则写明不允许的方式时除外
    learningman
        9
    learningman  
       39 天前   ❤️ 1
    @sickoo #6 阿里月饼
    learningman
        10
    learningman  
       39 天前   ❤️ 1
    其实确实不应该这么干的,NOIP 曾经有位大仙在提交代码里写入输入文件然后 AC 题,如果是 CTF 那肯定正解,但是这是 NOIP ,所以他爆零了
    wisetc
        11
    wisetc  
    OP
       39 天前 via iPhone
    @chenluo0429 谢谢~确实也是看身处一个怎样的环境和怎样的一个评判标准吧,如果连这么一个游戏活动都这么严肃估计也都人人自危了,今后还有谁敢参与
    wisetc
        12
    wisetc  
    OP
       39 天前 via iPhone
    @darknoll 我认同不太好
    wisetc
        13
    wisetc  
    OP
       39 天前
    @jmc891205 或许称不上程序员节,1024 作为对于程序员有特殊意义的一天至少被周围媒体普遍接受。
    wisetc
        14
    wisetc  
    OP
       39 天前
    @wpblank 是的,本身如此。可能还因为那样题就白出了,活动设置没有任何难度,行不成梯度,挑战太小,参与者的热情不会很高。
    wisetc
        15
    wisetc  
    OP
       39 天前
    @learningman 好的
    wisetc
        16
    wisetc  
    OP
       39 天前
    @mxT52CRuqR6o5 预先知道是否算作弊,除非对所有情况都特别清楚,把所有条目都能一一列举出来,这个很难做到,所以有一个解释权的保留和裁判权
    wisetc
        17
    wisetc  
    OP
       39 天前
    @sickoo 夹带私货以形成鲜明对比,阿里月饼比较典型,一说大家都知道。为什么要夹带私货,夹带私货是目的。
    wisetc
        18
    wisetc  
    OP
       39 天前
    @chenluo0429 规则没有说的那么细致,但是后面有补充,不让这么干,属于非正规解且或属于作弊。
    wisetc
        19
    wisetc  
    OP
       39 天前
    @jay_chiu 明白了。我猜应该少数人才会去灵机一动,因为如果大多数人多灵机一动规则中就会早先预防,且差距就不会拉大了
    wisetc
        20
    wisetc  
    OP
       39 天前
    @enchilada2020 想躺赢,你得有一个个人能力坚强的队友,他不过分依赖你,若你 gg 了,你就歇着,默默的欣赏着他,平静的,等待出结果就可以了。躺赢学不来,只能看你的伙伴是不是坚强-)。
    sickoo
        21
    sickoo  
       38 天前
    @wisetc 好。了解了。
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1955 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 01:40 · PVG 09:40 · LAX 17:40 · JFK 20:40
    ♥ Do have faith in what you're doing.