移动面部活体系统的安全性剖析
1. SDK 实现中的漏洞
除了多实体交互时的协议问题,SDK 内部的实现也会引发安全问题,具体如下:
- 无限制的配置 :部分 SDK 为了灵活调整,提供了一系列用于配置活体检测参数的 API。这些参数主要分为两类:一是控制活体检测模式的参数,二是活体检测模型的参数。若缺乏适当限制,这些参数会显著削弱活体检测系统的安全性。例如,某些流行的 SDK 提供了设置动作分数阈值和动作序列的 API,攻击者可利用这些 API 将阈值调至异常小的值,或配置异常的动作列表,从而使动作匹配机制失效。以下是一个存在缺陷的动作列表处理逻辑的代码示例:
1 public void start(int[] motionList) {
2 if (motionList == null || motionList.length < 1) {
3 resultCode = ResultCode.OK;
4 } else {
5 beginLivenessDetection(motionList);
6 }
7 }
- 未受保护的模型文件 :几乎所有支持本地活体检测的面部 SDK 都会在应用包中附带机器学习模型。部分 SDK 将模型作为独立文件嵌入,容易被识别。未加密的模型文件易受修改和替换攻击,攻击者可更改模型参数以接受合成效果不佳的视频。
- 捕获图像或视频的泄露 :在处理相机流时,系统可能会缓存某
超级会员免费看
订阅专栏 解锁全文
1658

被折叠的 条评论
为什么被折叠?



