|
|
|
@ -20,14 +20,12 @@ func Flist(w http.ResponseWriter, r *http.Request) { |
|
|
|
// 监视运行目录
|
|
|
|
wdir := r.URL.Query().Get("path") |
|
|
|
// 如果请求的path中有 ../ 需要删除
|
|
|
|
wdir = strings.Replace(wdir, "../", "", -1) |
|
|
|
// 如果请求的path中以 / 结尾需要删除
|
|
|
|
if wdir[len(wdir)-1] == '/' { |
|
|
|
wdir = wdir[:len(wdir)-1] |
|
|
|
} |
|
|
|
// 如果请求的path中以 / 开头需要删除
|
|
|
|
if wdir[0] == '/' { |
|
|
|
wdir = wdir[1:] |
|
|
|
if strings.Contains(wdir, "../") { |
|
|
|
// 删除多余的../
|
|
|
|
wdir = strings.ReplaceAll(wdir, "../", "") |
|
|
|
// 正则替换多余的../
|
|
|
|
// wdir = regexp.MustCompile(`/{2,}`).ReplaceAllString(wdir, "/")
|
|
|
|
|
|
|
|
} |
|
|
|
// 主机
|
|
|
|
srcip := r.URL.Query().Get("srcip") |
|
|
|
|