[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/3140549.3140551acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article
Public Access

Mixr: Flexible Runtime Rerandomization for Binaries

Published: 30 October 2017 Publication History

Abstract

Mixr is a novel moving target defense (MTD) system that improves on the traditional address space layout randomization (ASLR) security technique by giving security architects the tools to add "runtime ASLR" to existing software programs and libraries without access to their source code or debugging information and without requiring changes to the host's linker, loader or kernel. Runtime ASLR systems rerandomize the code of a program/library throughout execution at rerandomization points and with a particular granularity. The security professional deploying the Mixr system on a program/library has the flexibility to specify the frequency of runtime rerandomization and the granularity. For example, she/he can specify that the program rerandomizes itself on 60-byte boundaries every time the write() system call is invoked. The Mixr MTD of runtime ASLR protects binary programs and software libraries that are vulnerable to information leaks and attacks based on that information.
Mixr is an improvement on the state of the art in runtime ASLR systems. Mixr gives the security architect the flexibility to specify the rerandomization points and granularity and does not require access to the target program/library's source code, debugging information or other metadata. Nor does Mixr require changes to the host's linker, loader or kernel to execute the protected software. No existing runtime ASLR system offers those capabilities. The tradeoff is that applying the Mixr MTD of runtime ASLR protection requires successful disassembly of a program - something which is not always possible. Moreoever, the runtime overhead of a Mixr-protected program is non-trivial.
Mixr, besides being a tool for implementing the MTD of runtime ASLR, has the potential to further improve software security in other ways. For example, Mixr could be deployed to implement noise injection into software to thwart side-channel attacks using differential power analysis.

References

[1]
David Bigelow, Thomas Hobson, Robert Rudd, William Streilein, and Hamed Okhravi. 2015. Timely Rerandomization for Mitigating Memory Disclosures. In Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security (CCS '15). ACM Press, New York, New York, USA, 268--279.
[2]
Andrea Bittau, Adam Belay, Ali Mashtizadeh, David Mazieres, and Dan Boneh. 2014. Hacking Blind. In Proceedings of the 2014 IEEE Symposium on Security and Privacy (SP '14). IEEE Computer Society, Washington, DC, USA, 227--242.
[3]
Dionysus Blazakis. 2010. Interpreter Exploitation. In Proceedings of the 4th USENIX Conference on Offensive Technologies (WOOT'10). USENIX Association, Berkeley, CA, USA, 1--9.
[4]
Xi Chen, Herbert Bos, and Cristiano Giuffrida. 2017. CodeArmor: Virtualizing the Code Space to Counter Disclosure Attacks. In 2017 IEEE European Symposium on Security and Privacy (Euro S&P). IEEE, Paris, France, 514--529.
[5]
Yue Chen, Zhi Wang, David Whalley, and Long Lu. 2016. Remix: On-demand Live Randomization. In Proceedings of the Sixth ACM Conference on Data and Application Security and Privacy (CODASPY '16). ACM, New York, NY, USA, 50--61.
[6]
Mauro Conti, Stephen Crane, Tommaso Frassetto, Andrei Homescu, Georg Koppen, Per Larsen, Christopher Liebchen, Mike Perry, and Ahmad-Reza Sadeghi. 2016. Selfrando: Securing the Tor Browser against De-anonymization Exploits. Proceedings on Privacy Enhancing Technologies 2016, 4 (2016), 454--469.
[7]
Stephen Crane, Andrei Homescu, Stefan Brunthaler, Per Larsen, and Michael Fraz. 2015. Thwarting Cache Side-Channel Attacks Through Dynamic Software Diversity. In 2015 Network and Distributed System Security. Internet Society, San Diego, CA. https://www.sba-research.org/wp-content/uploads/publications/ndss15b.pdf
[8]
Stephen Crane, Christopher Liebchen, Andrei Homescu, Lucas Davi, Per Larsen, Ahmad-Reza Sadeghi, Stefan Brunthaler, and Michael Franz. 2015. Readactor: Practical Code Randomization Resilient to Memory Disclosure. In 2015 IEEE Symposium on Security and Privacy. IEEE, 763--780. https://doi.org/10.1109/SP.2015.52
[9]
Charlie Curtsinger and Emery D. Berger. 2013. STABILIZER: Statistically Sound Performance Evaluation. In Proceedings of the Eighteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '13). ACM Press, New York, New York, USA, 219--228.
[10]
Lucas Davi, Christopher Liebchen, Ahmad-Reza Sadeghi, Kevin Z. Snow, and Fabian Monrose. 2015. Isomeron: Code Randomization Resilient to (Just-In-Time) Return-Oriented Programming. In The 2015 Network and Distributed System Securit. Internet Society, San Diego, CA. https://www.internetsociety.org/sites/default/files/05
[11]
Lucas Vincenzo Davi, Alexandra Dmitrienko, Stefan Nürnberger, and Ahmad-Reza Sadeghi. 2013. Gadge me if you can. In Proceedings of the 8th ACM SIGSAC symposium on Information, computer and communications security - ASIA CCS '13. ACM Press, New York, New York, USA, 299. https://doi.org/10.1145/2484313.2484351
[12]
Scott Friedman, David Musliner, and Peter Keller. 2015. Chronomorphic Programs: Runtime Diversity Prevents Exploits and Reconnaissance. International Journal on Advances in Security 8, 3-4 (2015), 120--192.
[13]
Cristiano Giuffrida, Anton Kuijsten, and Andrew S. Tanenbaum. 2012. Enhanced operating system security through efficient and fine-grained address space randomization. (2012), 475--490 pages.
[14]
Aditi Gupta, Javid Habibi, Michael S. Kirkpatrick, and Elisa Bertino. 2015. Marlin: Mitigating Code Reuse Attacks Using Code Randomization. IEEE Transactions on Dependable and Secure Computing 12, 3 (May 2015), 326--337.
[15]
William H. Hawkins, Michele Co, Jason D. Hiser, Anh Nguyen-Tuong, and Jack W. Davidson. 2017. Zipr: Efficient Static Binary Rewriting for Security. In Proceedings of the 47th IEEE/IFIP International Conference on Dependable Systems and Networks (DSN 2017). IEEE, Denver, CO.
[16]
Thomas Hobson, Hamed Okhravi, David Bigelow, Robert Rudd, and William Streilein. 2014. On the Challenges of Effective Movement. In Proceedings of the First ACM Workshop on Moving Target Defense - MTD '14. ACM Press, New York, New York, USA, 41--50. https://doi.org/10.1145/2663474.2663480
[17]
Sushil Jajodia, Anup K. Ghosh, Vipin Swarup, Cliff Wang, and X. Sean Wang (Eds.). 2011. Moving Target Defense: Creating Asymmetric Uncertainty for Cyber Threats. Advances in Information Security, Vol. 54. Springer New York, New York, NY.
[18]
Gaurav S. Kc, Angelos D. Keromytis, and Vassilis Prevelakis. 2003. Countering code-injection attacks with instruction-set randomization. In Proceedings of the 10th ACM conference on Computer and communication security - CCS '03. ACM Press, New York, New York, USA, 272. https://doi.org/10.1145/948109.948146
[19]
Chongkyung Kil, Jinsuk Jun, Christopher Bookholt, Jun Xu, and Peng Ning. 2006. Address Space Layout Permutation (ASLP): Towards Fine-Grained Randomization of Commodity Software. In 2006 22nd Annual Computer Security Applications Conference (ACSAC'06). IEEE, 339--348. https://doi.org/10.1109/ACSAC.2006.9
[20]
Paul Kocher, Joshua Jaffe, and Benjamin Jun. 1999. Differential Power Analysis. In Advances in Cryptology - CRYPTO '99 (1 ed.), Michael Wiener (Ed.). SpringerVerlag Berlin Heidelberg, 388--397.
[21]
Byoungyoung Lee, Long Lu, Tielei Wang, Taesoo Kim, and Wenke Lee. 2014. From Zygote to Morula: Fortifying Weakened ASLR on Android. In 2014 IEEE Symposium on Security and Privacy. IEEE, 424--439. https://doi.org/10.1109/SP.2014.34
[22]
Peng Liu and Cliff Wang. 2016. MTD 2016: Third ACM Workshop on Moving Target Defense. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security (CCS '16). ACM, New York, NY, USA, 1868--1869. https://doi.org/10.1145/2976749.2990483
[23]
Kangjie Lu, Stefan Nürnberger, Michael Backes, and Wenke Lee. 2016. How to Make ASLR Win the Clone Wars: Runtime Re-Randomization. In Proceedings of the 23rd Annual Network and Distributed System Security Symposium (NDSS 2016). The Internet Society, San Diego, CA.
[24]
Vasilis Pappas, Michalis Polychronakis, and Angelos D. Keromytis. 2012. Smashing the Gadgets: Hindering Return-Oriented Programming Using In-place Code Randomization. In 2012 IEEE Symposium on Security and Privacy. IEEE, 601--615. https://doi.org/10.1109/SP.2012.41
[25]
Pax Team. 2003. PaX ASLR Design and Implementation. (2003). https://pax.grsecurity.net/docs/aslr.txt
[26]
Richard Wartell, Vishwath Mohan, Kevin W. Hamlen, and Zhiqiang Lin. 2012. Binary stirring. In Proceedings of the 2012 ACM conference on Computer and communications security - CCS '12. ACM Press, New York, New York, USA, 157. https://doi.org/10.1145/2382196.2382216
[27]
David Williams-King, Graham Gobieski, Kent Williams-King, James P. Blake, Xinhao Yuan, Patrick Colp, Michelle Zheng, Vasileios P. Kemerlis, Junfeng Yang, and William Aiello. 2016. Shuffler: Fast and Deployable Continuous Code Re-randomization. In Proceedings of the 12th USENIX Conference on Operating Systems Design and Implementation (OSDI'16). USENIX Association, Berkeley, CA, USA, 367--382.
[28]
Haizhi Xu and Steve J. Chapin. 2006. Improving address space randomization with a dynamic offset randomization technique. In Proceedings of the 2006 ACM symposium on Applied computing - SAC '06. ACM Press, New York, New York, USA, 384. https://doi.org/10.1145/1141277.1141364
[29]
Jun Xu, Z. Kalbarczyk, and R.K. Iyer. 2006. Transparent runtime randomization for security. In Proceedings of the 22nd International Symposium on Reliable Distributed Systems (SRDS'06). IEEE Comput. Soc, 260--269. https://doi.org/10.1109/RELDIS.2003.1238076

Cited By

View all
  • (2024)Randomize the Running Function When It Is DisclosedIEEE Transactions on Computers10.1109/TC.2024.337177673:6(1516-1530)Online publication date: Jun-2024
  • (2020)Thwarting Control Plane Attacks with Displaced and Dilated Address Spaces2020 IEEE International Symposium on Hardware Oriented Security and Trust (HOST)10.1109/HOST45689.2020.9300273(57-68)Online publication date: 7-Dec-2020
  • (2019)Defeating denial-of-service attacks in a self-managing N-variant systemProceedings of the 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems10.1109/SEAMS.2019.00024(126-138)Online publication date: 25-May-2019
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
MTD '17: Proceedings of the 2017 Workshop on Moving Target Defense
October 2017
126 pages
ISBN:9781450351768
DOI:10.1145/3140549
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 30 October 2017

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Funding Sources

Conference

CCS '17
Sponsor:

Acceptance Rates

MTD '17 Paper Acceptance Rate 9 of 26 submissions, 35%;
Overall Acceptance Rate 40 of 92 submissions, 43%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)106
  • Downloads (Last 6 weeks)10
Reflects downloads up to 01 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Randomize the Running Function When It Is DisclosedIEEE Transactions on Computers10.1109/TC.2024.337177673:6(1516-1530)Online publication date: Jun-2024
  • (2020)Thwarting Control Plane Attacks with Displaced and Dilated Address Spaces2020 IEEE International Symposium on Hardware Oriented Security and Trust (HOST)10.1109/HOST45689.2020.9300273(57-68)Online publication date: 7-Dec-2020
  • (2019)Defeating denial-of-service attacks in a self-managing N-variant systemProceedings of the 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems10.1109/SEAMS.2019.00024(126-138)Online publication date: 25-May-2019
  • (2019)A Survey of Research on Runtime Rerandomization Under Memory DisclosureIEEE Access10.1109/ACCESS.2019.29317077(105432-105440)Online publication date: 2019
  • (2018)LprovProceedings of the 34th Annual Computer Security Applications Conference10.1145/3274694.3274751(605-617)Online publication date: 3-Dec-2018
  • (2018)Catch Me If You CanProceedings of the 5th ACM Workshop on Moving Target Defense10.1145/3268966.3268970(31-39)Online publication date: 15-Oct-2018

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media