您的当前位置:首页正文

APP端到端安全防护体系研究与应用

2022-12-08 来源:客趣旅游网
»研究doi:10.3969/j.issn. 1000-1247.2019.07.002APP端到端安全防护体系研究与应用操张进程炎林琳中国移动通信集团安徽有限公司m 以移动端APP全生命周期为核心,构建覆盖安全开发、安全检测、安全加固、运行防护全过程的安全防 护体系,提升自研APP安全管控能力。应用动态安全防护系统可智能化应对网络攻击、屏蔽业务风险, 防止用户数据、网络信息外泄造成的不良影响。1移动APP自研端到端安全防护□研究背景及意义为了提升业务体验、增强网络运维效率,电信运营商不

安全开发管控、事后的APP运行动态防护体系(图1 ),结

合APP自主开发、自主运营优势,全面提升APP应用层、传 输层的安全防控能力。断加强各种移动端的运维运营手段建设。近年来,基本依靠 外包的IT系统开发模式不断暴露岀核心技术无法自主掌控、

系统开发响应速度不及时、系统开发费用可控度不高、系统 升级演进能力不足等问题,为此,包括中国移动在内的运营

2.1全方位的自研APP安全评估对于APP开发者而言,最大的风险是不了解所开发APP 所处的系统网络风险、不熟悉安全评估规范、不知晓相关风 险的解决方案。遵循源头管控原则,将安全风险评估前置, 利用自动化检测工具、人工渗透测试相结合的方式,全面检

商纷纷在企业内部设立自主研发机构,依托DevOps开发运 维一体化,打造面向核心业务系统的自主开发能力。在上述背景下,电信运营商自主开发的APP数量不断 增加,目前自研APP主要集中在网络运维支撑、运营数据分 析、企业内部管理等非核心业务领域,随着APP应用范围加

测移动应用,尽可能挖掘APP源码中存在的安全漏洞,帮助 自研人员及时了解APP安全风险、提高APP开发程序的安全

大,接入更多用户、网络等外围系统数据,安全风险敞口不 断扩大,包括中国移动在内的运营商,多款自研APP暴露出

性。依据信息安全技术、信息安全风险评估、等级保护定 级、操作系统安全技术、数据库管理系统安全技术、CVE通 用漏洞库评估、移动互联网应用安全防护等相关规范要求,

中高级安全漏洞,自动化、智能化的安全攻击工具利用漏洞 非法获取用户位置、网络访问、用户身份等敏感信息,造成

针对APP开发人员开展安全技术知识专题培训。检查内容主 要包括APP后门程序排查、安全配置基线核查、APP日志分

数据损失、业务损失,采用面向业务层的传统安全管控机 制体系显得力不从心。针对自主可控APP开发应用中存在的

析、渗透攻击测试,针对性开展代码审计,对常见安全问题 加以配置验证,利用模拟攻击方式全面验证APP潜在问题, 对通用安全问题采用人工验证方式获取APP重要信息。组织

代码安全防范措施不全、文件可被随意篡改、安全配置被 忽略、APP运行不安全、加固强度差、存在硬编码等系列问

题,安徽移动构建了面向APP全生命周期的端到端安全防护 体系,通过覆盖安全开发、安全检测、安全加固、运行防

运营商网络安全专业团队,根据APP的业务流程、网络交互 特点开展全方位的业务覆盖测试。最终输出《漏洞扫描报 告》《基线核查报告》《日志分析报告》《渗透测试结果报

护等全过程,提升自研APP的安全可控力。应用动态安全防 护系统可智能化应对网络攻击、屏蔽业务风险,防止用户数

告》《安全风险评估报告》,确保在应用上线前及时发现安 全漏洞,防患于未然。据、网络信息外泄造成不利的社会影响。Q技术方案及关键点围绕APP应用,建立事前的安全风险评估、事中的APP

