Dynamic Taint Tracking Optimization on Just-in-Time Compilation
Author:
Affiliation:

Fund Project:

National Natural Science Foundation of China (61402437); National High-Tech R&D Program of China (863) (2015AA016006, 2012AA012704)

  • Article
  • | |
  • Metrics
  • |
  • Reference [34]
  • |
  • Related [20]
  • | | |
  • Comments
    Abstract:

    Despite the demonstrated usefulness of dynamic taint tracking techniques in mobile privacy security, poor performance attained by prototypes is a big problem. A novel optimization methodology for dynamic taint tracking based on just-in-time compilation is presented. First, the taint propagation logic is separated from the program logic precisely to simplifying the complexity of the taint propagation analysis. Then, a taint propagation framework is proposed and the correctness of the taint propagation analysis is proved..Finally, redundant and inefficient taint propagation codes are transferred to efficient and equivalent codes by adopting the methods of eliminating, replacing and moving. Experimental results show that 38% of memory usage and the time of execution of taint tracking instructions are saved for every single hot trace, and on average the performance of dynamic taint tracking system is improved 6.8%.

    Reference
    [1] Wan ZY, Jiang X. Dissecting Android malware:Characterization and evolution. In:Proc. of the IEEE Symp. on Security and Privacy. Oakland:IEEE, 2012. 95-109.[doi:10.1109/SP.2012.16]
    [2] Schwartz EJ, Avgerinos T, Brumley D. All you ever wanted to know about dynamic taint analysis and forward symbolic execution (but might have been afraid to ask). In:Proc. of the IEEE Symp. on Security and Privacy. Oakland:IEEE, 2010. 317-331.[doi:10. 1109/SP.2010.26]
    [3] Sun H, Li HP, Zeng QK. Statically detect and Run-time check integer-based vulnerabilities with information flow. Ruan Jian Xue Bao/Journal of Software, 2013,24(12):2767-2781(in Chinese with English abstract). http://www.jos.org.cn/1000-9825/4385.htm[doi:10.3724/SP.J.1001.2013.04385]
    [4] Chow J, Pfaff B, Garfinkel T, Christpher K, Rosenblum M. Understanding data lifetime via whole system simulation. In:Proc. of the USENIX Security Symp. Berkeley:USENIX, 2004. 321-336.
    [5] Attariyan M, Flinn J. Automating configuration troubleshooting with dynamic information flow analysis. In:Proc. of the 9th OSDI. Berkeley:USENIX, 2010. 237-250.
    [6] Nair SK, Simpson PND, Crispo B, Tanenbaum AS. A virtual machine based information flow control system for policy enforcement. Electronic Notes in Theoretical Computer Science, 2008,197(1):3-16.[doi:10.1016/j.entcs.2007.10.010]
    [7] Lam LC, Chiueh T. A general dynamic information flow tracking framework for security applications. In:Proc. of the 22nd Annual Computer Security Applications Conf. (ACSAC 2006). IEEE, 2006. 463-472.[doi:10.1109/ACSAC.2006.6]
    [8] Myers AC, Liskov B. Protecting privacy using the decentralized label model. ACM Trans. on Software Engineering and Methodology, 2000,9(4):410-442.[doi:10.1145/363516.363526]
    [9] Hedin D, Sabelfeld A. Information-Flow security for a core of javaScript. In:Proc. of the IEEE 25th Computer Security Foundations Symp. (CSF). Cambridge:IEEE, 2012. 3-18.[doi:10.1109/CSF.2012.19]
    [10] Efstathopoulos P, Krohn M, VanDeBogart S, Frey C, Ziegler D. Labels and event processes in the Asbestos operating system. In:Proc. of the SOSP. Brighton:ACM Press, 2005. 17-30.[doi:10.1145/1095810.1095813]
    [11] Krohn M, Yip A, Brodsky M, Cliffer N, Kaashoek MF, Kolher E. Information flow control for standard OS abstractions. In:Proc. of the ACM SIGOPS Operating Systems Review. New York:ACM Press, 2007. 321-334.[doi:10.1145/1294261.1294293]
    [12] Yang Z, Yin LH, Duan MY, Wu JY, Jin SY, Guo L. Generalized taint propagation model for access control in operation systems. Ruan Jian Xue Bao/Journal of Software, 2012,23(6):1602-1619(in Chinese with English abstract). http://www.jos.org.cn/1000-9825/4083.htm[doi:10.3724/SP.J.1001.2012.04083]
    [13] Portokalidis G, Homburg P, Anagnostakis K, Bos H. Paranoid Android:Versatile protection for smartphones. In:Proc. of the 26th Annual Computer Security Applications Conf. ACM Press, 2010. 347-356.[doi:10.1145/1920261.1920313]
    [14] Chen S, Kozuch M, Strigkos T, Ryan M, Gibbons PB. Flexible hardware acceleration for instruction-grain program monitoring. ACM SIGARCH Computer Architecture News, 2008,36(3):377-388.[doi:10.1145/1394608.1382153]
    [15] Ruwase O, Gibbons PB, Mowry TC, Ramachandran V, Chen S, Kozuch M. Parallelizing dynamic information flow tracking. In:Proc. of the 20th Annual Symp. on Parallelism in Algorithms and Architectures. ACM Press, 2008. 35-45.[doi:10.1145/1378533. 1378538]
    [16] Chow J, Garfinkel T, Chen PM. Decoupling dynamic program analysis from execution in virtual environments. In:Proc. of the USENIX 2008 Annual Technical Conf. Berkeley:USENIX, 2008. 1-14.
    [17] Jee K, Kemerlis VP, Keromytis AD, Portokalidis G. ShadowReplica:Efficient parallelization of dynamic data flow tracking. In:Proc. of the 2013 ACM SIGSAC Conf. on Computer & Communications Security. ACM Press, 2013. 235-246.[doi:10.1145/2508859.2516704]
    [18] Jee K, Portokalidis G, Kemerlis VP, Ghosh S, August DI. A general approach for efficiently accelerating software-based dynamic data flow tracking on commodity hardware. In:Proc. of the 19th NDSS. San Diego:Internet Society, 2012. 324-335.
    [19] Chang W, Streiff B, Lin C. Efficient and extensible security enforcement using dynamic data flow analysis. In:Proc. of the 15th ACM Conf. on Computer and Communications Security. Alexandria:ACM Press, 2008. 39-50.[doi:10.1145/1455770.1455778]
    [20] Ho A, Fetterman M, Clark C, Warfield A, Hand S. Practical taint-based protection using demand emulation. ACM SIGOPS Operating Systems Review, 2006,40(4):29-41.[doi:10.1145/1218063.1217939]
    [21] Portokalidis G, Bos H. Eudaemon:Involuntary and on-demand emulation against zero-day exploits. In:Proc. of the 2008 EuroSys. ACM Press, 2008. 287-299.[doi:10.1145/1352592.1352622]
    [22] Saxena P, Sekar R, Puranik V. Efficient fine-grained binary instrumentation with applications to taint-tracking. In:Proc. of the 6th CGO. ACM Press, 2008. 74-83.
    [23] Kim HC, Keromytis AD. On the deployment of dynamic taint analysis for application communities. IEICE Trans. on Information & Systems, 2009,92(3):548-551.
    [24] Qin F, Wang C, Li Z, Kim H, Zhou Y. Lift:A low-overhead practical information flow tracking system for detecting security attacks. In:Proc. of the 39th Annual IEEE/ACM Int'l Symp. on Microarchitecture. IEEE, 2006. 135-148.[doi:10.1109/MICRO. 2006.29]
    [25] Kemerlis VP, Portokalidis G, Jee K, Keromytis AD. libdft:Practical dynamic data flow tracking for commodity systems. ACM SIGPLAN Notices, 2012,47(7):121-132.[doi:10.1145/2365864.2151042]
    [26] Enck W, Gilbert P, Han S, Tendulkar, Chun BG. TaintDroid:An information-flow tracking system for realtime privacy montoring on smartphones. In:Proc. of the OSDI. Berkeley:USENIX, 2010. 255-270.[doi:10.1145/2494522]
    [27] Huang Y, Chen Y, Yang W, Shann JJ. File-Based sharing for dynamically compiled code on Dalvik virtual machine. In:Proc. of the Int'l Computer Symp. IEEE, 2010. 489-494.[doi:10.1109/COMPSYM.2010.5685462]
    [28] Ling M, Wu JP, Feng KH. An adaptive compilation system based on the dalvik virtual machine. Acta Electronica Sinica, 2013, 41(8):1622-1627(in Chinese with English abstract).[doi:10.3969/j.issn.0372-2112.2013.08.027]
    [29] Aho AV, Sethi R, Ullman JD. Compilers, Principles, Techniques. 2nd ed., Addison Wesley Publishing Company, 1986. 688-703.
    [30] Fritz C, Arzt S, Rasthofer S, Bodden E, Bartel A. Highly precise taint analysis for android application. Technical Report, TUD-CS-2013-0113, 2013. http://www.bodden.de/pubs/TUD-CS-2013-0113.pdf
    附中文参考文献:
    [3] 孙浩,李会朋,曾庆凯.基于信息流的整数漏洞插装和验证.软件学报,2013,24(12):2767-2781. http://www.jos.org.cn/1000-9825/4385.htm[doi:10.3724/SP.J.1001.2013.04385]
    [12] 杨智,殷丽华,段洣毅,吴金宇,金舒原,郭莉.基于广义污点传播模型的操作系统访问控制.软件学报,2012,23(6):1602-1619. http://www.jos.org.cn/1000-9825/4083.htm[doi:10.3724/SP.J.1001.2012.04083]
    [28] 凌明,武建平,冯克环.一种Dalvik虚拟机的自适应编译系统.电子学报,2013,41(8):1622-1627.[doi:10.3969/j.issn.0372-2112. 2013.08.027]
    Cited by
    Comments
    Comments
    分享到微博
    Submit
Get Citation

吴泽智,陈性元,杨智,杜学绘.基于即时编译的动态污点跟踪优化.软件学报,2017,28(8):2064-2079

Copy
Share
Article Metrics
  • Abstract:3058
  • PDF: 4979
  • HTML: 1953
  • Cited by: 0
History
  • Received:May 07,2015
  • Revised:December 22,2015
  • Online: August 15,2017
You are the first2043742Visitors
Copyright: Institute of Software, Chinese Academy of Sciences Beijing ICP No. 05046678-4
Address:4# South Fourth Street, Zhong Guan Cun, Beijing 100190,Postal Code:100190
Phone:010-62562563 Fax:010-62562533 Email:jos@iscas.ac.cn
Technical Support:Beijing Qinyun Technology Development Co., Ltd.

Beijing Public Network Security No. 11040202500063