刘廷峰 李江鑫 朱源
(四川中电启明星信息技术有限公司 四川成都 610000)
随着企业信息化程度越来越高,PC终端成为工作场景中最不可或缺的办公工具,尤其大型企业业务规模庞大,PC终端系统类型繁多,对于系统使用者来说,登录不同的系统办公是每天重复多次的日常工作。随着国家对于大型企业的信息化安全有越来越严格的要求,员工在多系统的账户密码管理和使用上,受到越来越大的挑战,存在的安全威胁和隐患也越来越大。基于企业IAM 的统一认证登录,能够通过统一的规则保证员工的账号密码管理符合信息安全的标准,但是,通过密码认证的方式,在日常工作的使用中,也存在着明显的短板。员工必须承担保护密码的责任,一旦密码泄漏,对企业应用的业务和信誉都将造成巨大打击。然而实际工作场景中,经常有特殊原因,员工为了工作方便,私下分享了账号密码。特别是在多员工共享办公电脑场景下,员工都有共享账号密码方便工作的习惯。除此之外,因为PC 上操作系统本地账号与企业IAM 账号分离管理,也给员工在共享PC 的办公场景上,带来了额外的信息安全风险[1]。
因此,企业需要寻求新的技术解决方案:通过降低账号密码的使用频率来减少密码泄漏和故意分享的风险;采用用户体验更好、安全性更高的认证方式来提高系统认证的安全性;消除办公共享PC的操作系统账号与企业应用系统账号之间的技术鸿沟。
基于以上问题,本文提出了一种在PC终端上通过离线人脸识别方式直接登录业务系统的关键技术。通过采用认证方式,降低了频繁使用账号密码的泄漏风险,通过基于人脸的生物识别方式,改进了业务系统的安全性和用户体验感。特别是在多员工共用PC上,通过将操作系统登录与业务人脸登录流程打通,实现了员工信息安全管控和用户体验的和谐统一[2]。
目前比较传统的登录方式有账号密码登录方式和App扫描二维码登录这两种方式。
账号密码登录方式是最传统的系统登录方式。员工需要对密码的保密负责,而且根据信息安全要求,密码在长度、格式和更新周期上都有规定,这都为账号密码的使用埋下了安全隐患。特别是在员工共用PC 的办公场景下,员工为了工作方便,私下分享账号密码的行为屡见不鲜。
App扫描二维码登录是目前比较流行的一种代替账号密码登录的免密登录方式。
1.2.1 App扫描二维码登录优点
(1)用户体验无须教育成本。很多互联网应用都把二维码扫描登录PC端应用作为首选的登录方式;无密码登录方式,比账户密码登录方式更友好。(2)安全性更高。通过手机扫描二维码登录,类似双因子校验,通过登录PC和使用者手机的双重认证,提高了认证的安全性。
1.2.2 App扫描二维码登录的缺点
(1)依赖手机App 应用。必须依靠手机中的App扫码,在一些特殊场景下,如果网络受限,或者使用者没有办法使用手机就无法使用此种方式认证登录。(2)登录过程繁琐。相比其他登录方式,扫码登录的方式多出了手机上打开App 扫描二维码的动作,登录过程花费时间更长。另外,在账号密码泄露的条件下,扫码认证也并不安全。获取别人账号密码的用户,完全可以在手机App上冒用别人的账号。
无论传统的账号密码登录方式,还是扫码登录的无密码登录方式,都无法在认证安全和用户认证体验上,达到一个很好的平衡。特别是在多人共享PC登录的场景下,也无法解决潜在的安全风险,更无法很好地解决操作系统与业务系统的双重认证登录的技术屏障。
本文提出的技术方案是通过在PC 操作系统上实现离线人脸认证,将离线人脸认证方式作为登录业务系统的认证方式之一。将离线人脸服务集成为Windows操作系统默认登录方式,解决PC操作系统与业务系统之间的技术鸿沟[3]。
在企业内部应用人脸认证技术,虽然不像金融行业,存在来自外部大量的呈现式甚至注入式攻击的风险,但是也存在企业内办公场景的特点。因此,研发了离线人脸认证技术[4]。
离线人脸认证是不依赖中心化的人脸认证服务,降低服务可靠性和安全性的挑战[5]。
在端点进行基于人脸特征值数据的人脸识别认证,规避了人脸图像传输造成的隐私安全风险,也能符合设备先登录后联网的网络安全要求,保证在可靠性作业环境中的高可用性。
由于离线人脸识别计算资源有限,离线人脸认证面向双目和3D结构光等图像采集设备优化,通过软硬一体的方式提升对人脸攻击的防护水平。
虽然企业内的办公场景不存在大量的人脸攻击的机会,但是,通过引入用户体验好的人脸活体验证方式,可以提高员工作弊的成本,提高人脸比对的正向通过率。
参考互联网金融在人脸识别认证方面的实践经验,眨眼活体是普遍采用的最高效的活体认证方式之一。例如:支付宝和腾讯都在自己的人脸识别能力上,首选眨眼活体。在PC端的人脸识别组件中,引入了眨眼活体的识别模型。让员工通过简单地眨眼就可以迅速完成人脸比对,具体情况见图1。
图1 活体检测图
多人脸选择比对:企业办公场景,PC 前经常会同时出现多名员工。采用精准的多人脸选择技术,能够提高人脸认证技术的精准度,提供更好的用户体验[6]。
在多人出现在摄像头的场合下,通过人脸识别的大小模型和远近模型,以及综合眨眼活体的认证结果,对多个人脸进行智能的选择,将多人脸的识别准确率达到99.9%[7],具体情况如图2所示。
图2 多人脸选择图
OIDC作为OAuth2.0的扩展,实现了认证能力提供者OP与认证使用者RP之间的身份认证协议。OIDC已经在互联网和企业应用内被大量采用,如图3所示。
图3 OIDC认证流程图
PC离线刷脸认证服务与传统的认证服务的区别,就是由PC刷脸客户端完成刷脸的认证,由服务端鉴别结果,发行token,如图4所示。
图4 PC刷脸登录流程图
所以,PC 连线刷脸客户端与服务器共同组成了OIDC的OP,对业务系统提供认证服务,对既有业务系统认证能力集成非常友好[8]。
Windows系统的账户管理和认证方式是独立在业务系统之外的一套体系。通过将PC离线刷脸客户端注册为Windows 平台的CredentialProvider,将WindowsOS的认证体系和业务系统统一。在用户首次绑定自己在PC上时,首先要验证Windows账户密码。验证通过后,注册离线人脸认证,将业务账号、Windows账号和人脸绑定,具体见图5。
图5 Windows登录界面示意图
预留本地设备身份密钥生成与验证的扩展接口,可以为Windows系统登录增加“人脸识别+设备身份密钥”的多因子验证能力。
2.6.1 边界安全
互联网与外网边界:通过构建外网安全交互平台,实现移动应用的身份认证、访问控制、传输加密以及应用过滤。外网与内网边界:通过设置安全隔离装置,基于数据库代理访问实现内外网数据安全交互[9]。
2.6.2 应用安全
通过移动互联支撑平台提供的第三方安全加固技术,实现客户端App应用防逆向、防篡改、反调试保护。免密App 应用-服务端接口交互采用安全TOKEN 认证,对交互数据长度类型进行安全校验[10]。
2.6.3 主机和网络安全
功能按三级等保要求设计,操作系统、Web 中间件、数据库进行安全扫描和基线配置核查,修复系统漏洞和配置不合规项。
2.6.4 数据安全
移动客户端不存储企业机密信息,重要数据传输采用SSL 协议结合SM2、SM3、SM4 国密算法进行加密传输和数字签名。内外网间仅交互用户关联信息与具有时效性的会话信息。
对于用户人脸数据,在PC 本地只保存人脸特征值,并且是采用国密算法加密保存。
预留对TEE/SE安全组件的调用接口,可将关键数据和端点可信凭证存储于摄像头或主机的硬件安全区,从而符合多级等保验收需求。
2.6.5 业务安全
通过用户信息脱敏设计,App 账号与企业内网为两套完全独立的账号和认证体系,且手机App 不存企业内网的账号、口令信息。并通过内网认证用户绑定,进行App账号和内网账号关联。通过用户登录行为分析,及时发现账号访问异常。
2.6.6 设备安全
对摄像头附件采取固件扩展安全组件方式增加系统对设备的识别能力,在PC 刷脸登录插件中预留对TCM/TPCM 主机可信安全性的对接能力,增加系统对主机的认证识别能力。
功能架构如图6所示。
图6 功能架构图
3.1.1 安全摄像头
安全摄像头,经过定制化,在固件中嵌入定制化的安全组件,用于确保数据来自真实、安全的指定摄像头,并且摄像头本身可支持活体检测、人脸比对以及人脸数据管理功能,可单独完成人脸认证业务。
3.1.2 PC刷脸登录插件
PC刷脸登录插件,主要依靠微软提供的Credential-Provider 进行自定义系统自定义登录,插件模块如表1所示。
表1 插件模块列表
3.1.3 PC刷脸登录服务器端
PC刷脸登录服务器端,主要依靠人脸检索与权限管理模块,实现PC 刷脸登录的授权、认证、控制,权限管理模块具体见表2。
表2 权限管理模块列表
PC 离线刷脸业务流程包括注册与认证两个业务流程。
3.2.1 注册
注册过程是建立Windows 账户、业务账户的绑定关系,并且注册人脸,详见图7。
图7 终端注册流程图
3.2.2 使用
注册成功后,用户就可以在注册过的PC 上,通过一次刷脸,就直接登录Windows,打开业务系统时,无须再次登录,详见图8。
图8 终端登录流程图
基于离线人脸认证技术将“人脸识别+设备身份密钥”的多因子身份验证注册为PC的默认登录方式之一,不仅提高了用户的登录体验,而且避免了密码共享过程中带来的安全威胁。