Diversification and obfuscation techniques for software security: A systematic literature review

被引:47
|
作者
Hosseinzadeh, Shohreh [1 ]
Rauti, Sampsa [1 ]
Lauren, Samuel [1 ]
Makela, Jari-Matti [1 ]
Holvitie, Johannes [1 ]
Hyrynsalmi, Sami [2 ]
Leppanen, Ville [1 ]
机构
[1] Univ Turku, Dept Future Technol, Vesilinnantie 5, SF-20500 Turku, Finland
[2] Tampere Univ Technol, Lab Pervas Comp, Pohjoisranta 11 A, Port 28100, Finland
关键词
Diversification; Obfuscation; Software security; Systematic literature review; CONTROL FLOW OBFUSCATION; SOURCE CODE OBFUSCATION; PROTECTION METHOD; THEORETICAL BASIS; DIVERSITY; !text type='JAVA']JAVA[!/text; RANDOMIZATION; DEFENSE; IMPLEMENTATION; FRAMEWORK;
D O I
10.1016/j.infsof.2018.07.007
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Context Diversification and obfuscation are promising techniques for securing software and protecting computers from harmful malware. The goal of these techniques is not removing the security holes, but making it difficult for the attacker to exploit security vulnerabilities and perform successful attacks. Objective: There is an increasing body of research on the use of diversification and obfuscation techniques for improving software security; however, the overall view is scattered and the terminology is unstructured. Therefore, a coherent review gives a clear statement of state-of-the-art, normalizes the ongoing discussion and provides baselines for future research. Method: In this paper, systematic literature review is used as the method of the study to select the studies that discuss diversification/obfuscation techniques for improving software security. We present the process of data collection, analysis of data, and report the results. Results: As the result of the systematic search, we collected 357 articles relevant to the topic of our interest, published between the years 1993 and 2017. We studied the collected articles, analyzed the extracted data from them, presented classification of the data, and enlightened the research gaps. Conclusion: The two techniques have been extensively used for various security purposes and impeding various types of security attacks. There exist many different techniques to obfuscate/diversify programs, each of which targets different parts of the programs and is applied at different phases of software development life-cycle. Moreover, we pinpoint the research gaps in this field, for instance that there are still various execution environments that could benefit from these two techniques, including cloud computing, Internet of Things (IoT), and trusted computing. We also present some potential ideas on applying the techniques on the discussed environments.
引用
收藏
页码:72 / 93
页数:22
相关论文
共 50 条
  • [21] A systematic literature review of machine learning techniques for software maintainability prediction
    Alsolai, Hadeel
    Roper, Marc
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2020, 119
  • [22] Systematic Literature Review on Security Risks and its Practices in Secure Software Development
    Khan, Rafiq Ahmad
    Khan, Siffat Ullah
    Khan, Habib Ullah
    Ilyas, Muhammad
    [J]. IEEE ACCESS, 2022, 10 : 5456 - 5481
  • [23] A Systematic Literature Review of Offensive and Defensive Security Solutions With Software Defined Network
    Melis, Andrea
    Al Sadi, Amir
    Berardi, Davide
    Callegati, Franco
    Prandini, Marco
    [J]. IEEE ACCESS, 2023, 11 : 93431 - 93463
  • [24] Information systems security practices in social software applications A systematic literature review
    Tamrin, Suraya Ika
    Norman, Azah Anir
    Hamid, Suraya
    [J]. ASLIB JOURNAL OF INFORMATION MANAGEMENT, 2017, 69 (02) : 131 - 157
  • [25] Security Analysis of Scan Obfuscation Techniques
    Sao, Yogendra
    Ali, Sk. Subidh
    [J]. IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, 2023, 18 : 2842 - 2855
  • [26] A systematic literature review on chaotic maps-based image security techniques
    Singh, Dilbag
    Kaur, Sharanpreet
    Kaur, Mandeep
    Singh, Surender
    Kaur, Manjit
    Lee, Heung-No
    [J]. COMPUTER SCIENCE REVIEW, 2024, 54
  • [27] A Systematic Literature Review of AI-Based Software Requirements Prioritization Techniques
    Anwar, Rahila
    Bashir, Muhammad Bilal
    [J]. IEEE ACCESS, 2023, 11 : 143815 - 143860
  • [28] Multi-Objective Optimization Techniques for Software Refactoring: A Systematic Literature Review
    Rafique, Muhammad Zaid
    Alam, Khubaib Amjab
    Iqbal, Umer
    [J]. 2019 13TH INTERNATIONAL CONFERENCE ON MATHEMATICS, ACTUARIAL SCIENCE, COMPUTER SCIENCE AND STATISTICS (MACS-13), 2019,
  • [29] Software Requirements Prioritisation: A Systematic Literature Review on Significance, Stakeholders, Techniques and Challenges
    Hujainah, Fadhl
    Abu Bakar, Rohani Binti
    Abdulgabber, Mansoor Abdullateef
    Zamli, Kamal Z.
    [J]. IEEE ACCESS, 2018, 6 : 71497 - 71523
  • [30] Prediction models and techniques for Open Source Software projects: A systematic literature review
    Syeed, M.M. Mahbubul
    Hammouda, Imed
    Systä, Tarja
    [J]. International Journal of Open Source Software and Processes, 2014, 5 (02) : 1 - 39