Within the function HandleFileArg the argument filepattern is under control of the user who passes it in from the command line. filepattern is passed directly to strlen to determine the ending location of the char* passed in by the user, no checks are done to see if the passed in char* is longer than the staticly sized buffer data is memcpy‘d into, but after the memcpy a null byte is written to what is assumed to be the end of the buffer to terminate the char*, but without length checks, this null write occurs at an arbitrary offset from the buffer. An attacker can provide malicious input to trigger this vulnerability.
Use CWE-88, Att vendor hub and Xmill product page to widen CVE-2021-21814 into its surrounding weakness, vendor, and product context.
Compare it with CVE-2022-26507, CVE-2021-21811 and CVE-2021-21828 for nearby disclosures in the same product family.