Step 1: Malformed XML Input: The attacker crafts a malicious XML document designed to trigger the vulnerability. This document likely contains specific XML structures or content that, when parsed by ezXML, leads to the problematic memory operation in ezxml_char_content().
Step 2: Parsing Trigger: The vulnerable application, using ezXML, attempts to parse the malicious XML document.
Step 3: Function Invocation: The ezxml_char_content() function is called during the parsing process, processing the crafted XML content.
Step 4: Invalid Reallocation: Inside ezxml_char_content(), the code attempts to realloc a memory block that has not been correctly allocated or initialized.
Step 5: Segmentation Fault: The realloc operation, or subsequent memory access, triggers a segmentation fault due to the invalid memory access.
Step 6: Application Crash: The segmentation fault causes the application using ezXML to crash, resulting in a denial-of-service condition.