Please wait a minute...
 首页  期刊介绍 期刊订阅 联系我们 横山亮次奖 百年刊庆
 
最新录用  |  预出版  |  当期目录  |  过刊浏览  |  阅读排行  |  下载排行  |  引用排行  |  横山亮次奖  |  百年刊庆
清华大学学报(自然科学版)  2016, Vol. 56 Issue (9): 956-962,968    DOI: 10.16511/j.cnki.qhdxxb.2016.21.063
  计算机科学与技术 本期目录 | 过刊浏览 | 高级检索 |
基于代码改写的JavaScript动态污点跟踪
王伟平, 柏军洋, 张玉婵, 王建新
中南大学 信息科学与工程学院, 湖南 长沙 410083
Dynamic taint tracking in JavaScript using revised code
WANG Weiping, BAI Junyang, ZHANG Yuchan, WANG Jianxin
School of Information Science and Engineering, Central South University, Changsha 410083, China
全文: PDF(1470 KB)  
输出: BibTeX | EndNote (RIS)      
摘要 随着Web技术的飞速发展,JavaScript的使用越来越常见,尤其是在追求快速及时响应的Web应用中,这也导致了众多安全问题的产生。该文提出了一种基于代码改写的JavaScript动态污点跟踪方法JSTA,通过JavaScript代码的改写,让改写后的代码在执行过程中对敏感数据进行污点标记和跟踪,可及时发现敏感数据泄露行为并给出告警。与以往的研究不同的是,JSTA是独立于JavaScript引擎实现的,可以适用于多种浏览器。测试结果表明,JSTA可有效地跟踪敏感数据并检测敏感数据泄露行为。
服务
把本文推荐给朋友
加入引用管理器
E-mail Alert
RSS
作者相关文章
王伟平
柏军洋
张玉婵
王建新
关键词 敏感数据动态污点跟踪JavaScript    
Abstract:The rapid development of the web has led to increasing use of JavaScript, especially in websites requiring rapid responses between the web server and the client, which has led to many security problems. This paper presents a dynamic taint tracking method based on a revised JavaScript code. The revised code can mark and track sensitive data transmission paths during JavaScript execution and warn the user of possible leakage of the marked sensitive data. This implementation is independent of the JavaScript engine and can be used in a variety of browsers. Tests show that this method can effectively track sensitive data and detect abnormal behavior.
Key wordssensitive data    dynamic taint tracking    JavaScript
收稿日期: 2016-01-16      出版日期: 2016-09-15
ZTFLH:  TP393.08  
引用本文:   
王伟平, 柏军洋, 张玉婵, 王建新. 基于代码改写的JavaScript动态污点跟踪[J]. 清华大学学报(自然科学版), 2016, 56(9): 956-962,968.
WANG Weiping, BAI Junyang, ZHANG Yuchan, WANG Jianxin. Dynamic taint tracking in JavaScript using revised code. Journal of Tsinghua University(Science and Technology), 2016, 56(9): 956-962,968.
链接本文:  
http://jst.tsinghuajournals.com/CN/10.16511/j.cnki.qhdxxb.2016.21.063  或          http://jst.tsinghuajournals.com/CN/Y2016/V56/I9/956
  图1 JSTA 的应用场景
  表1 敏感数据
  图2 污点数据对象
  图3 初始污点标记例子
  表2 污点传播规则(基本运算)
  表3 污点传播规则(控制语句)
  表4 代码改写基本规则
  图4 改写后的a.b.c(x,y)
  图5 对象访问的封装函数
  图6 对象访问链的封装函数
  图7 控制循环语句的判断条件表达式的封装函数
  图8 控制循环语句示例
  图9 控制循环语句示例改写后的代码
  图10 取消污点作用域标志
  图11 对DOM 结点进行赋值的方式举例
  图12 assignment()关于污点数据存储于DOM 结点的检测实现
  表5 实验结果
[1] OWASP. Cross-site scripting (XSS).(2014-04-22).[2015-04-07]. https://www.owasp.org/index.php/XSS.
[2] Meyerovich L A, Livshits B. Conscript: Specifying and enforcing fine-grained security policies for JavaScript in the browser [C]//Proceedings of the 31st IEEE Symposium on Security and Privacy (SP). Piscataway, NJ, USA: IEEE Press, 2010: 481-496.
[3] Weinberger J, Barth A, Song D. Towards client-side HTML security policies [C]//Proceedings of the 6th USENIX Conference on Hot Topics in Security. Berkeley, CA, USA: USENIX Association, 2011.
[4] Saxena P, Molnar D, Livshits B. SCRIPTGARD: Automatic context-sensitive sanitization for large-scale legacy web applications [C]//Proceedings of the 18th ACM Conference on Computer and Communications Security. New York, NY, USA: ACM, 2011: 601-614.
[5] Vogt P, Nentwich F, Jovanovic N, et al. Cross site scripting prevention with dynamic data tainting and static analysis [C]//Proceedings of the 14th Annual Network and Distributed System Security Symposium. San Diego, CA, USA: Internet Society, 2007.
[6] Minded Security. DOMinatorPro: Securing next generation of Web applications. (2012-09-30).[2015-04-07]. https://dominator.mindedsecurity.com.
[7] Lekies S, Stock B, Johns M. 25 million flows later: Large-scale detection of DOM-based XSS [C]//Proceedings of the 20th ACM Conference on Computer and Communications Security. New York, NY, USA: ACM, 2013: 1193-1204.
[8] Saxena P, Hanna S, Poosankam P, et al. FLAX: Systematic discovery of client-side validation vulnerabilities in rich Web applications [C]//Proceedings of the 17th Annual Network and Distributed System Security Symposium. San Diego, CA, USA: Internet Society, 2010.
[9] Phung P H, Sands D, Chudnov A. Lightweight self- protecting JavaScript [C]//Proceedings of the 4th International Symposium on Information, Computer, and Communications Security. New York, NY, USA: ACM, 2009: 47-60.
[10] International Secure Systems Lab. NoMoXSS. (2006-3-29).[2015-04-07]. http://seclab.tuwien.ac.at/projects/jstaint/files/testing.zi
[1] 梁彬, 龚伟刚, 游伟, 李赞, 石文昌. JavaScript优化编译执行模式下的动态污点分析技术[J]. 清华大学学报(自然科学版), 2017, 57(9): 932-938.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
版权所有 © 《清华大学学报(自然科学版)》编辑部
本系统由北京玛格泰克科技发展有限公司设计开发 技术支持:support@magtech.com.cn