APP下载

安全测试中的身份鉴别和访问控制

2021-11-17北京中电普华信息技术有限公司

电子世界 2021年20期
关键词:访问控制口令客体

北京中电普华信息技术有限公司 张 静

身份认证服务、访问控制服务被ISO定义为网络安全标准中2个层次的安全服务。从接触安全测试工作以来,安全功能测试项中关于身份鉴别和访问控制的用例屡见不鲜,通过实际操作系统,现整理在实际工作中对身份鉴别和访问控制的理解并形成本文。

1 身份鉴别

1.1 概念

身份鉴别,别名身份认证,日常生活中,人们常把对主客体身份进行确认的过程称为认证过程,换言之,身份认证在电力软件行业及互联网行业中,可理解为当互联网用户想要访问系统或者受限制资源时,系统会对想要访问的用户身份进行识别和验证的一个过程。目的就是确认什么身份,什么角色,身份合不合法。

既然要对身份进行鉴别,首先得了解该身份具有什么特别之处,这就可以引入身份标识这个概念了。举个例子,坐火车,需要出示有效证件来证明我是‘我’,也就是说,身份标识是能够证明用户身份且证明用户独有特征的,一个人只有张身份证,每张身份证清楚地表明姓名、出生日期、出生地点、户口所在地以及个人照片等信息,‘我’是‘我’且只有一个我,所以身份标识必须具有唯一性。实际软件项目开发设计中,我们可以把身份标识通常设为用户名、用户ID等

身份标识确定之后,如何来确认什么身份,什么角色,合不合法?这就引进了身份鉴别。

1.2 身份鉴别的类型

身份鉴别通常划分为单向鉴别和双向鉴别。

单向鉴别是指在通信协议中,只有一方执行鉴别动作,在单向身份鉴别中,一个实体充当声称者;另一个实体充当验证者。

双向身份鉴别是指通信双方互相鉴别。实体双方同时充当声称者和验证者。双向鉴别可以在两个方向上使用相同或者不同的鉴别机制。

1.3 阐述身份鉴别在测试工作中如何体现

在日常测试工作中,针对身份鉴别的测试关键点通常归纳为以下几方面:

(1)系统应具备系统管理员用户,职能为系统配置、管理系统用户、角色;应具备审计管理员用户,职能为系统审核、权限审核;应具备审计管理员用户,职能为管理安全日志。

(2)系统应将业务操作权限赋予非系统管理员,且业务操作用户不能具备任何系统级的管理权限。

(3)系统应具备标识和鉴别机制,即应用系统应对用户状态进行划分,并对不同状态账户的操作进行限制。

①系统应有登录模块,不能直接访问URL。②对登录用户进行唯一身份标识验证,可通过数据库主键来实现,已注册用户禁止再次注册。③不能有匿名用户:系统应采用用户名加密码方式进行身份标识和鉴别,数据库中不应存在用户名密码为空字段。

(4)系统应提供独立的登录模块,并对登录用户进行唯一身份标识,不能有匿名用户。

(5)系统应确保用户在授予敏感权限之前被鉴别。即新建用户必须先审核后生效、新建角色应先审核后生效、登录后,才能访问到相应的资源。

(6)系统应具备防篡改和防重放登录机制的能力。

①身份鉴别中的防篡改要求密码要加密、用户密码不能被暴力破解;②身份鉴别中的防重放要求登录过程中含有用户名和密码的请求,不能再次被提交到服务器上。

(7)系统应能够支持双向鉴别机制:https协议进行双向验证,服务端和客户端都必须有证书。

(8)系统应提供多重用户鉴别机制:邮箱验证码、短信验证码、UKEY。

(9)系统应有管理员分发用户的初始口令,强制用户在初始登录时修改初始密码口令;口令应存在有效期,过期将强制修改密码:用户口令的有效期可以在前台进行修改,且有效期到期后,强制用户修改口令。

(10)系统应除了系统管理员外,不允许其他用户修改非本人的口令。

①系统管理员应具备重置用户密码的功能;②系统不能被攻击者采用越权访问的方式修改用户密码。

