Security Analysis of Cache Replacement Policies

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10204)

Abstract

Modern computer architectures share physical resources between different programs in order to increase area-, energy-, and cost-efficiency. Unfortunately, sharing often gives rise to side channels that can be exploited for extracting or transmitting sensitive information. We currently lack techniques for systematic reasoning about this interplay between security and efficiency. In particular, there is no established way for quantifying security properties of shared caches.

In this paper, we propose a novel model that enables us to characterize important security properties of caches. Our model encompasses two aspects: (1) The amount of information that can be absorbed by a cache, and (2) the amount of information that can effectively be extracted from the cache by an adversary. We use our model to compute both quantities for common cache replacement policies (FIFO, LRU, and PLRU) and to compare their isolation properties. We further show how our model for information extraction leads to an algorithm that can be used to improve the bounds delivered by the CacheAudit static analyzer.

Notes

Acknowledgments

We thank Pierre Ganty and the anonymous reviewers for their constructive feedback.

This work was supported by Microsoft Research through its PhD Scholarship Programme, by Ramón y Cajal grant RYC-2014-16766, Spanish projects TIN2012-39391-C04-01 StrongSoft and TIN2015-70713-R DEDETIS, and Madrid regional project S2013/ICE-2731 N-GREENS, and by the German Research Council (DFG) as part of the Project PEP.

References

  1. 1.
    Abel, A., Reineke, J.: Measurement-based modeling of the cache replacement policy. In: RTAS, pp. 65–74. IEEE (2013)Google Scholar
  2. 2.
    Acıiçmez, O., Koç, Ç.K., Seifert, J.-P.: On the power of simple branch prediction analysis. In: ASIACCS, pp. 312–320. ACM (2007)Google Scholar
  3. 3.
    Acıiçmez, O., Koç, Ç.K., Seifert, J.-P.: Predicting secret keys via branch prediction. In: Abe, M. (ed.) CT-RSA 2007. LNCS, vol. 4377, pp. 225–242. Springer, Heidelberg (2006). doi:10.1007/11967668_15 CrossRefGoogle Scholar
  4. 4.
    Alvim, M.S., Chatzikokolakis, K., Palamidessi, C., Smith, G.: Measuring information leakage using generalized gain functions. In: CSF, pp. 265–279. IEEE (2012)Google Scholar
  5. 5.
    Askarov, A., Sabelfeld, A.: Gradual release: unifying declassification, encryption and key release policies. In: SSP, pp. 207–221. IEEE (2007)Google Scholar
  6. 6.
    Bernstein, D.: Cache-timing attacks on AES (2005). http://cr.yp.to/antiforgery/cachetiming-20050414.pdf
  7. 7.
    Boreale, M., Pampaloni, F.: Quantitative multirun security under active adversaries. In: QEST. IEEE (2012)Google Scholar
  8. 8.
    Cañones, P., Köpf, B., Reineke, J.: Security analysis of cache replacement policies (2017). http://arxiv.org/abs/1701.06481
  9. 9.
    Denning, P.J.: The working set model for program behavior. Commun. ACM 11(5), 323–333 (1968)MathSciNetCrossRefMATHGoogle Scholar
  10. 10.
    Doychev, G., Köpf, B., Mauborgne, L., Reineke, J.: CacheAudit: a tool for the static analysis of cache side channels. ACM Trans. Inf. Syst. Secur. (TISSEC) 18(1), 4:1–4:32 (2015)CrossRefGoogle Scholar
  11. 11.
    Gill, A.: State-identification experiments in finite automata. Inf. Control 4(2–3), 132–154 (1961)MathSciNetCrossRefMATHGoogle Scholar
  12. 12.
    Gullasch, D., Bangerter, E., Krenn, S.: Cache games - bringing access-based cache attacks on AES to practice. In: SSP, pp. 490–505. IEEE (2011)Google Scholar
  13. 13.
    Köpf, B., Basin, D.: An information-theoretic model for adaptive side-channel attacks. In: CCS, pp. 286–296. ACM (2007)Google Scholar
  14. 14.
    Lampson, B.W.: A note on the confinement problem. Commun. ACM 16(10), 613–615 (1973)CrossRefGoogle Scholar
  15. 15.
    Lee, D., Yannakakis, M.: Testing finite-state machines: state identification and verification. IEEE Trans. Comput. 43(3), 306–320 (1994)MathSciNetCrossRefGoogle Scholar
  16. 16.
    Liu, F., Yarom, Y., Ge, Q., Heiser, G., Lee, R.B.: Last-level cache side-channel attacks are practical. In: SSP, pp. 605–622. IEEE (2015)Google Scholar
  17. 17.
    Mardziel, P., Alvim, M.S., Hicks, M., Clarkson, M.R.: Quantifying information flow for dynamic secrets. In: SSP, pp. 540–555. IEEE (2014)Google Scholar
  18. 18.
    Moore, E.F.: Gedanken-experiments on sequential machines. Automata Stud. 34, 129–153 (1956)MathSciNetGoogle Scholar
  19. 19.
    Neve, M., Seifert, J.-P.: Advances on access-driven cache attacks on AES. In: Biham, E., Youssef, A.M. (eds.) SAC 2006. LNCS, vol. 4356, pp. 147–162. Springer, Heidelberg (2007). doi:10.1007/978-3-540-74462-7_11 CrossRefGoogle Scholar
  20. 20.
    Osvik, D.A., Shamir, A., Tromer, E.: Cache attacks and countermeasures: the case of AES. In: Pointcheval, D. (ed.) CT-RSA 2006. LNCS, vol. 3860, pp. 1–20. Springer, Heidelberg (2006). doi:10.1007/11605805_1 CrossRefGoogle Scholar
  21. 21.
    Smith, G.: On the foundations of quantitative information flow. In: Alfaro, L. (ed.) FoSSaCS 2009. LNCS, vol. 5504, pp. 288–302. Springer, Heidelberg (2009). doi:10.1007/978-3-642-00596-1_21 CrossRefGoogle Scholar
  22. 22.
    Tiwari, M., Oberg, J., Li, X., Valamehr, J., Levin, T.E., Hardekopf, B., Kastner, R., Chong, F.T., Sherwood, T.: Crafting a usable microkernel, processor, and I/O system with strict and provable information flow security. In: ISCA, pp. 189–200. ACM (2011)Google Scholar
  23. 23.
    Xiang, X., Ding, C., Luo, H., Bao, B.: HOTL: a higher order theory of locality. In: ASPLOS, pp. 343–356. ACM (2013)Google Scholar
  24. 24.
    Yarom, Y., Falkner, K.: FLUSH+RELOAD: A high resolution, low noise, L3 cache side-channel attack. In: USENIX, pp. 719–732. USENIX Association (2014)Google Scholar
  25. 25.
    Zhang, D., Wang, Y., Suh, G.E., Myers, A.C.: A hardware design language for timing-sensitive information-flow security. In: ASPLOS, pp. 503–516. ACM (2015)Google Scholar
  26. 26.
    Zhang, T., Lee, R.B.: New models of cache architectures characterizing information leakage from cache side channels. In: ACSAC, pp. 96–105. ACM (2014)Google Scholar

Copyright information

© Springer-Verlag GmbH Germany 2017

Authors and Affiliations

  1. 1.IMDEA Software InstituteMadridSpain
  2. 2.Saarland University, Saarland Informatics CampusSaarbrückenGermany

Personalised recommendations