《信息安全技术 网络安全等级保护测试评估技术指南》(GB∕T 36627-2018)
本文摘录了《信息安全技术 网络安全等级保护测试评估技术指南》(GB∕T 36627-2018)的部分内容。
技术分类
可用于等级测评的测评技术分成以下三类:
- 检查技术:检查信息系统、配套制度文档、设备设施,并发现相关规程和策略中安全漏洞的测评技术。通常采用手动方式,主要包括文档检查、日志检查、规则集检查、系统配置检查、文件完整性检查、密码检查等。
- 识别和分析技术:识别系统、端口、服务以及潜在安全性漏洞的测评技术。这些技术可以手动执行,也可使用自动化的工具,主要包括网络嗅探、网络端口和服务识别、漏洞扫描、无线扫描等。
- 漏洞验证技术:验证漏洞存在性的测评技术。基于检查、目标识别和分析结果,针对性地采取手动或使用自动化的工具,主要包括口令破解、渗透测试、远程访问测试等,对可能存在的安全漏洞进行验证确认,获得证据。
检查技术
- 文档检查
- 检查对象包括安全策略、体系结构和要求、标准作业程序、系统安全计划和授权许可、系统互连的技术规范、事件响应计划等,确保技术的准确性和完整性;
- 检查安全策略、体系结构和要求、标准作业程序、系统安全计划和授权许可、系统互连的技术规范、事件响应计划等文档的完整性,通过检查执行记录和相应表单,确认被测方安全措施的实施与制度文档的一致性;
- 发现可能导致遗漏或不恰当地实施安全控制措施的缺陷和弱点;
- 验证测评对象的文档是否与网络安全等级保护标准、法规相符合,查找有缺陷或已过时的策略;
- 文档检查的结果可用于调整其他的测试技术,例如,当口令管理策略规定了最小口令长度和复杂度要求的时候,该信息应可用于配制口令破解工具,以提高口令破解效率。
- 日志检查
- 认证服务器或系统日志,包括成功或失败的认证尝试;
- 操作系统日志,包括系统和服务的启动、关闭,未授权软件的安装,文件访问,安全策略变更,账户变更(例如账户创建和删除、账户权限分配)以及权限使用等信息;
- IDS/IPS 日志,包括恶意行为和不恰当使用;
- 防火墙、交换机和路由器日志,包括影响内部设备的出站连接(如僵尸程序、木马、间谍软件等),以及未授权连接的尝试和不恰当使用;
- 应用日志,包括未授权的连接尝试、账号变更、权限使用,以及应用程序或数据库的使用信息等;
- 防病毒日志,包括病毒查杀、感染日志,以及升级失败、软件过期等其他事件;
- 其他安全日志,如补丁管理等,应记录已知漏洞的服务和应用等信息;
- 网络运行状态、网络安全事件相关日志,留存时间不少于 6 个月。
- 规则集检查
- 路由访问控制列表:
- 每一条规则都应是有效的(例如,因临时需求而设定的规则,在不需要的时候应立刻移除);
- 应只允许策略授权的流量通过,其他所有的流量默认禁止。
- 访问控制设备策略集:
- 应采用默认禁止策略;
- 应实施最小权限访问,例如限定可信的 IP 地址或端口;
- 特定规则应在一般规则之前被触发;
- 仅开放必要的端口,以增强周边安全;
- 防止流量绕过测评对象的安全防御措施。
- 强制访问控制机制:
- 强制访问控制策略应具有一致性,系统中各个安全子集应具有一致的主、客体安全标记和相同的访问规则;
- 以文本形式存储和操作的用户数据,在操作系统的支持下,应实现文件级粒度的强制访问控制;
- 以数据库形式存储和操作的用户数据,在数据库管理系统的支持下,应实现表/记录、字段级粒度的强制访问控制;
- 检查强制访问控制的范围,应限定在已定义的主体与客体中。
- 路由访问控制列表:
- 配置检查
- 依据安全策略进行加固或配置;
- 仅开放必要的服务和应用;
- 用户账号的唯一性标识和口令复杂度设置;
- 开启必要的审计策略,设置备份策略;
- 合理设置文件访问权限;
- 三级及以上等级保护对象中敏感信息资源主、客体的安全标记:
- 由系统安全员创建主体(如用户)、客体(如数据)的安全标记;
- 实施相同强制访问控制安全策略的主、客体,应标以相同的安全标记;
- 检查标记的范围,应扩展到测评对象中的所有主体与客体。
- 文件完整性检查
- 采用哈希或数字签名等手段,保证重要文件的完整性;
- 采用基准样本与重要文件进行比对的方式,实现重要文件的完整性校验;
- 采用部署基于主机的 IDS 设备,实现对重要文件完整性破坏的告警。
- 密码检查
- 所提供的密码算法相关功能复合国家密码主管部门的有关规定;
- 所使用的密钥长度符合等级保护对象行业主管部门的有关规定。
识别和分析技术
- 网络嗅探
- 监控网络流量,记录活动主机的 IP 地址,并报告网络中发现的操作系统信息;
- 识别主机之间的联系,包括哪些主机相互通信,其通信的频率和所产生的流量的协议类型;
- 通过自动化工具向常用的端口发送多种类型的网络数据包(如 ICMP pings),分析网络主机的响应,并与操作系统和网络服务的数据包的已知特征相比较,识别主机所运行的操作系统、端口及端口的状态。
- 在网络边界处部署网络嗅探器,用以评估进出网络的流量;
- 在防火墙后端部署网络嗅探器,用以评估准确过滤流量的规则集;
- 在 IDS/IPS 后端部署网络嗅探器,用以确定特征码是否被触发并得到适当的响应;
- 在重要操作系统和应用程序前端部署网络嗅探器,用以评估用户活动;
- 在具体网段上部署网络嗅探器,用以验证加密协议的有效性。
- 网络端口和服务识别
- 对主机及存在潜在漏洞的端口进行识别,并用于确定渗透性测试的目标;
- 在从网络边界外执行扫描时,应使用含分离、复制、重叠、乱序和定时技术的工具,并利用工具改变数据包,让数据包融入正常流量中,使数据包避开 IDS/IPS 检测的同时穿越防火墙;
- 应尽量减少扫描工具对网络运行的干扰,如选择端口扫描的时间。
- 漏洞扫描
- 识别漏洞相关信息,包含漏洞名称、类型、漏洞描述、风险等级、修复建议等内容;
- 通过工具识别结合人工分析的方式,对发现的漏洞进行关联分析,从而准确判断漏洞的风险等级;
- 漏洞扫描前,扫描设备应更新升级至最新的漏洞库,以确保能识别最新的漏洞;
- 依据漏洞扫描工具的漏洞分析原理(如特征库匹配、攻击探测等),谨慎选择扫描策略,防止引起测评对象故障;
- 使用漏洞扫描设备时应对扫描线程数、流量进行限制,以降低测评对测评对象产生的风险。
- 无线扫描
- 识别无限流量中无线设备的关键属性,包括 SSID、设备类型、频道、MAC 地址、信号强度及传送包的数目;
- 无线扫描设备部署位置的环境要素包括:被扫描设备的位置和范围、使用无线技术进行数据传输的测评对象的安全保护等级和数据重要性,以及扫描环境中无线设备连接和断开的频繁程度以及流量规模;
- 使用安装配置无线分析软件的移动设备,如笔记本电脑、手持设备或专业设备;
- 基于无线安全配置要求,对无线扫描工具进行扫描策略配置,以实现差距分析;
- 适当配置扫描工具的扫描间隔时间,既能捕获数据包,又能有效地扫描每个频段;
- 可通过导入平面图或地图,以协助定位被发现设备的物理位置;
- 对捕获的数据包进行分析,从而识别扫描范围内发现的潜在的恶意设备和未授权的网络连接模式;
- 实施蓝牙扫描时,应覆盖测评对象中部署的支持蓝牙的所有基础设施(如蓝牙接入点)。
漏洞验证技术
- 口令破解
- 使用字典式攻击方法或采用预先计算好的彩虹表(散列值查找表)进行口令破解尝试;
- 使用混合攻击或暴力破解的方式进行口令破解;混合攻击以字典攻击方法为基础,在字典中增加了数字和符号字符;
- 如测评对象采用带有盐值的加密散列函数时,不宜使用彩虹表方式进行口令破解尝试;
- 使用暴力破解时,可采用分布式执行的方式提高破解的效率。
- 渗透测试
- 通过渗透测试评估确认以下漏洞的存在:
- 系统/服务类漏洞。由于操作系统、数据库、中间件等为应用系统提供服务或支撑的环境存在缺陷,所导致的安全漏洞,如缓冲区溢出漏洞、堆/栈溢出、内存泄漏等,可能造成程序运行失败、系统宕机、重新启动等后果,更为严重的,可以导致程序执行非授权指令,甚至取得系统特权,进而进行各种非法操作。
- 应用代码类漏洞。由于开发人员编写代码不规范或缺少必要的校验措施,导致应用系统存在安全漏洞,包括 SQL 注入、跨站脚本、任意上传文件等漏洞;攻击者可利用这些漏洞,对应用系统发起攻击,从而获得数据库中的敏感信息,更为严重的,可以导致服务器被控制。
- 权限旁路类漏洞。由于对数据访问、功能模块访问控制规则不严或存在缺失,导致攻击者可非授权访问这些数据及功能模块。权限旁路类漏洞通常可分为越权访问及平行权限,越权访问是指低权限用户非授权访问高权限用户的功能模块或数据信息;平行权限是指攻击者利用自身权限的功能模块,非授权访问或操作他人的数据信息。
- 配置不当类漏洞。由于未对配置文件进行安全加固,仅使用默认配置或配置不合理,所导致的安全风险。如中间件配置支持 put 方法,可能导致攻击者利用 put 方法上传木马文件,从而获得服务器控制权。
- 信息泄露类漏洞。由于系统未对重要数据及信息进行必要的保护,导致攻击者可从泄漏的内容中获得有用的信息,从而为进一步攻击提供线索。如源代码泄漏、默认错误信息中含有服务器信息/SQL 语句等均属于信息泄露类漏洞。
- 业务逻辑缺陷类漏洞。由于程序逻辑不严或逻辑太复杂,导致一些逻辑分支不能够正常处理或处理错误。如果出现这种情况,则用户可以根据业务功能的不同进行任意密码修改、越权访问、非正常金额交易等攻击。
- 充分考虑等级保护对象面临的安全风险,选择并模拟内部(等级保护对象所在的内部网络)攻击或外部(从互联网、第三方机构等外部网络)攻击。
- 评估者应制定详细的渗透测试方案,内容包括渗透测试对象、渗透测试风险及规避措施等内容(相关内容参见附录 B)。
- 通过渗透测试评估确认以下漏洞的存在:
- 远程访问测试
- 发现除 VPN、SSH、远程桌面应用之外是否存在其他的非授权的接入方式。
- 发现未授权的远程访问服务。通过端口扫描定位经常用于进行远程访问的公开的端口,通过查看运行的进程和安装的应用来手工检测远程访问服务。
- 检测规则集来查找非法的远程访问路径。评估者应检测远程访问规则集,如 VPN 网关的规则集,查看其是否存在漏洞或错误的配置,从而导致非授权的访问。
- 测试远程访问认证机制。可尝试默认的账户和密码或暴力攻击(使用社会工程学的方法重设密码来进行访问),或尝试通过密码找回功能机制来重设密码从而获得访问权限。
- 监视远程访问通信。可以通过网络嗅探器监视远程访问通信。如果通信未被保护,则可利用这些数据作为远程访问的认证信息,或者将这些数据作为远程访问用户发送或接收的数据。