Browse Source

修正抑制目录穿越判断

master
xyiege 7 months ago
parent
commit
a2d9e0d8c3
  1. 14
      aufs/core/AuFile.go

14
aufs/core/AuFile.go

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

Loading…
Cancel
Save