编写java打码如下:

。。。

File proFile = new File(path);

。。。

使用fortify扫描,会报一个Path Manipulation的漏洞,怎么解决呢?看下面代码:

HashMap<String, String> map = new HashMap<String, String>();
  map.put("a", "a");
  map.put("b", "b");
  map.put("c", "c");
  map.put("d", "d");
  map.put("e", "e");
  map.put("f", "f");
  map.put("g", "g");
  map.put("h", "h");
  map.put("i", "i");
  map.put("j", "j");
  map.put("k", "k");
  map.put("l", "l");
  map.put("m", "m");
  map.put("n", "n");
  map.put("o", "o");
  map.put("p", "p");
  map.put("q", "q");
  map.put("r", "r");
  map.put("s", "s");
  map.put("t", "t");
  map.put("u", "u");
  map.put("v", "v");
  map.put("w", "w");
  map.put("x", "x");
  map.put("y", "y");
  map.put("z", "z");
  
  map.put("A", "A");
  map.put("B", "B");
  map.put("C", "C");
  map.put("D", "D");
  map.put("E", "E");
  map.put("F", "F");
  map.put("G", "G");
  map.put("H", "H");
  map.put("I", "I");
  map.put("J", "J");
  map.put("K", "K");
  map.put("L", "L");
  map.put("M", "M");
  map.put("N", "N");
  map.put("O", "O");
  map.put("P", "P");
  map.put("Q", "Q");
  map.put("R", "R");
  map.put("S", "S");
  map.put("T", "T");
  map.put("U", "U");
  map.put("V", "V");
  map.put("W", "W");
  map.put("X", "X");
  map.put("Y", "Y");
  map.put("Z", "Z");

map.put(":", ":");
     map.put("/", "/");
     map.put("\\", "\\");
  
  String temp = "";
  for (int i = 0; i < path.length(); i++) {

if (map.get(path.charAt(i)+"")!=null) {
    temp += map.get(path.charAt(i)+"");
   }
  }
  path = temp;
  
  File proFile = new File(path);

红色代码是新增代码,增加上述代码后,问题解决。

解决fortify扫描出的Path Manipulation问题(java语言)相关推荐

  1. 解决fortify扫描出的Code Correctness: Double-Checked Locking问题(java语言)

    现有java代码如下: ... if (fitz == null) {   synchronized (this) {     if (fitz == null) {       fitz = new ...

  2. Java关键字fymd,JAVA程式碼一直被foritfy檢出有path manipulation

    我開發的JAVA程式碼在給Fortify檢測後,一直被查出有path manipulation- 上網查大都是教人用文字白名單過濾,但我有兩個path manipulation問題, 一是isr= n ...

  3. Fortify漏洞之Path Manipulation(路径篡改)

    继续对Fortify的漏洞进行总结,本篇主要针对 Path Manipulation(路径篡改)的漏洞进行总结,如下: 1.Path Manipulation(路径篡改) 1.1.产生原因: 当满足以 ...

  4. Fortify扫描漏洞解决方案

    目录 Log Forging漏洞: Null Dereference Unreleased Resource: Streams Portability Flaw: File Separator Por ...

  5. 树莓派学习 -- 无法扫描出树莓派IP

    使用树莓派无法扫描出IP.网上查了一圈资料. 基本上有两个解决方法: 参看:计算机无法获取树莓派IP 一.方法 1. 计算机没有开启internet连接共享 在计算机的控制面板\网络和 Interne ...

  6. Java防御路径操作(Path Manipulation) 的正确姿势

    路径操作(Path Manipulation)的漏洞,简言之就是在路径中包含有一些特殊字符(- 或者 / 等),导致可以访问到期望目录之外的文件. 比如路径地址是/usr/local/myapp/.. ...

  7. 解决the resource is not on the build path of a java project

    场景 普通的Java project 转maven 项目后,导入类提示:the resource is not on the build path of a java project 解决方法 将检查 ...

  8. XSLT实现XML无极限树(精简版)[二] 解决没有递归出节点属性值总和的问题(JS实现)...

    XML数据源文件和第一版的一样! 这个XSLT解决没有递归出节点属性值总和的问题 不过是借助JS实现的 不管怎么样,问题算是解决了! <xsl:stylesheet version=" ...

  9. 如何解决移动硬盘弹出时报错:设备正在使用中

    如何解决移动硬盘弹出时报错:设备正在使用中 一.弹出usb attached scsl大容量储存设备时出问题 在使用Windows10系统的时候,我们在弹出U盘或者移动硬盘时,有时会出现"弹 ...

  10. 解决Nmap扫描出现的延时

    解决nmap 扫描出现的延时 nmap 官网详细介绍了扫描速度的控制和如何规避IDS/IPS https://nmap.org/man/zh/man-performance.html 默认情况下nma ...

最新文章

  1. pytorch CUDA driver version is insufficient for CUDA runtime version解决
  2. 如何使用 Nginx 优雅地限流?
  3. Matlab 工具箱
  4. apollo 配置中心_分布式配置中心之Apollo
  5. 4源代码的下载和编译
  6. centos7 如何安装部署k8s_如何在centos7上安装FreeIPA的客户端
  7. 创新 - 王屋村的魔方们
  8. 几张一模一样的照片_两张一模一样的照片看起来却不一样!什么鬼?
  9. mysql 5.1 for linux_linux下安装mysql5.1.68
  10. BIO,NIO,AIO总结(一)
  11. java基础大概_Java基础知识(一)
  12. 一个资深系统管理员的O2O实践(引子)
  13. Python Project Euler 013:100个50位数和
  14. PIM SM报文抓包和总结
  15. 低代码平台-竞品分析ABP框架
  16. Node.js 服务端图片处理利器——sharp 进阶操作指南
  17. P2440 木材加工
  18. pytorch个人学习笔记(2)—Normalize()参数详解及用法
  19. 南京大学量子计算机陈教授,南京大学于扬教授应邀访问武汉物数所
  20. MySQL生成自增的流水号

热门文章

  1. linux自动升级关闭,Ubuntu关闭内核自动更新
  2. 指付通盗刷信用卡维权连载--9月4日维权纪实
  3. matlab求系统根轨迹代码_第九讲? 根轨迹法
  4. 湖大计算机考研跟南航比,省三也可以逆袭进入985大学?这49所自主招生高校都收省三!...
  5. 设计师该如何把简历写好?
  6. 白盒测试-判定条件覆盖
  7. torch的maximum与max以及导出onnx
  8. iOS webp图片展示处理
  9. 青少年python编程入门范例_青少年Python编程入门—图解Python
  10. 无论产品经理是否逃离北上广,过硬的产品实力才能让自己始终拥有竞争力