渗透测试培训内容关于文件方面有哪些

白癜风疗效 http://disease.39.net/yldt/bjzkbdfyy/6203670.html

渗透测试中,关于文件的漏洞,有文件上传、文件下载、文件包含、文件解析等方面的漏洞,因为可以直接拿下webshell,所以这是一个非常严重的安全漏洞,下面把具体的漏洞利用场景复述一下。

文件上传:

前端js校验+burpsuite抓包修改MIME类型校验content-type

黑名单绕过:

大小写绕过

windows使用.

windows使用空格

windows使用::$DATA

双写

后缀linuxphtml

解析漏洞:apache解析漏洞从右往左进行解析形如aaa.bbb.ccc.ddd先判断ddd是否是可以识别的后缀名如果不是尝试解析ccc依次类推直到解析完毕

%00截断要求:php5.3.9  magic_quotes_gpc设置为Off

条件竞争

首先上传需要上传的文件进行inturder

第二访问上传的文件

解析漏洞中间件apache解析漏洞

从右往左进行解析形如aaa.bbb.ccc.ddd先判断ddd是否可以识别的后缀名如果不是尝试解析ccc依次类推直到解析完毕

iis解析漏洞

启动iis

打印当前时间%=now()%

asp.net中默认支持的后缀名有aspasacercdx

iis6.0/6.5

    1.在文件名以.sapasacercdx作为结尾的此时该目录下的文件会优先当作asp来解析

    2.文件名包含.asp;.asa;.cer;.cdx;无论后缀为何均优先当作.asp来解析

iis7.0/7.5

nginx

  对任意文件名,在后面添加任意文件名.php的解析漏洞,比如原本文件名是test.jpg,可以添加为test.jpg/x.php进行解析攻击

低版本在文件名后加上%00.php此时当作php来解析

白名单绕过

文件包含

文件内容校验,图片马

二次渲染上传gif文件

%00截断

上传文件后缀校验,修改后缀即可

文件包含(包含的文件名,用户可控)

当使用include包含文件失败时不影响下面代码的执行

当使用require包含失败时此时抛出异常下面代码无法正常执行

include包含的文件成功

使用require_once再去包含直接跳过

相关函数

    include    include_once    require    require_once    fopen+fread    file_get_contents

伪协议的使用

php://filter/read=convert.base64-encode/resource=

会生成一个base64编码

php://input允许从请求体中读取数据

getshell

连接antsword

需要用post进行上传在antsword中添加数据时需要添加请求体

data:text/plain

data:text/plain;base64

使用data:text/plain;base64,时,需要先将代码进行base64编码

zip协议

file=zip://[压缩文件路径+压缩文件名]#[压缩文件内的子文件名]

zip协议和文件后缀名无关

可以使用绝对路径

配合日志文件getshell

服务器日志文件用来记录客户端的访问情况

session和cookie

cookie每次在浏览器中携带键值对传递

session存储在服务器端

跟服务器同一个磁盘下的文件

本地文件包含

远程文件包含

需要改php.ini里面的文件

allow_url_fopen=On

allow_url_include=On

远程文件包含

读取


转载请注明:http://www.aierlanlan.com/rzfs/6913.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了