路徑遍歷 漏洞修復(fù)

package net.radar.util;

import java.util.regex.Pattern;

public class PreventTraversalUtil {

    private static Pattern FilePattern = Pattern.compile("[\\\\/:*?\"<>|]");  
 
    /**
     * 路徑遍歷 漏洞修復(fù)
     * @param str
     * @return
     */
    protected static String filenameFilter(String str) {  
        return str==null?null:FilePattern.matcher(str).replaceAll("");  

    }
}

調(diào)用

    /**
     * 根據(jù)PageTemplateConfig對(duì)象讀取模板文件內(nèi)容
     * 
     * @return 模板文件內(nèi)容
     */
    public static String readTemplateFileContent(PageTemplateConfig pageTemplateConfig) {
        String filenameFilter = PreventTraversalUtil.filenameFilter(CommonUtil.getWebRootPath() + pageTemplateConfig.getTemplatePath());
        File templateFile = new File(filenameFilter);
//      File templateFile = new File(CommonUtil.getWebRootPath() + pageTemplateConfig.getTemplatePath());
        String templateFileContent = null;
        try {
            templateFileContent = FileUtils.readFileToString(templateFile, "UTF-8");
        } catch (IOException e) {
            e.printStackTrace();
        }
        return templateFileContent;
    }
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容