[9] | 您所在的位置:网站首页 › 文件上传绕过方式都有哪些步骤 › [9] |
Windows文件流 Windows目前使用的是NTFS文件系统 NTFS文件系统实现了多文件流特性------一个文件可以对应多个文件流 NTFS环境的一个文件默认使用未命名的文件流 但,同时可以创建其他命名的文件流,并同样可以写入内容 Windows资源管理器默认不显示出文件的命名文件流,这些命名的文件流在功能上和默认使用的未命名文件流一致,甚至可以用来启动程序 未命名文件流与命名文件流测试 采用默认文件流,输入内容 # 写入内容:111,写入文件:test.txt,文件流:1.txt Echo 111 > test.txt:1.txt # 写入内容:test,文件:test.txt,文件流:不指定,即默认 Echo test > test.txt # 写入内容:222,文件:test.txt,文件流:默认文件流 Echo 222 > test.txt::$data采用1.txt文件流时
不指定文件流时,发现此时可以看到写入的内容
指定使用默认文件流,发现上文写入"test"内容变更为“222”,且使用默认数据流打开,以及直接点击查看时,二者内容一致。这说明,平时使用的就是默认数据流,同时我们也可以通过手动数据流的方式,把想要写内容写到同一个文件。
总结 托管在Windows平台的服务,可以利用NTFS文件流特性,完成前后端检测的绕过,并完成文件上传漏洞的利用 具体利用场景 上传功能点----类型检测严格----利用NTFS文件流特性---绕过 Windows+PHP时,特殊效果:默认数据流背后的数据,会直接被认为是数据流写入到文件中,从而绕过检测。 |
CopyRight 2018-2019 实验室设备网 版权所有 |