IIS 中文文件名下载会出现403访问被拒绝 服务器在安全加固后,出现了IIS 中文文件名下载会出现403访问被拒绝 换成英文的就好了…
http://blog.csdn.net/wnczwl369/article/details/7483806 Tomcat 是Java开发者使用得较多的一个Web服务器,因为它占用资源小,运行速度快等特点,深受Java Web程序员的喜爱.不过,在使用中,由于Java中的中文问题的存在,如果不经过配置,在WEB程序中,不能直接支持具有中文文件名的文件的下载,这为 Java Web程序的开发带来一定的不便.本文拟介绍一种手段,解决这个问题. 解决问题的核心在于修改Tomcat的配置,在Server…
貌似很多人还是会遇到中文乱码的问题,Apache可以使用mod_encoding支持中文目录和文件,LNMP下Nginx其实不需要安装额外的组件即可支持中文文件名或中文目录,下面说一下常见的CentOS.Debian.Ubuntu Linux发行版下的设置方法和可能会遇到的问题: 设置前可以执行:locale 看一下,如果显示是en_US.UTF-8,即是正常,不用按下面的步骤设置.如果显示其他编码需要按如下步骤设置. CentOS: 编辑/etc/sysconfig/i18n 文件,内容修改为…
@WebServlet(name = "ticketServlet",urlPatterns = {"/tickets"},loadOnStartup = 1) @MultipartConfig(fileSizeThreshold = 5242880, maxFileSize = 20971520L,//20MB maxRequestSize = 41943040L//40MB ) public class TicketServlet extends HttpSer…
解决问题的核心在于修改Tomcat的配置,在Server.xml文件中添加一个名为URIEncoding的属性,它用于对HTTP请求中的get方法传过来的URL进行编码.Tomcat内置的对于get协议中的URL编码是ISO-8859-1,这个字符集不能直接支持中文等双字节的信息,而中文文件的下载链接恰恰是通过get协议进行的. 打开$tomcat安装目录$/config/server.xml文件,在其中找到如下代码: <Connector port="8080" protoco…
前提:我们网站所有文件全部使用的是UTF-8 NO BOM的编码方式 1.找测试重现.360浏览器下载的呵呵,果然文件名是乱码.再请测试在ie浏览器下测试.IE9,8,7也全部是乱码.查看编码就是UTF-8.所名不是编码问题造成的.使用firefox8 测试很正常.猜想是因为ie的某些特殊的设置导致的问题. 2.以"PHP ie 下载 文件名乱码"为关键字搜索.果然,ie对中文文件名的下载文件是需要特殊处理的. 3.网上一哥们如是说: 如果$file_name是UTF-8编码的,比如文…
开发中大家都是使用的utf8编码,昨天遇到一个奇坑,本是一件很小的问题,解决也浪费了个吧小时.废话不多说,植入正题: 文件下载方式:通过header二进制流文件下载需求: 文件上传保留文件名不变数据字段file_url值:/public/upload/files/2019/04-29/中文测试包.rar linux(Ubuntu 18.04.2 LTS )文件目录:/home/wwwroot/web/public/upload/files/2019/04-29 windows10文件目录:D:\…
//遇到的现象是,下载含有中文文件名的文件时,能获取到文件,但是使用IE正常,使用firefox,chrome文件名却乱码.//既然如此,就区分一下浏览器再返回好了,处理方式如下 //RESTfull @RequestMapping(path = { "/down/{fileId}" }, method = { RequestMethod.GET }) public ResponseEntity<byte[]> handlerDownload(@PathVariable S…
重点就在于添加  "attachment;filename*=utf-8'zh_cn'" + fileName //遇到的现象是,下载含有中文文件名的文件时,能获取到文件,但是使用IE正常,使用firefox,chrome文件名却乱码. //既然如此,就区分一下浏览器再返回好了,处理方式如下 //RESTfull @RequestMapping(path = { "/down/{fileId}" }, method = { RequestMethod.GET })…
转自:http://www.imhdr.com/991/ HTTP 下载文件,中文文件名在 Firefox 下乱码问题 最近帮助一同事解决 HTTP 下载文件时,中文文件名在 Firefox 下乱码的问题,我的同事在 http header 中是这样操作的: "Content-Disposition","attachment;filename=文件名.xx" 其实,按照  rfc231 , Content-Disposition 应该按照如下格式设置: "…
Sevlet 下载pdf文件 支持中文文件名 package html2pdf.controller; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.OutputStream; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import jav…
处理过程 根据IE的F12中的log提示,是因为http头信息中的编码替换了html文件中的编码.我最初的思路是设置Tomcat默认编码,但是我发现我已经在Server.xml中设置过,想到这里我想到了上篇文章的文件重命名的问题,准备去写个filter去修改http响应头,但是我突然明白,SpringMVC应该会处理过,但是为什么无效呢,这种成熟的框架不应该会有bug存在,于是我尝试在SpringMVC的xml中配置SourceHttpMessageConverter等转换器,都无效. 发现原因…
        function get_basename($filename){                 return preg_replace('/^.+[\\\\\\/]/', '', $filename);              }              $file = "/tmp/你好.txt";         $filename = get_basename($file);           header("Content-type: appl…
IIS短文件名漏洞复现 一.漏洞描述 此漏洞实际是由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(~)波浪号引起的.它允许远程攻击者在Web根目录下公开文件和文件夹名称(不应该可被访问).攻击者可以找到通常无法从外部直接访问的重要文件,并获取有关应用程序基础结构的信息. 二.漏洞原理 IIS的短文件名机制,可以暴力猜解短文件名,访问构造的某个存在的短文件名,会返回404,访问构造的某个不存在的短文件名,返回400. 漏洞成因: 为了兼容16位MS-DOS程序,Windows为文件名较…
首先来几个网址先了解一下 https://www.jb51.net/article/166405.htm https://www.freebuf.com/articles/web/172561.html 总结: 一.漏洞描述:此漏洞实际是由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(~)波浪号引起的.它允许远程攻击者在Web根目录下公开文件和文件夹名称(不应该可被访问).攻击者可以找到通常无法从外部直接访问的重要文件,并获取有关应用程序基础结构的信息. 二.漏洞原理==>IIS短文…
转自:http://itfish.net/article/41668.html   总结Tomcat的体系架构.处理http请求的过程.安装和配置.目录结构.设置压缩和对中文文件名的支持.以及Catalina这个名字的由来--等.   Tomcat和JVM: 一个Tomcat只会启动一个JVM,所有webapps公用一个JVM进程,所以System.exit()会导致影响同个Tomcat中的其他应用.Tomcat通过调用配置的JDK或JRE来启动JVM.   体系结构: Server:A Ser…
中小研发团队架构实践之生产环境诊断工具WinDbg 生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具,Dump文件类似于飞机的黑匣子,记录着生产环境程序运行的状态.本文主要介绍了调试工具WinDbg和抓包工具ProcDump的使用,并分享一个真实的案例.N年前不知谁写的代码,导致每一两个月偶尔出现CPU飙高的现象.我们先使用ProcDump在生产环境中抓取异常进程的Dump文件,然后在不了解代码的…
利用file_get_contents打开文件或采集远程服务器文件如果文名或url中碰到汉字中文那么会出现failed to open stream:Lnvalid argument in错误.   今天遇到一个很棘手的问题,客户用ftp向服务器传了一个文件,但是却无法被程序识别.查看代码后,没有发现问题,最后重演流程发现,客户上传的文件是中文命名的.于是小做测试发现,file_get_contents函数尽然不支持中文文件名文件. 原有代码如下: $filename='哈.txt'; echo…
危害级别:轻微 IIS短文件名泄露漏洞 WASC Threat Classification 描述: Microsoft IIS在实现上存在文件枚举漏洞,攻击者可利用此漏洞枚举网络服务器根目录中的文件. 1.Internet Information Services(IIS,互联网信息服务)是由微软公司提供的基于运行Microsoft Windows的互联网基本服务. Microsoft IIS在实现上存在文件枚举漏洞,攻击者可利用此漏洞枚举网络服务器根目录中的文件. 危害: 攻击者可以利用“~…
--参考链接:http://blog.chinaunix.net/uid-26284395-id-3044132.html 解决问题的核心在于修改Tomcat的配置,在Server.xml文件中添加一个名为URIEncoding的属性,它用于对HTTP请求中的get方法传过来的URL进行编码.Tomcat内置的对于get协议中的URL编码是ISO-8859-1,这个字符集不能直接支持中文等双字节的信息,而中文文件的下载链接恰恰是通过get协议进行的. 打开$tomcat安装目录$/config/…
用的apache的ant包,下载导入即可.由于过程比较简单,直接上代码. 代码可直接复制使用. 如果想在android上使用,记得要在AndroidManifest.xml里添加权限: <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> <uses-permission android:name="android.permission.WRITE_EXT…
IIS短文件名漏洞在windows服务器上面非常常见,也就是利用“~”字符猜解暴露短文件/文件夹名,比如,采用这种方式构造URL:http://aaa.com/abc~1/.aspx,根据IIS返回的错误信息,猜测该路径或文件是否存在,具体可参考这篇文章:http://www.freebuf.com/articles/4908.html. 就单纯的解决这个问题来说,微软的URLScan工具是最适合的一个轻量级工具,关键它是免费的,而且安装.配置非常简单.安装过程就不说了,傻瓜式的. 安装完毕之后…
http://hdwangyi.iteye.com/blog/107709 Tomcat是Java开发者使用得较多的一个Web服务器,因为它占用资源小,运行速度快等特点,深受Java Web程序员的喜爱.不过,在使用中,由于Java中的中文问题的存在,如果不经过配置,在WEB程序中,不能直接支持具有中文文件名的文件的下载,这为Java Web程序的开发带来一定的不便.本文拟介绍一种手段,解决这个问题. 解决问题的核心在于修改Tomcat的配置,在Server.xml文件中添加一个名为URIEnc…
在Ubuntu下解压Windows下压缩的zip文件时,会出现解压出的带中文文件名的文件名乱码,这是因为Ubuntu和Windows默认的编码不同,Ubuntu下默认的编码是UTF-8,而Windows下默认的编码是GBK,而zip文件自身却不带有任何标识其编码的信息.对于这个问题,主要有以下三种解决方法: 一.命令行指定解压字符集 解压时指定字符集,可以是CP936,GBK,GB18030 $unzip -O CP936 xxx.zip 不过,"man unzip"对这个参数没有任何…
 通过freemarker制作word比较简单 步骤:制作word模板.制作方式是:将模板word保存成为xml----在xml的word模板中添加相应的标记----将xml的word文件的后缀名改成ftl文件(要注意的是生成xml格式要是2003格式的xml,也就是说拿到的word模板得是2003格式的,否则用wps打开word将会出现问题) 详细步骤如下: 模板制作(将要动态显示的数据打上标记,这个标记是freemarker中的EL标记,要注意的是,要控制值为空的情况,下面${(site…
PHP使用TCPDF生成PDF文件时,如果文件名是中文会被直接过滤掉,以下是TCPDF不能保存中文文件名的解决方法: 打开tcpdf.php文件,找到output函数,大约在8467行 或(7554)行. 1.注释以下代码,大约在8467-8470行  或(7565-7568)行: if ($dest[0] != 'F') { $name = preg_replace('/[\s]+/', '_', $name); $name = preg_replace('/[^a-zA-Z0-9_\.-]/…
原文来自:http://www.zhukun.net/archives/7434 CentOS系统下中文文件名乱码 2014/09/01Linux运维centos.Linuxbear 从windows上传到linux的文件或者目录,在Linux系统中显示为乱码.虽然将Linux的env设置了LANG=en_US.UTF-8,并且本地的Shell客户端编码也设置成UTF-8,但在Shell中(或通过http访问),仍是乱码…… 原因在于,Windows 的文件名中文编码默认为GBK,压缩或者上传后…
攻击方法(转自http://blog.sina.com.cn/s/blog_64a3795a01017xqt.html) 一直在寻找一种方法,如果我可以使用通配符"*" 和 "?"发送一个请求到iis,我意识到当IIS接收到一个文件路径中包含"~"的请求时,它的反应是不同的.基于这个特点,我们可以根据http的响应区分一个可用或者不可用的文件.在以下的表中,文件validxxx.xxx是存在于网站服务器根目录的.(备注:xxx.xxx是指不确定,…
1.1.1  漏洞描述 为了兼容16位MS-DOS程序,Windows为文件名较长的文件(和文件夹)生成了对应的windows 8.3 短文件名. 在Windows下查看对应的短文件名,可以使用命令 dir /x 只有前六位字符直接显示,后续字符用~1指代.其中数字1还可以递增,如果存在多个文件名类似的文件(名称前6位必须相同,且后缀名前3位必须相同).后缀名最长只有3位,多余的被截断.我们可以在启用.net的IIS下暴力列举短文件名,原因是: 访问构造的某个存在的短文件名,会返回404 访问构…
在ubunut下打开windows下压缩的rar文件和zip压缩文件出现中文文件名乱码的问题真的很头疼.文件名乱码其实也没有什么关系是不?至少重命名再改回来或者是使用英文命名都可以克服.不巧的是,如此完美的ubunut怎么可以这样的问题上有瑕疵,万恶的编码 解决zip文件解压后中文文件名的乱码问题: 方法一:  第一步 首先安装7zip和convmv(如果之前没有安装的话)  sudo apt-get install p7zip-full convmv   第二步 假设zip文件名为abc.zi…