The path traversal check in vimball#Vimball() rejected leading / and embedded .., but did not reject file names starting with a Windows drive letter (e.g. C:/foo). Backslashes are normalized to forward slashes earlier, so UNC paths are caught by the leading-slash check, but absolute drive-letter paths slipped through and could write outside of g:vimball_home on Windows.
Add a ^\a: check next to the existing ^/ check, and cover it with a new test (verified on Linux and Windows MinGW).
https://github.com/vim/vim/pull/19989
(2 files)
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
thanks
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()