دانلود مقاله ISI انگلیسی شماره 139346
ترجمه فارسی عنوان مقاله

بهبود امنیت رمزگذاری کد مبتنی بر مجازی براساس برنامه ریزی پویای بایت کد

عنوان انگلیسی
Enhance virtual-machine-based code obfuscation security through dynamic bytecode scheduling
کد مقاله سال انتشار تعداد صفحات مقاله انگلیسی
139346 2018 19 صفحه PDF
منبع

Publisher : Elsevier - Science Direct (الزویر - ساینس دایرکت)

Journal : Computers & Security, Volume 74, May 2018, Pages 202-220

ترجمه کلمات کلیدی
حفاظت از نرم افزار، تنوع برنامه، تسویه حساب، امنیت کد مجازی سازی آموزش، برنامه ریزی پویا، مهندسی معکوس، حمله تجمعی، کد مجازی سازی، سوءاستفاده از کد،
کلمات کلیدی انگلیسی
Software protection; Program diversity; Obfuscation; Code security; Instruction virtualization; Dynamic scheduling; Reverse engineering; Cumulative attack; Code virtualization; Code obfuscation;
پیش نمایش مقاله
پیش نمایش مقاله  بهبود امنیت رمزگذاری کد مبتنی بر مجازی براساس برنامه ریزی پویای بایت کد

Code virtualization built upon virtual machine (VM) technologies is emerging as a viable method for implementing code obfuscation to protect programs against unauthorized analysis. State-of-the-art VM-based protection approaches use a fixed scheduling structure where the program always follows a single, deterministic execution path for the same input. Such approaches, however, are vulnerable in certain scenarios where the attacker can reuse knowledge extracted from previously seen software to crack applications protected with the same obfuscation scheme. This paper presents Dsvmp, a novel VM-based code obfuscation approach for software protection. Dsvmp brings together two techniques to provide stronger code protection than prior VM-based approaches. Firstly, it uses a dynamic instruction scheduler to randomly direct the program to execute different paths without violating the correctness across different runs. By randomly choosing the program execution path, the application exposes diverse behavior, making it much more difficult for an attacker to reuse the knowledge collected from previous runs or similar applications to launch an attack. Secondly, it employs multiple VMs to further obfuscate the mapping from VM opcode to native machine instructions, so that the same opcode could be mapped to different native instructions at runtime, making code analysis even harder. We have implemented Dsvmp in a prototype system and evaluated it using a set of widely used applications. Experimental results show that Dsvmp provides stronger protection with comparable runtime overhead and code size, when it is compared to two commercial VM-based code obfuscation tools.