2.2全流程的自研APP开发管控•构建面向自研APP的安全开发、安全检测、安全加固三8 TELE(3OMMUNICATIONS TECHNOLOGY/ 2019 ・ 7以降低人工操作门槛。安全开发(3)安全加固方面:针对

•便捷的APPi^代码安全管理;• APP源代码安全扫描;自研APP引入防逆向,通过在

• BUG管理系统安全评估动态防护DEX文件中插入永远不被执

安全检测•自动化监测; •人工渗透测试; •安全技术培训u>•静态、动态结合的代码扫描; •木马及漏洞检测分析;、•动态验证技术;

_亠 •动态封装技术; 行的无效字节码、对安卓DEX

匚J •动态混淆技术;•移动APP服务端安全检测•动态令牌技术文件进行加壳保护、将函数名 与函数体分离、针对安卓应

安全加固用底层运行的虚拟机实例采 •高级加密技术保护应用安全;

■全方位加密APK、IPA、H5应用;用VMP保护技术,对SO文件

• DEX、SO库、内存、数据等安全进行加壳保护,优化加密ELF 结构,隐藏SO中外部函数,

图1 面向自研APP的端到端安全防护体系对代码控制流、数据流应用 LLVM编译级代码混淆,提高

同步的APP开发管控机制,综合考虑APP安全、运行速度、 黑客分析、反编译和破解的难度。对DEX、SO、H5等代码

兼容性,采用加壳保护、深度加固技术,无死角式地提升

文件,图片、脚本、文档等资源文件及APP签名进行完整性

APP安全性。校验,确保APP文件及签名被篡改后无法正常安装或运行。

⑴安全开发方面:开展APP源代码级别安全管理,针对 在APP应用启动时立刻ptrace自身从而避免GDB工具无法成

自主研发中应用的Java、C、C++、JavaScript等主流开发语

功ptrace应用、防止动态调试注入,针对APP加密防止第三方 言,利用分析引擎及规则库,提供源代码安全漏洞检测。通 利用内存dump命令复制源码,识别虚拟设备与真实硬件的 过Web界面提供APP安全测试管理,包括安全测试、结果查 差异,识别并禁止运行于模拟器环境。对APP SDK进行数据 看、协同审计、报表导出等功能。针对自研APP全部版本提

传输加密,对APK加密进行源码优化,排除源码Log、冗余

供版本控制、集成BUG管理等功能,应用测试人员在使用过 字段及冗余方法体,防止黑客基于调试日志获取代码逻辑。 程中发现问题时,通过EUG批注工具,以文本、视频、语音 对APP所涉及的隐私信息、加密算法及秘钥、本地数据、 等富媒体方式自动记录APP运行信息,方便自研团队沟通处

SQLite数据库等提供加密保障,防止窃取用户及网络信息。

理,支持APP安全开发全生命周期管理。基于安卓Activity针对用户信息填报页面提供防恶意截屏保

(2)安全检测方面:引入静态、动态相结合的源代码扫

护,阻止相关函数调用系统底层截屏相关操作,以及实时监 描,利用APKTooL DEX2jar. jd-gui、smali2DEX等静态分 听、提醒恶意拦截等风险操作。提供Android. 1 OS安全键盘 析工具对自研APP进行反向编译,并对编译后的xml文件、

加固,实现键盘防截屏、防劫持、输入无明文显示及无字符

Java文件等文件开展静态扫描分析。对应用软件安装、运行

放大等。针对H5文件,通过加密、压缩、混淆三项技术, 过程进行行为监测和分析,检测方式包括沙箱模型和虚拟机 为自研开发者提供自动化、一键式加固保障工作。方式,APP程序在其中独立运行,从外界观察应用程序的执 行过程和动态。组织专业安全人员对待检测APP进行安装、

2.3全实时的自研APP动态防护运行和试用,基于专业经验圈定检测重点。自研APP应用端 面向移动APP实时运行服务,安徽移动部署建设了动态 的人工检测、自动检测均支持Android和iOS两大系统,覆盖 安全防护系统,图2呈现了防护系统所涉及的动态验证、动 已知的安全漏洞。自研APP服务端安全检测主要包括网络设 态封装、动态混淆、动态令牌4项关键技术。备和主机系统漏洞检测、Web业务漏洞检查、数据漏洞检

(1)动态验证技术:通过部署在APP端的动态防护系统 测、基线安全核查、无线检查等,主动发现网络设备及主机 SDK,无感知、实时采集客户端建立连接前后的信息,如硬

系统安全问题,对网站SQL注入、Cookie注入、盲注以发现

件信息、MAC地址、充电状态、无线网络IP、SSID、设备 Web漏洞,对数据库设备、APP已知漏洞及系统进行完整性

指纹、APP证书等信息,通过算法匹配验证APP运行环境、 检查,开展服务设备上线安全检查、第三方入网安全检查、 APP服务端数据包合法性,以对抗自动化工具的攻击。合规安全检查、日常安全检查、无线网络检查等。采用渐进 ⑵动态封装技术:通过对APP应用网页底层代码进行变 式扫描分析法,融合操作系统指纹识别、智能端口服务识别 换并封装,隐藏攻击入口,实现原理是将动态防护系统部署 等技术,准确识别被扫描对象,提供一键式漏洞验证工具集于APP服务系统前端,作为APP服务端的反向代理系统运行www.ttm.com.cn 9»研究r

动态验证验证运行环境,识别“人”操作或“自动化”攻击。如:防护自动化攻击、请求回应r

动态封装网页底层代码变化并封装,隐藏攻击入口。如I:防护扫描及爬虫>务端响应等全流程的安全风险 识别、管控,从终端信息(设

备指纹、操作系统、APP版本

应用 服务器等)、安全攻击等多个维度, 可视化、全景式呈现移动A PP业 务面临的安全威胁.便于自研 APP开发人员、使用人员及时掌

厂|・动态安全防护系统(

动态混淆对提交的客户端敏感数据进行混淆变化,保护数据,防篡改。如:防护中间人攻击A动态令牌-次性的页面动态令牌,确保执行正确的业务逻辑。如:防护重放攻击或越权控APP业务状态。通过与自主研发人员的沟

通了解,动态安全防护系统在

防止APK反编译、动态破解、 中间人攻击等方面成效显著,

图2动态安全防护体系的4项关键技术极大地节省了开发人员对于自 研APP漏洞分析、安全加固投入

于网络中,APP服务端不进行任何改动,基于L4~L7负荷均 的时间与精力,为公司APP自主研发工作营造了安全、高效

衡设备将移动APP流量牵引至动态防护系统进行动态封装、 变换,对抗恶意扫描及爬虫。的开发生态。⑶动态混淆技术:对移动APP与服务端的交互数据实施 动态混淆,保护业务传输数据安全,防止攻击者篡改及通过

□结束语文中提出的移动APP端到端安全防护体系面向应用层,

中间人攻击(比如利用钓鱼Wi-Fi )盗取用户账号密码、通

提供灵活的APP源代码安全管理,支持多种编程语言及BUG 管理系统,支撑自研APP安全开发;静态、动态技术相结合

信地址、手机号码等敏感信息,避免中间人将原有令牌替换

为恶意链接、恶意代码达到远程控制攻击。(4)动态令牌技术:对当前页面内的合法性请求地址发

的代码扫描分析、木马及漏洞检测、一键式生成安全检测

报告,支撑移动APP的高效安全检测;应用高级加密技术保

放一定时间有效的动态令牌,拒绝一切没有令牌的非法请

护应用安全,全方位加密APK/IPA及H5应用,提供DEX, SO库、内存、数据等安全方案,支撑APP安全加固。面向

求。通过在页面中随机植入动态验证脚本,实现对APP访问

端的人机识别、运行环境识别,自动识别自动化攻击,确保 执行正确的业务逻辑。传输层,通过部署移动APP动态安全防护系统,在对业务零

影响、用户无感知的情况下,有效规避大多数自动化工具攻 击、主动防护未知漏洞攻击。目前已将该防护体系嵌入至

移动APP动态安全防护系统通过实时采集分析业务、网 络大数据,实现从移动APP访问端到APP服务端的各个环节安

公司内部自主研发机制,有效拓展自研APP的安全威胁感知 半径,提升移动APP安全性,后期将针对自研APP的全网分

全威胁感知、识别、透视,结合用户行为分析、移动APP安全 开发、安全检测及安全加周,实现APP全生命周期安全防护。发,引入渠道检测、应用云更新等技术手段,将端到端防护 体系进一步拓展茎更多的自研APP,以提高自研应用生态的

目应用情况针对面向网络运维领域自主研发的移动APP,安徽移动 于2018年引入并应用动态安全防护技术,实现对掌上运维、

安全态势感知能力。参考文献[1]

家庭宽带运维、网络流量分析等自研APP重点功能的防护, 并取得一定的成效。为了全方位保障自研APP安全,结合自 研APP自主可控特点,构建自研APP端到端安全防护体系,

陶志强•移动APP的信息安全与防护方式[J].电子技术与软件工

程,2019(8)[2] [3]

孙侃•移动应用APP全生命周期安全管理[J].现代电视技术,2018(9)针对APP上线前、中、后可能存在的安全漏洞及攻击(如撞 库、扫号、篡改、伪造等),提供全面的安全管控解决方 案。对内部自研的多款APP应用进行保障,通过APP集成动 态防护SDK、建设部署动态安全防护系统,实现自研APP的

刘础豪,刁雨诺,赵祉涵•移动APP应用的信息安全与防护方式分析

[J].中国新通信,2018,20(11)[4]

王娟」OS平台应用程序攻防技术的研究与应用[D].南昌:南昌航空

大学,2018阪如对本文内容有任何观点或评论,请发E-mail至ttm@bjxintong.com.cn。全生命周期防护,包括移动APP终端数据、网络传输、服

1O TELECOMMUNICATIONS TECHNOLOGY/ 2019 ・ 7

因篇幅问题不能全部显示,请点此查看更多更全内容