In glibc 2.26 and earlier there is confusion in the usage of getcwd() by realpath() which can be used to write before the destination buffer leading to a buffer underflow and potential code execution. https://nvd.nist.gov/vuln/detail/CVE-2018-1000001