curl supports "globbing" of URLs, in which a user can pass a numerical range to have the tool iterate over those numbers to do a sequence of transfers. In the globbing function that parses the numerical range, there was an omission that made curl read a byte beyond the end of the URL if given a carefully crafted, or just wrongly written, URL. The URL is stored in a heap based buffer, so it could then be made to wrongly read something else instead of crashing. An example of a URL that triggers the flaw would be `http://ur%20[0-60000000000000000000`.
https://support.apple.com/HT208221
https://security.gentoo.org/glsa/201709-14
https://curl.haxx.se/docs/adv_20170809A.html
https://access.redhat.com/errata/RHSA-2018:3558
http://www.securitytracker.com/id/1039117