Fortify漏洞之Portability Flaw: File Separator 和 Poor Error Handling: Return Inside Finally
Fortify漏洞之Portability Flaw: File Separator 和 Poor Error Handling: Return Inside Finally 1、Portability Flaw: File Separator(文件分隔符) 1.1、产生原因: 不同的操作系统使用不同的字符作为文件分隔符。例如,Microsoft Windows 系统使用“\”,而 UNIX 系统则使用“/”。应用程序需要在不同的平台上运行时,使用 硬编码文件分隔符 会导致应用程序逻辑执行错误,并有可能导致 denial of service(拒绝服务)。 例 1 :以下代码使用硬编码文件分隔符来打开文件: ... "\\" 1.2、修复方案: 为编写可移植代码, 不应使用硬编码文件分隔符 ,而应使用语言库提供的独立于平台的 API。 例 2 : 下列代码执行与例 1 相同的功能,但使用独立于平台的 API 来指定文件分隔符: ... File file = new File(directoryName + 2、Poor Error Handling: Return Inside Finally 2.1、产生原因: 例 1 : public static void doMagic() throws Exception { try { //1. 抛出异常 //2.