来源:自学PHP网 时间:2015-04-17 13:03 作者: 阅读:次
[导读] *缺陷信息*类别: Directory Traversal可远程测试: Yes本地测试: Yes*程序介绍*Provides end-to-end FlexPod management and automation across physical,virtual, compute, storage and network ......
*缺陷信息*
类别: Directory Traversal 可远程测试: Yes 本地测试: Yes *程序介绍* Provides end-to-end FlexPod management and automation across physical, virtual, compute, storage and network resources. Create internal private clouds rapidly with internal standards and procedures to maximize the infrastructure investments. Provides comprehensive physical and virtual infrastructure management and automation. Provides unified solution and single pane of glass for consistent and connected experience across private, public & hybrid clouds. *缺陷概述* jQuery File Tree is a configurable, AJAX file browser plugin for the jQuery javascript library utilised within the Cloupia application framework. Unauthenticated access to this module allows a remote attacker to browse the entire file system of the host server, beyond the realm of the web service itself. Cloupia are aware of this flaw and are releasing a patch to mitigate access. End users are urged to update immediately by contacting the vendor. http://www.cloupia.com *技术分析* The following process performed as an attacker to exploit this vulnerability would be as follows: The code for the jQuery File Tree Java-Server-Page file reads as follows: <%@ page import="java.io.File,java.io.FilenameFilter,java.util.Arrays"%> <% /** * jQuery File Tree JSP Connector * Version 1.0 * Copyright 2008 Joshua Gould * 21 April 2008 */ String dir = request.getParameter("dir"); if (dir == null) { return; } if (dir.charAt(dir.length()-1) == '\\') { dir = dir.substring(0, dir.length()-1) + "/"; } else if (dir.charAt(dir.length()-1) != '/') { dir += "/"; } if (new File(dir).exists()) { String[] files = new File(dir).list(new FilenameFilter() { public boolean accept(File dir, String name) { return name.charAt(0) != '.'; } }); Arrays.sort(files, String.CASE_INSENSITIVE_ORDER); out.print("<ul class=\"jqueryFileTree\" style=\"display: none;\">"); // www.2cto.com All dirs for (String file : files) { if (new File(dir, file).isDirectory()) { out.print("<li class=\"directory collapsed\"><a href=\"#\" rel=\"" + dir + file + "/\">" + file + "</a></li>"); } } // All files for (String file : files) { if (!new File(dir, file).isDirectory()) { int dotIndex = file.lastIndexOf('.'); String ext = dotIndex > 0 ? file.substring(dotIndex + 1) : ""; out.print("<li class=\"file ext_" + ext + "\"><a href=\"#\" rel=\"" + dir + file + "\">" + file + "</a></li>"); } } out.print("</ul>"); } %> |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com