CyberRota Analysis
AI-GeneratedThe vulnerability arises from the improper handling of user-supplied input in the parse_tilde function, which can lead to a stack exhaustion when excessively long usernames are processed. This stack clash could allow an attacker to disrupt application execution or potentially execute arbitrary code. Organizations using applications that utilize the wordexp function with untrusted input should prioritize addressing this issue to mitigate the risk of exploitation.
Original NVD Description
When expanding paths that begin with a tilde (~) followed by a username, the internal parse_tilde function extracts the username to determine the user's home directory. The implementation allocates memory for this username directly on the stack using the strndupa macro. Because the size of this allocation was determined by the length of the user-supplied input without any bounds checks, passing an excessively long username e.g. thousands of characters, forces the thread to exhaust its stack space. Thus if an application passes untrusted, attacker-controlled input to the wordexp function, an attacker can trigger a stack clash.