(11)系统应具备鉴别复杂度的功能:

等保2级:8位及以上数字+字符;

等保3级:8位及以上+字符+特殊字符,不要超过20位。

(12)系统的用户口令应有历史重复次数的限制:修改口令时,新口令不应与前两次设置的口令相同。

(13)系统应能够对失败的标识和鉴别尝试进行锁定。

①用户登录失败多次3-10次,应锁永久锁定或锁定一段时间(失败的标识进行锁定;②用户尝试越权访问行为应锁定(鉴别尝试失败)。

(14)系统应能够设置在客户端登录用户的属性:如设定访问IP和访问时间。

(15)系统应能够检测和处理会话的异常状态:断网后要求用户重新登录。

1.4 身份鉴别的技术

完成身份认证,从字面文字而言,“身份”和“鉴别”就是告诉我们,“谁”要访问,“谁”的身份是什么,“谁”的身份是否合法。如果合法就进行确认服务动作。常用的身份认证方式有:

(1)静态密码:用户名+静态密码登录

生活中,普通从业者在设置密码时,往往选择简单且好记的,如自己、亲人的生日,手机号、纪念日等,这种易泄露、容易被猜测的密码存在弱口令风险,易被攻。

静态密码是基于“你知道什么”的验证手段,也可称为固定口令认证,方式比较简单,黑客可利用数据字典、穷举、探索等手段访问到系统。

(2)动态口令认证

基于动态口令认证,常见的有:动态短信密码和动态口令卡着两种方式。这里涉及的口令必须是一次一密。前者是将系统发给用户注册手机的动态短信密码进行身份认证。后者则以发给(机构)用户动态口令牌进行认证。动态口令高于用户名密码,且又是双因子组合,使用较广。

(3)身份证、信用卡、智能卡:采用软硬件相结合

硬件方面:与外界通信前,完成智能卡与终端间的认证;加入安全传感器,防止数据被读出或写入;发生异常可作出相应反应;存储器加密,不保存明文。

软件方面:使用需要通过双因素认证,今日操作智能卡的安全状态;信息采用文件系统进行保存,不同类型或秘钥,提供不同的访问操作。

(4)一次性口令

核心是要把不确定的因素添加到登录环节,登录过程中传输的信息每次都会发生变化,以提高登录过程的安全性。例如:登录过程输入用户名、密码,系统在收到登录口令后按照时间戳会做一个验算,这个过程即可验证用户的合法性。

(5)生物识别技术

可以是具有唯一性的生物信息和行为特征,如指纹、声音、面相、虹膜等,依托计算机的强大功能和网络技术进行图像处理和模式识别。

①语音识别:对本用户语音进行采样,提取特征,作为样本。存在的不足是如感冒状态,声音有变化,辨别过程受影响,存在误判;②人脸识别:用于身份鉴别设备的摄像头一般会自动采集照片,并将采集到的人脸与存储库的资料进行对比确认。日常生活中,常用于公安布控监控、民航安检、口岸出入控制、海关身份鉴别等;③指纹、掌纹识别:每个人的指纹、掌纹曲线、分叉都存在微小的差异,这种生物特征具有客观性和唯一性,如很多单位使用指纹打卡、手掌打卡;很多手机采用指纹解锁,就是提取指纹中的某些特征信息,节省资源、快速查询;④视网膜识别:视网膜是生物眼睛底部的血液细胞层。通常采用密度低的红外线来获取视网膜的独特特征;⑤虹膜识别:虹膜是一种在眼睛中瞳孔内的织物状各色环状物,每一个虹膜都由不同的斑点、细丝、凹点、射线、皱纹、冠状和条纹结构组成;⑥CA认证:由国际、国内认证机构发放可证明持有者身份合法性的证书,在我们通常的检测项目中,如系统等保级别较低,也可选择开源SSL证书,版本为3.0以上。主要管理和维护客户的证书和证书作废表、维护整个认证过程的安全、提供安全审计的依据。

2 访问控制

2.1 概念

针对越权使用资源的防御措施,传统上,通过“主体—动作—客体”结构,访问控制策略即设置了什么类型的主体可以对什么类型的客体执行什么样的操作。从另一个角度看,也是控制非法用户对系统资源的使用,合法用户对系统资源的非法使用,从而保证系统的完整性和保密性。如图1所示。

图1 概念结构图

访问控制策略的主体属性、客体属性是独立存在的。在接触的安全测试工作中发现,控制策略的主客体只有小部分是通过安全标签来联系的,大多数策略是互不干涉的。因此,主客体都有独立的结构和标记,只要满足特定的关系,即可通过放行。

2.2 阐述访问控制在测试工作中如何体现

在日常测试工作中,针对访问控制的测试关键点通常归纳为以下几方面:

(1)系统应具备系统管理员用户,其职能为管理系统用户、角色:(2)系统应具备审核管理员用户,其职能为系统审核、权限审核:(3)系统应具备审计管理员用户,其职能为安全审计:(4)系统应将业务操作权限赋予非系统管理员,且业务操作用户不能具备任何系统级的管理权限:(5)系统应设置规定类型的角色,且使角色间权限互斥:(6)系统应具备业务审核员用户,其职能为审核关键业务操作。

2.3 访问控制的要素、过程及模式

(1)主体、客体及策略是访问控制的三要素。

①对想要访问的资源提出请求,被称为主体。主体也可称为请求的发起人,可以是任意用户,也可以是由用户发起的相关服务、设备及运行进程;②被访问的资源实体可称为客体。可以是被操作的信息、对象,也可以是文件、存储介质、进行程序;③提出请求的主体对被访问的资源的访问属性和规则统称为访问控制策略。访问策略是主体对客体的一种授权行为,也是客体对主体某些操作行为的允许。

(2)鉴别、授权是访问控制策略的两个过程。鉴别是对想要访问资源的主体进行合法身份识别;授权是限制用户对被访资源的访问权限。

(3)访问控制技术模式

①自主访问控制:自主访问控制是一种较宽松的接入式控制服务,主体可以自行决定是否要将自己的客体访问权限授予其他主体方,或者将部分访问权限授予其他实体方。通俗讲,用户是可以按照自己的意愿来实现有选择的和其他方共享文件或信息。是保护系统资源不被非法访问的一种有效手段。自主访问控制的不足之处在于控制粒度是单个用户,如果没有存储的用户想要访问系统资源时,授权用户在获得访问权限后,可以批准他人的访问请求,可能会造成非法用户可读取到系统敏感信息。②强制访问控制:强制访问控制是一种对访问权限的约束机制,将系统中的资源信息按照密级和类进行管理,用于控制访问策略。强制访问控制策略可以预防越权访问的发生。强制访问控制按照密级划分可划分为4级:绝密、秘密级、机密和无级别。用户(或其他主体)与文件(或其他客体)都被分配了安全标签及属性。当主体的认可证级别大于或者等于客体的密级时,主体才能够读取相应的客体;当主体的许可证级别小于或者等于客体的密级时,主体才能写相应的客体。

每次访问发生时,系统会自动检测安全属性,从而确定用户是否有权访问该资源。多级安全策略就是一种强制访问的控制策略。

身份认证是解决你是谁,你对应的角色是什么,即通过鉴别方式,确定你是合法的某个用户。而访问控制是什么资源给什么角色。

本文总结了身份鉴别与访问控制技术的概念及常用的技术,对初次接触身份鉴别与访问控制的测试读者有所帮助。

猜你喜欢

访问控制口令客体
符号学视域下知识产权客体的同一性及其类型化解释
高矮胖瘦
口 令
好玩的“反口令”游戏
ONVIF的全新主张:一致性及最访问控制的Profile A
SNMP服务弱口令安全漏洞防范
动态自适应访问控制模型
浅析云计算环境下等级保护访问控制测评技术
大数据平台访问控制方法的设计与实现
旧客体抑制和新客体捕获视角下预览效应的机制*