文件包含漏洞和上传漏洞

文章目录

  • 文件包含漏洞
    • PHP文件包含漏洞
    • 远程文件包含漏洞
    • 截断包含
    • JSP文件包含
    • 文件包含漏洞预防
  • 文件上传漏洞
      • 解析漏洞
      • 服务端检测
      • 目录验证
        • 文件内容检测
        • 预防方法
    • 一句话木马

sql注入,有sql盲注,基于布尔的注入,还有基于时间的注入,union的使用条件 字段数保持一致,可以用其他数据凑数补上。

文件包含漏洞

PHP文件包含漏洞

​ 文件包含:共用函数写到单个文件中,然后多次调用,

​ 文件包含漏洞:包含的文件可以被替换成恶意文件。

PHP提供了四个文件包含函数,分别是include() 找不到被包含的文件只会产生警告

include 找不到被包含的文件时只会产生警告(E_WARNING),脚本将继续执行;
require 找不到被包含的文件时会产生致命错误(E_ COMPILE_ERROR),并停止脚本;
include _once: 此语句和include()语句类似,唯一区别是如果该文件中的代码已经被包含,则不会再次包含;
require_once: 此行语句和require()语句类似,唯一区 别是如果该文件中的代码已经被包含,则不会再次包含。

​ 比如可以上传一个txt文件,可以上传一个含有PHP语句。可以尝试去让网站执行txt中的语句。黑客会对数据库配置文件感兴趣。把参数的值改为配置文件所在目录,可以让利用漏洞让信息显现出来。

远程文件包含漏洞

​ 7.3以下的版本可以包含远程文件

​ 发生问题一般,一般用远程文件。

要想利用文件包含漏洞的利用

Include()等函数通过动态变量的方式引入需要包含的文件;
用户能够控制该动态变量

读取敏感文件 在某些警告中包含敏感路径

本地包含配合文件上传 很多文件不允许远程包含,但很多网站提供上传功能比如上传头像,文档等。

包含Apache日志文件

​ 上传的木马,可能被网站杀毒软件删除,可以利用access日志文件access.log

​ 去包含日志文件,让文件中出现一些代码,那么黑客可以把代码放到url里面,然后日志文件记录下url+代码

​ 这些代码要用url编码,这个是黑客不想看到的,被编码后的代码就不能被执行,所有可以用fiddler拦截请

你可能感兴趣的:(渗透测试,php,sql,数据库,渗透测试,web安全)