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

网易云性格主导色测试逆向

  •  1
     
  •   nalzok · 2021-05-26 20:42:52 +08:00 · 2931 次点击
    这是一个创建于 1273 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天朋友圈里网易云那个性格主导色的测试突然火了,我就想试着遍历所有可能的路径,看看每道题的选项都是怎么影响结果的(希望它不要是随机生成的)。结果发现那个页面是个 SPA,我在开发者工具里没看到什么和服务器的通信,再加上那堆 JS 都是经过混淆的,我啥也看不出来,所以想请教一下各位老哥有没有什么破解的思路?

    https://st.music.163.com/st-color-quiz

    10 条回复    2021-05-27 13:34:31 +08:00
    WANG592154873
        1
    WANG592154873  
       2021-05-26 20:44:02 +08:00 via Android
    国内站也敢搞?生怕进不去?
    nalzok
        2
    nalzok  
    OP
       2021-05-26 20:48:00 +08:00
    @WANG592154873 emmm 我感觉应该没那么严重?这个测试毕竟不是网易云的核心业务,搞出来就是吸一波流量,过两天就没人会记得这个网页了。而且我就想分析一下 JS,没有想黑他们的服务器呀……
    renmu123
        3
    renmu123  
       2021-05-26 22:07:56 +08:00 via Android
    这种没什么办法,多加点断点,赢啃。
    我测试了几组数据,并非完全随机生成,答案和题目有关,应该与最好的人名无关。
    suzic
        4
    suzic  
       2021-05-26 22:13:58 +08:00 via Android
    nalzok
        5
    nalzok  
    OP
       2021-05-26 22:50:22 +08:00
    @renmu123 请问这种应该怎么加断点啊?它所有函数名都是混淆过的,而且答题过程中没有任何输出,直到最后再返回一个结果,我连个抓手都找不到
    g1f9
        6
    g1f9  
       2021-05-26 23:51:44 +08:00
    可以围绕这 DOM,网络进行断点,查看调用栈。
    例如子树改变的断点,或者找到点击元素绑定的函数
    @nalzok
    0x400
        7
    0x400  
       2021-05-27 00:16:06 +08:00 via Android
    随机的,你玩两次我就知道了
    coolcoffee
        8
    coolcoffee  
       2021-05-27 12:05:49 +08:00
    https://s7.music.126.net/609ddbd96df656ccf0eeb212/index.da199267.js ,答案列表都内置在这个 js 里面了,打开搜索个"外在的金色百分百努力"什么都就能看到。

    至于怎么计算结果的,如果题目数量少,组合结果很容易枚举,那么就是也已经内置好了。因为我看结尾服务端只返回了一个状态 true,可能只是记录一下参与的人数。
    no1xsyzy
        9
    no1xsyzy  
       2021-05-27 12:34:39 +08:00
    iOCZ
        10
    iOCZ  
       2021-05-27 13:34:31 +08:00
    3 的 8 次,数据不小
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1883 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 16:31 · PVG 00:31 · LAX 08:31 · JFK 11:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.