基于浏览器嵌入规则的非安全JavaScript检测与分析

基于浏览器嵌入规则的非安全JavaScript检测与分析

论文摘要

作为一个客户端的应用程序,浏览器是用户和因特网之间进行交互的一个重要平台。现在存在许多与浏览器密切相关的恶意攻击,对用户浏览器安全造成了严重的威胁。此外Web2.0因功能丰富、响应快速以及交互性强而倍受开发人员与用户的青睐,Web2.0应用程序的特点是允许接受不受信任的来源并将大量计算工作放置客户端执行。随着这个趋势,攻击者也渐渐地将攻击目标从服务器端转向了客户端,而目前的Web安全技术发展远远落后于应用技术的发展,使得Web应用程序频繁遭到攻击,而JavaScript语言也同时被许多恶意团体用来开发基于浏览器的攻击。本文提出了一种根据安全检测规则控制JavaScript执行行为来确保浏览器安全的方法。目的是为了阻止或者修改因恶意脚本注入而导致的非合法行为,利用GreaseMonkey,保护机制(安全检测规则)将自动化的插入到代码中,在事件执行前拦截所有与安全相关的事件的执行。我们不需要对JavaScript代码进行静态分析,仅仅需要将JavaScript代码的执行情况与高层定义的安全检测规则进行比较就可以检测出代码的恶意行为。当用户访问Web站点时,该系统将安全检测规则自动化地插入到该Web站点中,分析网站潜在的安全威胁,并同时将审计的日志信息保存在客户端的本地文件中。安全检测规则的实现采用了面向方面编程技术原理。而创建安全检测规则的挑战主要来自于JavaScript语言本身的特性:在程序范围内任何变量都可以重新定义,并且可以动态创建和运行代码。这就带来了潜在的问题,尤其是保护机制的防篡改以及确保任何与安全有关的事件都不会绕过保护机制。不同于以前的那些方法,我们所提出的是一种轻量级的方法,第一,它不需要修改浏览器代码;其次,它不需要在运行期间解析并转换代码,包含所有动态生成的代码在内。此外,本文最后在实际环境下用多个Web应用程序对该方法进行了评估测试,实验表明该系统不要修改浏览器代码,并且能够有效地防御多种常见的恶意攻击类型。与其它系统进行比较,本系统的运行时间负载较低。

论文目录

  • 摘要
  • Abstract
  • 目录
  • 插图索引
  • 附表索引
  • 第1章 绪论
  • 1.1 课题背景与意义
  • 1.2 国内外研究现状
  • 1.2.1 客户端检测方法
  • 1.2.2 服务器端检测方法
  • 1.2.3 浏览器与服务器协助检测方法
  • 1.2.4 传统防御技术的局限性
  • 1.3 本文的研究内容
  • 1.4 本文的结构组织
  • 第2章 系统设计的相关技术
  • 2.1 引言
  • 2.2 JavaScript
  • 2.2.1 JavaScript运行环境
  • 2.2.2 JavaScript解析机制
  • 2.2.3 JavaScript安全特性
  • 2.2.4 JavaScript函数执行劫持技术
  • 2.3 浏览器
  • 2.3.1 浏览器工作过程
  • 2.3.2 浏览器安全威胁
  • 2.3.3 浏览器保护机制
  • 2.4 面向方面编程
  • 2.4.1 AOP技术概述
  • 2.4.2 Crosscutting技术
  • 2.5 小结
  • 第3章 基于浏览器嵌入规则的非安全JavaScript检测与分析
  • 3.1 引言
  • 3.2 系统设计目标
  • 3.2.1 系统设计思路
  • 3.2.2 系统体系结构
  • 3.2.3 检测原理推导
  • 3.3 安全检测规则构建
  • 3.3.1 拦截原理
  • 3.3.2 封装函数
  • 3.3.3 安全状态
  • 3.3.4 监控对象属性访问事件
  • 3.4 安全检测规则插入模块
  • 3.4.1 安全检测规则原型
  • 3.4.2 插入安全检测规则
  • 3.5 日志模块
  • 3.6 小结
  • 第4章 实验分析
  • 4.1 引言
  • 4.2 实验环境
  • 4.2.1 硬件环境
  • 4.2.2 软件环境
  • 4.2.3 实验环境搭建
  • 4.3 实验及分析
  • 4.3.1 安装用户脚本
  • 4.3.2 拦截过程分析
  • 4.3.3 实验结果
  • 4.3.4 性能分析
  • 4.4 小结
  • 总结与展望
  • 参考文献
  • 附录A 攻读硕士学位期间所发表的学术论文目录
  • 附录B 攻读硕士学位期间所参与的项目
  • 致谢
  • 相关论文文献

    标签:;  ;  ;  

    基于浏览器嵌入规则的非安全JavaScript检测与分析
    下载Doc文档

    猜你喜欢