2016-07-22 11 views
0

Я пытаюсь исправить проблему «Header Manipulation», которая была возвращена bu HP Fortify Scan для этого кода. Я не знаю, были ли файлы уже проверены во время загрузки (я думаю, что нет). Я попытался использовать RegEx для подтверждения имени файла без успеха. Кто-нибудь может мне помочь?Проблема с заголовком заголовка с HP Fortify в HTTP-ответе [java]

b = uploadedFiles.getFilecontent().getBytes(1, 
         uploadedFiles.getFilesize().intValue()); 
       if (b != null) { 
        response.reset(); 
        String fileName = uploadedFiles.getFilename(); 
        String header = "attachment; filename=\"" + fileName + "\""; 
        String contentType = uploadedFiles.getFilecontenttype(); 
        response.setContentType(uploadedFiles.getFilecontenttype()); 
        response.addHeader("Content-Transfer-Encoding", "Binary"); 
        response.addHeader("Cache-Control", "must-revalidate, private"); 
        response.setContentLength(b.length); 
        FileCopyUtils.copy(b, response.getOutputStream()); 
        response.getOutputStream().flush(); 
        response.getOutputStream().close(); 
       } 

Что я пробовал:

String fileName = uploadedFiles.getFilename(); 
String regex = "[a-zA-Z._ ]*"; 
if (b != null && fileName.matches(regex)) { 
       response.reset(); 
       // String fileName = uploadedFiles.getFilename(); 
       String header = "attachment; filename=\"" + fileName + "\""; 
       String contentType = uploadedFiles.getFilecontenttype(); 
       response.setContentType(uploadedFiles.getFilecontenttype()); 
       response.addHeader("Content-Transfer-Encoding", "Binary"); 
       response.addHeader("Cache-Control", "must-revalidate, private");    
       response.setHeader("Content-Disposition", header); 
       response.setContentLength(b.length); 
       FileCopyUtils.copy(b, response.getOutputStream()); 
       response.getOutputStream().flush(); 
       response.getOutputStream().close(); 
      } 

ответ

0

Вы должны использовать метод для фильтрации чувствительной информации в

response.setHeader("Content-Disposition", header) 

Только с помощью

fileName.matches(regex) 

слишком просто.

 Смежные вопросы

  • Нет связанных вопросов^_^