指南明确表示“对第三方工具包的管理采取全周期管理原则,对合作方的接入前审核、接入中监控、退出时审计追溯等进行全周期管理,涉及第三方嵌入或接入的工具包,开展技术检测确保其个人信息收集、使用行为符合约定,并对收集个人金融信息或支付敏感信息行为进行审计,发现超出约定的行为及时切断接入”。基于指南规定,梆梆安全结合金融行业SDK安全实践经验从SDK接入前、使用中、退出时三个不同阶段分析银行安全引入SDK的关键技术,并提供银行安全引入SDK解决方案。
接入前检测审核
指南提出SDK安全接入的总体原则,SDK安全接入应遵循信息保护、信息透明、无主观恶意行为、全周期管理4项总体原则,在接入前的全面检测应符合指南提出的要求。SDK安全设计需要从资源控制、身份认证、访问控制、数据安全、软件容错、攻击防护、安全审计、个人信息收集多个维度进行评估,在进行SDK接入前检测审核时,需要充分满足上述所有评估项,方可接入使用,如发现不满足项需进行整改复测。
使用中监控
近年来,因SDK违规操作造成APP被通报事件时有发生,在接入时做到了对SDK进行全面检测,在使用过程中也需要从权限控制及热更新操作等维度对接入的SDK进行监测。
指南中SDK安全设计在7.1资源控制、7.3访问控制、7.4数据安全、7.8个人信息收集等多次提到SDK权限问题,针对不同类型的第三方工具包对宿主资源调用提出了明确需求。
7.8个人信息收集规定了第三方工具包收集个人信息宜满足的6个条件,对第三方工具包收集个人信息作出了规定,要求工具包提供方将工具包需采集的个人信息、用途及采集频率告知银行,并在声明中明确说明数据采集和使用的主体,并就信息获取行为取得客户的明示同意,内容包括工具包提供方收集、使用个人信息的规则,如收集和使用个人信息的目的,收集方式和频率,存放地域,存储期限,自身的数据安全能力,对外共享、转让、公开披露的有关情况等。
银行应就指南规定的不同类型SDK安全设计标准进行审核,对SDK进行必要的权限控制,一旦监测发现第三方SDK权限存在未授权收集使用个人信息、违规收集使用个人信息、或未按照声明权限收集使用个人信息等问题时,及时做出阻断。
退出时审计追溯
合作终止时,依据约定的方式删除(或销毁)相关数据,需要对SDK进行全方位审计,如果发现在使用过程中存在问题,及时进行问题追溯、追责等。
银行安全接入SDK解决方案在SDK接入前审核、退出时审计追溯阶段,梆梆安全可基于自身在移动应用和SDK安全检测领域积累的技术和经验对其进行专业人工检测(渗透测试),检测SDK是否满足安全接入指南中所规定的要求。使用中通过梆梆安全监测平台进行权限监控、阻断及是否存在热更新操作,确保SDK使用过程的安全。在移动应用中借助威胁情报探针,利用应用运行过程中设备、系统、应用、行为四个维度数据,结合后端大数据分析平台的各种模型规则,实时监测移动应用各种运行时攻击,支持定位溯源攻击设备、攻击方式、攻击手段、攻击者。
厂商如何保证SDK安全安全接入指南中明确表示SDK需要具备抗攻击检测项、安全键盘类SDK需要特殊防护、与服务器通讯需要采用签名技术。
抗攻击检测主要在指南中7.6攻击防护明确表示SDK需要具备防动态调试、防进程注入、防反编译、防篡改、防重放、抗抵赖等相关攻击检测项。安全键盘类SDK需要满足能对敏感信息进行及时加密,防止内存被转存。指南中7.2身份认证和7.4提到SDK在与后台服务器进行身份认证时需要采用数字签名技术,且SDK中不能硬编码存储系统密钥。
指南中7.9第三方工具包交付明确了第三方工具包的交付条件,提到SDK在交付时需要提供安全测试报告,约定了工具包提供方在工具包使用期间的配合事项,包括发现安全缺陷的处置方法、发生变更时的影响评估及应对方案,配合银行进行问题、事件分析等。
在SDK安全测试报告及后续的监测、应对方案等环节处理上,由于涉及到大量安全专业技术及应急处置方案,第三方工具包提供方在依照指南进行合规性检测时以及制定后续应急处置方案等环节需要付出较大的成本,且往往难以取得较为理想的成果,因此建议SDK提供方可以借助第三方专业网络安全厂商对其SDK进行安全检测,同时可出具更为专业的安全测试报告,以符合第三方工具包交付的条件。
外发SDK安全解决方案梆梆安全可针对SDK进行人工检测,依据安全接入指南中规定的检测项进行人工检测,出具安全检测报告。
在SDK数据安全相关安全设计要求中,指南提出“除特别允许的情况外,不在SDK中硬编码存储敏感信息”,因此需要对SDK中的密钥进行保护,不可以硬编码存储,可以使用梆梆密盾对密钥进行加密保护。梆梆密盾是梆梆完全自主研发的白盒密码技术产品,符合国际白盒数字理论,通过NIST密码模块标准化认证,可以保障用户原始密钥在白盒环境下得存储、使用安全,全过程不出现原始密钥明文,确保密码系统正常有效运转,保护用户核心敏感数据。
使用安全加固产品对SDK进行加固保护,满足安全接入指南中7.6攻击防护中所有抗攻击检测项,梆梆安全SDK加固技术可以在不改变SDK代码的情况下,为SDK提供全面的安全风险防护能力,有效防止针对SDK的反编译、代码窃取、动态调试、病毒木马植入、恶意广告植入等恶意攻击行为。
随着APP个人信息保护治理工作的深入推进,与APP天然存在密切联系的第三方SDK安全问题逐渐被提上日程,曝光SDK乱象更是引发对第三方SDK风险隐患的广泛