{'fraction_non_alphanumeric': 0.012516469038208168, 'fraction_numerical': 0.001976284584980237, 'mean_word_length': 4.797709923664122, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Mitigating 0-Days through Heap Techniques -- An Empirical Study

Securing public-facing services is a challenging task for all types of users and even best practices might not be sufficient at stopping attackers with an 0-day. It is often the case that when a new vulnerability is discovered, there is a race between attackers to exploit the vulnerability, and system administrators to patch the system in a manner that does not break existing functionality nor induce an unnecessary amount of downtime. For individuals hosting publicly accessible services such as a website or data storage, this race greatly favors the attacker as the average system administrator may not be aware of the need to update a system until days or even weeks after proof-of-concept exploits are made publicly available. In this paper we conduct exploratory research into techniques that can hinder the successful exploitation of a service with minimal impact on the system. While these techniques do not prevent a 0-day from exploiting the service in all cases, it can be used to defend a system against some types of bugs and against some types of techniques used by exploit developers. The ultimate goal of this research is to present methods that may prove to be successful at buying an individual time before it is necessary to patch the system by bypassing the initial round of exploits. We conclude this paper by demonstrating the potential of these methods on several modern systems including some with publicly available exploits.