上个月审计了云班课和优学院的前端代码,实现了强制修改视频进度和获取选择题答案的功能。但是单个发包效率太低了,昨晚开始着手写了一个脚本,早上修改了一下,基本功能写出来了。考虑到风险,这个脚本是获取答案,不自动答题。
4.29 追加:应要求,对脚本进行了更新。
0x00
脚本的核心部分就是一个获取答案的接口,通过传递题目的questionid,可以查询到对应的答案。细节部分主要是维持会话,保留站点的cookie,解析json,过滤html代码。
其中最花费时间和精力的是分析请求包,分析json数据,从大量json出甄选有效值(章节信息,课程信息,题目信息等)。
0x01 获取题目ID
上次审计时顺便找到了获取答案的API,但是要实现批量获取答案,必然要批量获取题目信息
打开答题页面,审查元素,发现每个题目都有一个唯一的questionid。
批量获取题目信息(4.29 追加,此接口新增了parentId参数)
但是获取题目信息要首先获取到章节信息