资源预览内容
第1页 / 共18页
第2页 / 共18页
第3页 / 共18页
第4页 / 共18页
第5页 / 共18页
第6页 / 共18页
第7页 / 共18页
第8页 / 共18页
第9页 / 共18页
第10页 / 共18页
亲,该文档总共18页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
10 文件包含漏洞 SANGFOR安全服务团队 目录 文件包含漏洞原理解析 开发人员通常会把可重复使用的函数写到单个文件中 在使用某些函数时 直接调用此文件 而无须再次编写 这种调用文件的过程被称为包含 文件包含漏洞的产生原因是在通过引入文件时 由于传入的文件名没有经过合理的校验 或者校检被绕过 从而操作了预想之外的文件 就可能导致意外的文件泄露甚至恶意的代码注入 文件包含漏洞原理解析 因PHP语言所提供的文件包含功能太强大 太灵活 所以大部门文件包含的漏洞都出现在PHP的程序中 当被包含的文件在服务器本地时 就形成的本地文件包含漏洞 当被包含的文件在远程服务器时 就形成的远程文件包含漏洞 文件包含示例 通过文件包含读取本地文件 文件包含示例 通过文件包含读取本地文件 表示父目录 读取敏感文件 常见的敏感信息路径如下 Windows 读取敏感文件 常见的敏感信息路径如下 Linux 远程包含SHELL 远程包含一句话木马 本地包含配合文件上传 假设已经上传一句话图片木马到服务器中 路径为 uploadfile shell jpg图片代码 访问 本地包含配合文件上传 假设已经上传一句话图片木马到服务器中 路径为 uploadfile shell jpg图片代码 访问 漏洞防范 1 严格判断包含中的参数是否外部可控 因为文件包含漏洞利用成功与否的关键点就在于被包含文件是否可以被外部控制 2 路径限制 限制被包含的文件只能在某一文件夹内 禁止目录跳转字符 如 3 包含文件验证 验证被包含的文件是否是白名单中的一员 4 尽量不要使用动态包含 可以在需要包含的页面固定写好 如 include test php 思考与要点 1 PHP中的四个文件包含函数 require require once include include once 因此在挖掘文件包含漏洞时只需要跟踪这四个函数的代码 2 PHP远程包含漏洞需要allow url include为On3 挖掘文件包含漏洞需对代码有一定的基础4 文件包含漏洞大部分出现在PHP中 其他的如ASP ASP NET JSP也会存在 但相对很少5 PHP文件包含漏洞总结http drops wooyun org tips 3827
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号