医学大数据安全保障体系建设

二、医学大数据安全保障体系建设

(一)加强医疗数据管理

对现有医疗核心系统,如医院的HIS、LIS、PACS,以及各级卫生健康委的区域卫生工作平台、社区卫生公共服务平台等系统的数据库资产和数据资产进行全方位梳理,及时发现包含患者隐私信息的数据库用户分布及权限详情,深度挖掘已经停止维护和更新的软件、操作系统、应用程序库以及患者敏感数据的分布(包括患者的姓名、联系方式、身份证号等);对包含患者敏感数据的表、模式、库进行敏感度评分,并进一步对医疗数据进行分类分级;对医疗核心数据资产进行周期性动态分析,实时动态掌握数据资产变化及使用趋势,做到对医疗数据的风险预估和异常评测。

(二)加强数据库安全防护

1. 综合评估数据库“弱点”

建议通过专业度及成熟度较高的数据库“弱点”评估技术,对现有医疗核心数据库的运行状态进行周期性监控和综合风险评估,评估范围覆盖医疗数据库管理系统(Database Managem ent Sys tem ,DBMS)漏洞、管理员维护漏洞、程序代码漏洞和高危敏感医疗数据检测四个方面;充分暴露并证明数据库自身的安全漏洞、弱配置项、缺省配置项、弱口令、缺省口令、易受攻击代码、程序后门、权限宽泛等安全风险,继而根据修复建议,有针对性地对数据库进行安全加固。

2. 让攻击“进不来”

医疗行业的业务系统环境复杂,普通三级医院便可具备100套以上的医疗系统,数据库为这些医疗系统开放了繁杂的接口,而医院因考虑到业务稳定性,无法及时更新或不能更新数据库补丁,因此需要在各类医疗系统的数据库外围创建一个安全防护层,即虚拟补丁,并通过虚拟补丁对通用漏洞披露(Comm on Vulnerabilities & Expos ures ,CVE)上已公开的数据库漏洞进行全方位攻击特征拦截。漏洞分类涵盖缓冲区溢出、权限提升、拒绝服务攻击等,从而实现在数据库不打补丁的情况下也能完成数据库漏洞防护的目的。

3. 让数据“拿不走”

为了防止未经授权的访问或内部高权限用户整体拖库,需对数据库中存储的敏感数据进行加密。通过多级权限控制体系,按角色、IP地址、时间范围对密文进行访问控制,并通过对应用程序或系统进行摘要值和链接随机种子的判定,保证应用身份标识不可伪造,合法链接不可重放,实现医疗数据被盗后无法查看明文的目的。

4. 事后追溯

(1)对医生、护士、HIS的维护人员、数据库管理员(Database Administrator,DBA)、外包服务人员等人员的数据库操作行为进行全量记录,记录信息需包含应用信息、客户端信息、访问工具、操作行为、执行对象、响应时长、应答结果、影响范畴等二十多类元素。

(2)对于外部发起的数据库漏洞攻击、恶意结构化查询语言(Structured Que ry La ng ua g e ,SQL)注入行为、非法业务登录、高危SQL操作和批量医疗数据下载,及时发现并告警。

(三)加强第三方数据交换管理

对于各类医疗系统的开发测试人员以及医疗数据分析人员或第三方医疗疾病大数据分析公司需要使用数据的情况,建议通过专业技术对敏感数据进行自动识别和统一管理,针对共享数据中包含的患者个人隐私数据,采用脱敏算法将敏感数据转化为虚构数据,隐藏真正的患者敏感信息,防止各机构内部对隐私数据的滥用。

对于医院上报给第三方医疗机构,如卫生健康委、疾控中心等的医疗数据,其中若包含患者隐私信息或其他敏感处方信息,建议对数据行为进行流程化管理,对医疗数据外发行为进行事前数据发现梳理、申请审批、事中添加数据标记、自动生成水印、外发行为审计、数据源追溯等,避免内部人员外发数据泄露而无法进行追溯。

(四)加强数据访问管理

对于医生、护士、医院外包服务人员、院方内部运维人员、医疗数据分析人员、医院各类系统的研发和测试团队需要访问数据的情况,建议在不影响其正常工作的前提下,通过相关技术准确识别敏感数据访问行为,采用多级权限管控手段,针对其访问过程中接触的用户隐私信息及其他敏感信息,在数据库通信协议层面,通过SQL代理技术实现完全透明的、实时的动态遮蔽;根据不同业务用户身份、不同业务功能模块进行遮蔽配置,以适应复杂环境下的敏感数据使用需求。

通过“用户+操作+对象+时间”的控制策略,防止大规模医疗数据泄露或被篡改,防止批量数据查询和下载,以及敏感表非法访问。对于内部高权限用户的高危操作,针对应用系统初始建模和高危SQL语句定义,捕获所有应用访问SQL语句,形成语法抽象,用户根据风险确定拦截名单,一旦触发拦截名单则对其进行拦截;如果特殊场景下必须执行高危命令,则需要进行申请,审批通过后方可执行。