Software protection system - II

Reverse engineering is the process of recovering a high level structure and its semantics from a lower-level structure. Various techniques have been developed to prevent malicious use of reverse engineering of software applications in binary format. One widely practiced technique called - code obfus...

Full description

Bibliographic Details
Main Author: Hong, Dexter Xian Jun.
Other Authors: Sabu Emmanuel
Format: Final Year Project (FYP)
Language:English
Published: 2012
Subjects:
Online Access:http://hdl.handle.net/10356/48553
_version_ 1826110644622983168
author Hong, Dexter Xian Jun.
author2 Sabu Emmanuel
author_facet Sabu Emmanuel
Hong, Dexter Xian Jun.
author_sort Hong, Dexter Xian Jun.
collection NTU
description Reverse engineering is the process of recovering a high level structure and its semantics from a lower-level structure. Various techniques have been developed to prevent malicious use of reverse engineering of software applications in binary format. One widely practiced technique called - code obfuscation, modifies a program by altering the original structure and look of its source or binary code while preserving the original functionality of the program. In this project, a unique approach in implementing exception-based code obfuscation at assembly level is proposed. The design utilizes the features available in Windows Structured Exception Handling (SEH) provided by Windows. An obfuscator prototype based on this design is developed and tested against the obfuscation qualities – potency, resilience, stealth and cost, suggested by Collberg et al. Test results that were conducted have shown up to 88 percent of disassembly errors and 24 percent of control flow errors with only 20 percent obfuscation being carried out. The obfuscated codes also appear stealthy with minimal cost penalties.
first_indexed 2024-10-01T02:37:53Z
format Final Year Project (FYP)
id ntu-10356/48553
institution Nanyang Technological University
language English
last_indexed 2024-10-01T02:37:53Z
publishDate 2012
record_format dspace
spelling ntu-10356/485532023-03-03T20:52:22Z Software protection system - II Hong, Dexter Xian Jun. Sabu Emmanuel School of Computer Engineering DRNTU::Engineering::Computer science and engineering::Software::Software engineering Reverse engineering is the process of recovering a high level structure and its semantics from a lower-level structure. Various techniques have been developed to prevent malicious use of reverse engineering of software applications in binary format. One widely practiced technique called - code obfuscation, modifies a program by altering the original structure and look of its source or binary code while preserving the original functionality of the program. In this project, a unique approach in implementing exception-based code obfuscation at assembly level is proposed. The design utilizes the features available in Windows Structured Exception Handling (SEH) provided by Windows. An obfuscator prototype based on this design is developed and tested against the obfuscation qualities – potency, resilience, stealth and cost, suggested by Collberg et al. Test results that were conducted have shown up to 88 percent of disassembly errors and 24 percent of control flow errors with only 20 percent obfuscation being carried out. The obfuscated codes also appear stealthy with minimal cost penalties. Bachelor of Engineering (Computer Engineering) 2012-04-26T03:34:52Z 2012-04-26T03:34:52Z 2012 2012 Final Year Project (FYP) http://hdl.handle.net/10356/48553 en Nanyang Technological University 89 p. application/pdf
spellingShingle DRNTU::Engineering::Computer science and engineering::Software::Software engineering
Hong, Dexter Xian Jun.
Software protection system - II
title Software protection system - II
title_full Software protection system - II
title_fullStr Software protection system - II
title_full_unstemmed Software protection system - II
title_short Software protection system - II
title_sort software protection system ii
topic DRNTU::Engineering::Computer science and engineering::Software::Software engineering
url http://hdl.handle.net/10356/48553
work_keys_str_mv AT hongdexterxianjun softwareprotectionsystemii