kaedesuu/azota_cheat
GitHub: kaedesuu/azota_cheat
对在线考试平台 Azota 的前端加密机制进行逆向工程分析,并附带计时器绕过与全屏追踪规避脚本。
Stars: 0 | Forks: 0
# azota_cheat
你好!\
我对这个 Web 应用进行逆向工程花了一点时间。他们在后端对其进行了安全防护,因此有些部分可能很难进行逆向工程。
## 加密
Azota 通过使用 `hash` 这个术语对其 API 进行了加密,以迷惑用户或进行逆向工程的人员,但在我看来,这更像是 `encryption`。
你可以在 `azota_encode_decode_module.js` 脚本中阅读有关我如何解密这些数据的完整说明,\
如果你对那些像 `wpRequire(87941)` 或 `wpRequire(30598)` 这样的随机数字感到困惑,那是该函数在 azota 的 Web 应用代码中所在的 chunk 编号。
通过使用下面的这些函数,你可以读取被加密的内容:
```
window._encode_(str)
window._decode_(str)
```
如何判断它是否被加密了?
- 如果字符串很长且没有任何意义。(如果你无法使用 `window._decode_` 解密它,那么它就不是加密的,而是某些东西的密钥,比如 cookies 或某种 token)。
我们如何找到这些字符串?
- 检查开发者工具中的 Network 选项卡。
## no_timer
no_timer 确实有效,但你必须在页面加载完成的那一刻执行它(这就是为什么你需要将 `no_timer.user.js` 安装到像 tampermonkey 这样的 userscript 扩展中的原因)。\
似乎他们也对后端的 API 进行了安全防护,因此如果你还没有做完测试,请避免提交。
## anti_fullscreen
这将会阻止客户端向服务器发送 API,从而避免告诉老师(sensei)我们一直在使用作弊手段。\
会有一个**蓝色按钮**提示你正在被(Azota)追踪,**只需点击 `yes` 并按下 F11 键退出全屏模式即可**。
标签:CMS安全, JavaScript, 云资产清单, 前端, 加密解密, 响应拦截, 数据可视化, 策略控制器, 自定义脚本, 逆向工程