Clean cleans up given path and returns a relative path that goes straight down to prevent path traversal. 🚨 SECURITY: This function MUST be used for any user input that is used as file system path to prevent path traversal.
(p string)
| 11 | // 🚨 SECURITY: This function MUST be used for any user input that is used as |
| 12 | // file system path to prevent path traversal. |
| 13 | func Clean(p string) string { |
| 14 | p = strings.ReplaceAll(p, `\`, "/") |
| 15 | return strings.Trim(path.Clean("/"+p), "/") |
| 16 | } |