IIS短文件名泄露漏洞
1、windows的短文件名机制
(1)介绍
为了兼容16位MS-DOS程序,Windows为文件名较长的文件(和文件夹)生成了对应的windows 8.3 短文件名。
dir /x
- 列出当前目录的子目录和文件,以及相应的8.3兼容名称(如果有的话)
- win10,默认是没有开启8.3兼容特性,无法显示短文件名
(2)命令
fsutil behavior query disable8dot3 检查NTFS驱动是否开启8.3兼容特性
fsutil behavior set disable8dot3 1 关闭8.3兼容特性
fsutil behavior set disable8dot3 0 开启8.3兼容特性
fsutil file setshortname <longname> <8.3name> 手工指定一个8.3短名称
(3)短文件名特征
短文件名的长度固定(xxxxxx~xxxx),因此黑客可直接对短文件名进行暴力破解,从而访问对应的文件。
举个例子,有一个数据库备份文件 backup_www.abc.com_20190101.sql,它对应的短文件名是 backup~1.sql 。因此黑客只要暴力破解出 backup~1.sql 即可下载该文件,而无需破解完整的文件名。
短文件名有以下特征:
1) 只有前六位字符直接显示,后续字符用~1指代。其中数字1还可以递增,如果存在多个文件名类似的文件(名称前6位必须相同,且后缀名前3位必须相同)。
2) 后缀名最长只有3位,多余的被截断。
3) 访问构造的某个存在的短文件名,会返回404
4) 访问构造的某个不存在的短文件名,会返回400
2、漏洞介绍
漏洞影响版本:IIS 5.0-10.0全系列版本
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)