学习通监考系统原理剖析

2023-01-18·-- 阅读

学习通监考系统抓拍调用硬件顺序:前置摄像头->后置摄像头->屏幕截图
前置未获取到图片前,不会进行下一步操作。
未获取到的图像,教师端将显示上一次的抓拍图像

例外:
学习通APP的切屏警告会跳过这个过程,忽视其他硬件,直接截图发给教师端

切屏警告逻辑:

学习通的切屏警告非常奇葩,其他软件是检测自己的软件是否切出前台来判断。但学习通是根据自己是否重新加载前台页面来判断。说人话就是…
你切出去的时候,不会有警告;但你切回来的时候,就会向教师端和学生端同时发送警告。
证据:我们通过学生端看警告内容的时候,上面的切屏时间实际是回到学习通界面的时间。

整个学习通手机APP监考系统均建立在这套逻辑之上,另外还有虚拟机判断逻辑就不细讲了

如何避免教师监控:

前置摄像头与后置摄像头在手机系统层面上,与温度传感器,光线传感器一致,均为传感器类。
在非虚拟机条件下,我们唯一不能控制的就是学习通调用屏幕截图发送至教师端(实际也可以通过网络抓包修改?)。我们要做到的就是走不到屏幕截图这一步。在android10系统及以上,在开发者模式下,给予了开发者传感器关闭的选项。开启后将会关闭手机上所有的传感器(包括前置与后置摄像头)
路径(仅vivo):系统管理->开发者选项(开启)->快捷设置开发者图块->传感器已关闭(开启)
然后查看自己的下拉菜单,就能在wifi等图标旁边多出来一个传感器图标,开启后便可关闭传感器。
在需要人脸识别的时候,打开传感器,进入考试再关闭传感器,教师端便无法再监控了。

如何避免切屏警告:

通过以上逻辑我们可知,学习通发送切屏信息并非本地完成,学生端仅提供切出与切回的时间节点,教师端主要依靠切回点来判断是否切屏。
我们可以切出后,再切回前关闭所有网络,使学生端无法发送切回信号,教师端无法收到切回信号,便不算切屏。切回后等待1-2秒再次打开网络便可继续作答。

END / NAN SHAN