渗透之路基础 -- 文件上传
具体还是要根据实战情况来判断分析,本文仅供思路学习和参考
1|0漏洞危害
可以直接上传Shell,导致服务器getshell
2|0漏洞形成
Web应用程序没有对上传文件的格式进行严格过滤 , 还有一部分是攻击者通过 Web服务器的解析漏洞来突破Web应用程序的防护;通常都会出现在,上传功能上
2|1文件上传格式及解析
没有解析漏洞的情况下,格式代码必须要和文件格式一直,否则无法正常解析运行,如果存在解析漏洞的情况下,格式代码可以和不同格式相互解析
之后也会发出关于解析漏洞的文章!
3|0漏洞防御
可以针对文件名、文件大小、文件内容、文件类型等进行防御
-
检查文件上传路径 ( 避免 0x00 截断、 IIS6.0 文件夹解析漏洞、目录遍历 )
-
文件扩展名检测 ( 避免服务器以非图片的文件格式解析文件 )
-
文件 MIME验证 ( 比如 GIF 图片 MIME为 image/gif,CSS 文件的 MIME为 text/css 等 ) 3. 文件内容检测 ( 避免图片中插入 webshell)
-
图片二次渲染 ( 最变态的上传漏洞防御方式 , 基本上完全避免了文件上传漏洞 )
-
文件重命名 ( 如随机字符串或时间戳等方式 , 防止攻击者得到 webshell 的路径 )
注意:若攻击者上传了shell之后,肯定会通过某刀剑进行连接,所以尽量不要暴露文件路径,并且设置访问权限,以进一步防御