《基于代码虚拟化的H5安全加固方案-王斌.pdf》由会员分享,可在线阅读,更多相关《基于代码虚拟化的H5安全加固方案-王斌.pdf(36页珍藏版)》请在三个皮匠报告上搜索。
1、基于代码虚拟化的Web安全加固案前 58同城 信安前端负责/王斌目录Web应安全现状及险 Web应安全解决案代码虚拟化案Web应用安全现状及风险 Web应用安全现状-案例11.运在站的web应都是明代码2.核js件没做保护,加密法暴露Web应用安全现状-案例21.Web应可被设置断点进调试,进分析出Web所承载的业务逻辑 Web应用安全现状-总结1.零防御措施,JavaScript 源代码开源式运在浏览器2.核业务Web应多,在产眼中越来越具有攻击价值3.有效的防御段Web应用面临的安全风险 Web代码安全 源码泄漏、业务逻辑可被分析 应盗 随意获取相关js脚本,通过复制、盗来成仿冒应 Web
2、业务运安全 业务运过程中的安全问题,例如党实现商品动秒杀、批量注册等等Web应用安全解决案Web应用安全解决案从源码维度解决应程序代码的安全问题案选择Web加固系统-核架构Web加固能实现案-防格式化Web加固能实现案-加密关键字Web加固能实现案-字符串混淆Web加固能实现案-运算混淆Web加固能实现案-控制流混淆Web加固能实现案-废代码注Web加固能实现案-常量提取Web加固能实现案-反调试Web加固能-效果Web加固能-破解1.动分析2.基于AST编写反混淆插件代码虚拟化-JSVMP代码虚拟化介绍 JS代码虚拟化是什么?借鉴进制代码虚拟化保护法的原理,将JS代码直接编译成可执的数据流指
3、令集,浏览器加载解释器对指令进解析并运的种保护案代码虚拟化-总体流程代码虚拟化-编译器 JSVMP中编译器是什么?会成个树状结构的“抽象语法树(AST)”,解析语法树成对应的定义指令代码虚拟化-编译器架构代码虚拟化-bycode代码虚拟化-指令成案例代码虚拟化-解释器 JSVMP中解释器是什么?在这就相当于我们实现的VM去解释js编译成的bycode,整个解释过程也是js代码完成代码虚拟化-解释器运流程代码虚拟化-指令解析 esp源code指针,控制执指令代码虚拟化-指令介绍指令是让解释器知道去什么代码虚拟化-总结 安全 js明代码成的opcode设计是私有不公开的,不存在明代码了 性能 尽可能保护核算法模块,包体积更