DeepAI AI Chat
Log In Sign Up

Code Renewability for Native Software Protection

03/02/2020
by   Bert Abrath, et al.
University of East London
Ghent University
0

Software protection aims at safeguarding assets embedded in software by preventing and delaying reverse engineering and tampering attacks. This paper presents an architecture and supporting tool flow to renew parts of native applications dynamically. Renewed and diversified code and data belonging to either the original application or to linked-in protections are delivered from a secure server to a client on demand. This results in frequent changes to the software components when they are under attack, thus making attacks harder. By supporting various forms of diversification and renewability, novel protection combinations become available, and existing combinations become stronger. The prototype implementation is evaluated on a number of industrial use cases.

READ FULL TEXT
12/23/2020

Flexible Software Protection

To counter software reverse engineering or tampering, software obfuscati...
04/14/2020

Resilient Self-Debugging Software Protection

Debuggers are a popular reverse engineering and tampering tool. Self-deb...
07/02/2019

Report on the Obfuscated Integration of Software Protections

To counter man-at-the-end attacks such as reverse engineering and tamper...
07/02/2019

Extended Report on the Obfuscated Integration of Software Protections

To counter man-at-the-end attacks such as reverse engineering and tamper...
06/06/2022

CompartOS: CHERI Compartmentalization for Embedded Systems

Existing high-end embedded systems face frequent security attacks. Softw...
09/08/2020

Technical Report: Gone in 20 Seconds – Overview of a Password Vulnerability in Siemens HMIs

Siemens produce a range of industrial human machine interface (HMI) scre...
06/02/2019

A Survey of Asynchronous Programming Using Coroutines in the Internet of Things and Embedded Systems

Many Internet of Things and embedded projects are event-driven, and ther...