Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

LEAP: TrustZone Based Developer-Friendly TEE for Intelligent Mobile Apps

Published: 19 September 2022 Publication History

Abstract

ARM TrustZone is widely deployed on commercial-off-the-shelf mobile devices for secure execution. However, many Apps cannot enjoy this feature because it brings many constraints to App developers. Previous works have been proposed to build a secure execution environment for developers on top of TrustZone. Unfortunately, these works are still not fully-fledged solutions for mobile Apps, especially for emerging intelligent Apps. To this end, we propose LEAP, which is a lightweight developer-friendly TEE solution for mobile Apps. LEAP enables isolated codes to execute in parallel and access peripheral (e.g., mobile GPUs) with ease, flexibly manages system resources upon different workloads, and offers the auto DevOps tool to help developers prepare the codes running on it. We implement the LEAP prototype on the off-the-shelf ARM platform and conduct extensive experiments on it. The experimental results show that Apps can be adapted to run with LEAP easily and efficiently. Compared to the state-of-the-art work along this research line, LEAP can achieve an average 3.57× speedup in supporting intelligent Apps using mobile GPU acceleration.

References

[1]
T. Alves and D. Felton, “TrustZone: Integrated hardware and software security,” 2004. Accessed: Jun. 5, 2021. [Online]. Available: http://docplayer.net/51242536-Trustzone-integrated-hardware-and-software-security-enabling-trusted-computing-in-embedded-systems.html
[2]
D. Cerdeira, N. Santos, P. Fonseca, and S. Pinto, “SoK: Understanding the prevailing security vulnerabilities in trustzone-assisted tee systems,” in Proc. IEEE Symp. Secur. Privacy, 2020, pp. 1416–1432.
[3]
F. Mo et al., “DarkneTZ: Towards model privacy at the edge using trusted execution environments,” in Proc. 18th Int. Conf. Mobile Syst. Appl. Serv., 2020, pp. 161–174.
[4]
Linaro, “Open portable trusted execution environment,” 2015. Accessed: Jun. 5, 2021, [Online]. Available: https://www.op-tee.org/
[5]
H. Sun, K. Sun, Y. Wang, J. Jing, and H. Wang, “TrustICE: Hardware-assisted isolated computing environments on mobile devices,” in Proc. 45th Annu. IEEE/IFIP Int. Conf. Depend. Syst. Netw., 2015, pp. 367–378.
[6]
J. Jang et al., “PrivateZone: Providing a private execution environment using ARM TrustZone,” IEEE Trans. Depend. Secure Comput., vol. 15, no. 5, pp. 797–810, Sep.–Oct. 2018.
[7]
Y. Cho, J. Shin, D. Kwon, M. Ham, Y. Kim, and Y. Paek, “Hardware-assisted on-demand hypervisor activation for efficient security critical code execution on mobile devices,” in Proc. USENIX Annu. Tech. Conf., 2016, pp. 565–578.
[8]
F. Brasser, D. Gens, P. Jauernig, A.-R. Sadeghi, and E. Stapf, “SANCTUARY: ARMing TrustZone with user-space enclaves,” in Proc. Netw. Distrib. Syst. Secur. Symp., 2019, pp. 1–15.
[9]
M. Xu, J. Liu, Y. Liu, F. X. Lin, Y. Liu, and X. Liu, “A first look at deep learning apps on smartphones,” in Proc. 28th Int. Conf. World Wide Web, 2019, pp. 2125–2136.
[10]
Z. Sun, R. Sun, L. Lu, and A. Mislove, “Mind your weight (s): A large-scale study on insufficient machine learning model protection in mobile apps,” in Proc. 30th USENIX Secur. Symp., 2021, pp. 1955–1972.
[11]
R. Shokri, M. Stronati, C. Song, and V. Shmatikov, “Membership inference attacks against machine learning models,” in Proc. IEEE Symp. Secur. Privacy, 2017, pp. 3–18.
[12]
S. P. Bayerl et al., “Offline model guard: Secure and private ML on mobile devices,” in Proc. Des., Automat. Test Europe Conf. Exhib., 2020, pp. 460–465.
[13]
ARM, “Arm security technology building a secure system using trustzone technology,” 2015. Accessed: Jun. 5, 2021. [Online]. Available: https://developer.arm.com/documentation/genc009492/c
[14]
ARM CoreLink TZC-400 TrustZone address space controller, 2013. [Online]. Available: https://developer.arm.com/documentation/ddi0504/c/
[15]
PrimeCell infrastructure AMBA 3 TrustZone protection controller (BP147), 2004. [Online]. Available: https://developer.arm.com/documentation/dto0015/a/
[16]
ARM system memory management unit architecture specification, 2016. [Online]. Available: https://developer.arm.com/documentation/ihi0062/dc/
[17]
Z. Hua, J. Gu, Y. Xia, H. Chen, B. Zang, and H. Guan, “vTZ: Virtualizing ARM TrustZone,” in Proc. 26th USENIX Secur. Symp., 2017, pp. 541–556.
[18]
J. A. Halderman et al., “Lest we remember: Cold-boot attacks on encryption keys,” Commun. ACM, vol. 52, no. 5, pp. 91–98, 2009.
[19]
A. Huang, “Keeping secrets in hardware: The microsoft xbox TM case study,” in Proc. Int. Workshop Cryptogr. Hardware Embedded Syst., 2002, pp. 213–227.
[20]
M. G. Kuhn, “Cipher instruction search attack on the bus-encryption security microcontroller DS5002FP,” IEEE Trans. Comput., vol. 47, no. 10, pp. 1153–1157, Oct. 1998.
[21]
D. Gruss, C. Maurice, K. Wagner, and S. Mangard, “Flush flush: A fast and stealthy cache attack,” in Proc. 13th Int. Conf. Detection Intrusions Malware, Vulnerability Assessment, 2016, pp. 279–299.
[22]
Y. Yarom and K. Falkner, “Flush reload: A high resolution, low noise, l3 cache side-channel attack,” in Proc. 23rd USENIX Secur. Symp., 2014, pp. 719–732.
[23]
D. A. Osvik, A. Shamir, and E. Tromer, “Cache attacks and countermeasures: The case of AES,” in Proc. Cryptogr.’ track RSA Conf., 2006, pp. 1–20.
[24]
D. Gruss, R. Spreitzer, and S. Mangard, “Cache template attacks: Automating attacks on inclusive last-level caches,” in Proc. 24th USENIX Secur. Symp., 2015, pp. 897–912.
[25]
S. Zhao, Q. Zhang, Y. Qin, W. Feng, and D. Feng, “SecTEE: A software-based approach to secure enclave architecture using TEE,” in Proc. ACM SIGSAC Conf. Comput. Commun. Secur., 2019, pp. 1723–1740.
[26]
R. Vallée-Rai, E. Gagnon, L. Hendren, P. Lam, P. Pominville, and V. Sundaresan, “Optimizing java bytecode using the soot framework: Is it feasible?,” in Proc. 9th Int. Conf. Compiler Construction, 2000, pp. 18–34.
[27]
E. Keller, J. Szefer, J. Rexford, and R. B. Lee, “NoHype: Virtualized cloud infrastructure without the virtualization,” in Proc. 37th Annu. Int. Symp. Comput. Archit., 2010, pp. 350–361.
[28]
S. Bhat, “Interaction of suspend code (S3) with the cpu hotplug infrastructure,” 2011. Accessed: Jun. 5, 2021. [Online]. Available: https://www.kernel.org/doc/Documentation/power/suspend-and-cpuhotplug.txt
[29]
ARM Cortex-A Series–Programmer's Guide for ARMv8-A, 2015. [Online]. Available: https://static.docs.arm.com/den0024/a/DEN0024A_v8_architecture_PG.pdf
[30]
W. Song, H. Yin, C. Liu, and D. Song, “DeepMem: Learning graph neural network models for fast and robust memory forensic analysis,” in Proc. ACM SIGSAC Conf. Comput. Commun. Secur., 2018, pp. 606–618.
[31]
M. ”mina86” Nazarewicz, “A deep dive into cma,” 2012. Accessed: Jun. 5, 2021. [Online]. Available: https://lwn.net/Articles/486301/
[32]
T. kernel development community, “Memory hotplug,” 2018. Accessed: Jun. 5, 2021. [Online]. Available: https://www.kernel.org/doc/html/latest/admin-guide/mm/memory-hotplug.html
[33]
L. W. McVoy and C. Staelin, “lmbench: Portable tools for performance analysis,” in Proc. USENIX Annu. Tech. Conf., 1996, pp. 279–294.
[34]
M. Sandler, A. Howard, M. Zhu, A. Zhmoginov, and L.-C. Chen, “MobileNetV2: Inverted residuals and linear bottlenecks,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit., 2018, pp. 4510–4520.
[35]
C. Szegedy et al., “Going deeper with convolutions,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit., 2015, pp. 1–9.
[36]
A. Krizhevsky, I. Sutskever, and G. E. Hinton, “ImageNet classification with deep convolutional neural networks,” in Proc. Adv. Neural Inf. Process. Syst., 2012, pp. 1097–1105.
[37]
K. He, X. Zhang, S. Ren, and J. Sun, “Deep residual learning for image recognition,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit., 2016, pp. 770–778.
[38]
C. Szegedy, S. Ioffe, V. Vanhoucke, and A. Alemi, “Inception-v4, inception-ResNet and the impact of residual connections on learning,” in Proc. AAAI Conf. Artif. Intell., 2017, pp. 4278–4284.
[39]
X. Jiang et al., “Mnn: A universal and efficient inference engine,” in Proc. 3rd Conf. Mach. Learn. Syst., 2020, pp. 1–13.
[40]
P. Whelan, “Model zoo,” 2020. Accessed: Jun. 5, 2021. [Online]. Available: https://github.com/BVLC/caffe/wiki/Model-Zoo
[41]
L. B. N. Laboratory, “iPerf3: A TCP, UDP, and SCTP network bandwidth measurement tool,” 2014. Accessed: Jun. 5, 2021. [Online]. Available: https://github.com/esnet/iperf
[42]
C. Göttel, P. Felber, and V. Schiavoni, “iperfTZ: Understanding network bottlenecks for TrustZone-based trusted applications,” in Proc. Int. Symp. Stabilizing, Saf. Secur. Distrib. Syst., 2019, pp. 178–193.
[43]
Tencent, “NCNN,” 2017. Accessed: Jun. 5, 2021. [Online]. Available: https://github.com/Tencent/ncnn
[44]
J. Redmon, “Darknet: Open source neural networks in C,” 2013. Accessed: Jun. 5, 2021. [Online]. Available: http://pjreddie.com/darknet/
[45]
F. N. Iandola, S. Han, M. W. Moskewicz, K. Ashraf, W. J. Dally, and K. Keutzer, “SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and < 0.5 mb model size,” 2016,.
[46]
G. Huang, Z. Liu, L. Van Der Maaten, and K. Q. Weinberger, “Densely connected convolutional networks,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit., 2017, pp. 4700–4708.
[47]
Y. Huang et al., “KSplit: Automating device driver isolation,” in Proc. 16th USENIX Symp. Oper. Syst. Des. Implementation, 2022, pp. 613–631.
[48]
ARM, “Trustzone address space controller,” 2014. Accessed: Jun. 5, 2021. [Online]. Available: https://www.arm.com/products/silicon-ip-security/address-space-controllers
[49]
K. Rubinov, L. Rosculete, T. Mitra, and A. Roychoudhury, “Automated partitioning of android applications for trusted execution environments,” in Proc. IEEE/ACM 38th Int. Conf. Softw. Eng., 2016, pp. 923–934.
[50]
L. Guan et al., “TrustShadow: Secure execution of unmodified applications with ARM TrustZone,” in Proc. 15th Annu. Int. Conf. Mobile Syst. Appl. Serv., 2017, pp. 488–501.
[51]
W. Li, Y. Xia, L. Lu, H. Chen, and B. Zang, “TEEv: Virtualizing trusted execution environments on mobile platforms,” in Proc. 15th ACM SIGPLAN/SIGOPS Int. Conf. Virtual Execution Environ., 2019, pp. 2–16.
[52]
D. Kwon, J. Seo, Y. Cho, B. Lee, and Y. Paek, “PrOS: Light-weight privatized se cure OSes in ARM TrustZone,” IEEE Trans. Mobile Comput., vol. 19, no. 6, pp. 1434–1447, Jun. 2020.

Index Terms

  1. LEAP: TrustZone Based Developer-Friendly TEE for Intelligent Mobile Apps
        Index terms have been assigned to the content through auto-classification.

        Recommendations

        Comments

        Please enable JavaScript to view thecomments powered by Disqus.

        Information & Contributors

        Information

        Published In

        cover image IEEE Transactions on Mobile Computing
        IEEE Transactions on Mobile Computing  Volume 22, Issue 12
        Dec. 2023
        649 pages

        Publisher

        IEEE Educational Activities Department

        United States

        Publication History

        Published: 19 September 2022

        Qualifiers

        • Research-article

        Contributors

        Other Metrics

        Bibliometrics & Citations

        Bibliometrics

        Article Metrics

        • 0
          Total Citations
        • 0
          Total Downloads
        • Downloads (Last 12 months)0
        • Downloads (Last 6 weeks)0
        Reflects downloads up to 14 Nov 2024

        Other Metrics

        Citations

        View Options

        View options

        Get Access

        Login options

        Media

        Figures

        Other

        Tables

        Share

        Share

        Share this Publication link

        Share on social media