fix(ClientFileService): 安全处理文件名以防止路径遍历攻击
This commit is contained in:
@@ -1197,8 +1197,10 @@ namespace YLErp.Modules.ClientModule
|
||||
|
||||
var clientFile = req.Clone();
|
||||
|
||||
clientFile.FileName = file.FileName;
|
||||
clientFile.FilePath = string.Concat(webFolder.TrimStart('~'), "/", file.FileName);
|
||||
// 安全处理:使用 Path.GetFileName 提取纯文件名,防止路径遍历攻击
|
||||
var safeFileName = Path.GetFileName(file.FileName);
|
||||
clientFile.FileName = safeFileName;
|
||||
clientFile.FilePath = string.Concat(webFolder.TrimStart('~'), "/", safeFileName);
|
||||
|
||||
// 提供恢复文件夹
|
||||
var historyPath = clientFile.FilePath.Replace(clientFile.FileName, @"history");
|
||||
|
||||
Reference in New Issue
Block a user