渗透测试[文件上传篇]

一.绕过 js 检测方法

按 F12 使用网页审计元素,把校验的上传文件后缀名文件删除,即可上传。

把恶意文件改成 js 允许上传的文件后缀,如 jpg、gif、png 等,再通过抓包 工具抓取 post 的数据包,把后缀名改成可执行的脚本后缀如 php 、asp、jsp、 net 等。即可绕过上传。

把s.php改变后缀名为s.jpg

<?php phpinfo();eval($_POST['cmd']);?>

#一句话木马

点击上传文件

抓包,把文件名后缀改为php

上传成功

二.绕过 contnet-type 检测上传

服务端是通过 content-type 判断类型, content-type 在客户端可被修改。

三.绕过黑名单检测

上传图片时,如果提示不允许 php、asp 这种信息提示,可判断为黑名单限制, 上传黑名单以外的后缀名即可。 在 iis 里 asp 禁止上传了,可以上传 asa cer cdx 这些后缀,如在网站里允许.net 执行 可以上传 ashx 代替 aspx。如果网站可以执行这些脚本,通过上传后门即可 获取 webshell。 在不同的中间件中有特殊的情况,如果在 apache 可以开启 application/x-httpd-php 在 AddType application/x-httpd-php .php .phtml .php3 后缀名为 phtml 、php3 均被解析成 php 有的 apache 版本默认就会开启。 上传目标中间件可支持的环境的语言脚本即可,如.phtml、php3。

就是把不同的文件后缀放上去试试,有的成功上传后还解析不了。我个人觉得没什么用 

 1.htaccess重写解析绕过上传
<FilesMatch "jpg">
SetHandler application/x-httpd-php
</FilesMatch>
#意思是把jpg文件当php文件解析

过程就是把这两个文件放进去

然后访问s.jpg

2.大小写绕过

源代码中没有过滤PHP,phP为后缀的文件。所以直接就注入了

3.空格绕过上传

例如这题,只用($_FILES['upload_file']['name']);获取了上传文件的名称,却没有拿trim包着删除文件名中可能存在的空白字符。这就导致了空格绕过的安全漏洞

有些浏览器是不支持上传带空格的文件的,所以拿burp suite抓包,加空格后再上传。

4.利用 windows 系统特征绕过上传

在 windows 中文件后缀名. 系统会自动忽略.所以 shell.php. 像 shell.php 的效果一 样。所以可以在文件名后面机上.绕过。

 但是这题利用的不是windows系统特性

5.NTFS 交换数据流::$DATA 攻击绕过上

在一般情况下,大多数应用程序会将 ::$DATA 部分视为文件名的一部分,而并非数据流。所以,对于大多数应用程序来说,s.php::$DATAs.php 是等效的,都会被视为同一个文件名。

burpsuite 抓包,修改后缀名为 php::$DATA

上传成功 

6.利用 windows 环境的叠加特征绕过上传攻击

首先抓包上传 a.php:.php 上传会在目录里生成 a.php 空白文件,接着再次提交把 a.php 改成 a.>>

文件名中,s.php:.php 这样的命名实际上是一个非常特殊且不常见的情况。在这种情况下,s.php: 是文件名的基本部分,而 .php 可能被视为文件的扩展名。

 

上传的文件名为s.php但是是为空的

重新输入s.<<<就有内容了

在 windwos 中如果上传文件名 moonsec.php:.jpg 的时候,会在目录下生产空白的 文件名 moonsec.php 再利用 php 和 windows 环境的叠加属性, 以下符号在正则匹配时相等

双引号" 等于 点号.

大于符号> 等于 问号?

小于符号< 等于 星号*

所以s.<<<或s.>>>就等价于s.***或s.???匹配相应的文件然后写入内容

7.文件上传双写绕过漏洞分析

代码分析

 

 四.文件上传参数目录可控攻击

1.目录可控 get绕过上传

传入一个文件然后文件名和路径由$img_path = $_GET['save_path']."/".rand(10, 99).date("YmdHis").".".$file_ext; 定义。

 

具体就是先传入s.jpg绕过白名单过滤,在get那里传入文件名%00是截断下面文件名的

2.目录可控 POST绕过上传

 

五.. 文件头检测绕过上传

有的文件上传,上传时候会检测头文件,不同的文件,头文件也不尽相同。常见 的文件上传图片头检测 它检测图片是两个字节的长度,如果不是图片的格式, 会禁止上传。

常见的文件头

 JPEG (jpg),文件头:FFD8FF

 PNG (png),文件头:89504E47

 GIF (gif),文件头:47494638

 TIFF (tif),文件头:49492A00

 Windows Bitmap (bmp),文件头:424D 

1.制作图片一句话

使用  copy s.jpg/b + s.php/a shell.jpg 将 php 文件附加再 jpg 图片上,直接上传即可。 

代码分析

放入图片马

执行

2.getimagesize 是获取图片的大小,如果头文件不是图片会报错直接可以用图片马 绕过检测。、

3.图片二次渲染分析代码

只允许上图片二次渲染分析代码 只传 JPG PNG gif 在源码中使用 imagecreatefromgif 函数对图片进行二次 生成。生成的图片保存在,upload 目录下。

渗透步骤

双击点开

 查看上传到网站上渲染过的图片和原本的图片

4.文件名控代码分析

pathinfo($file_name, PATHINFO_EXTENSION)pathinfo() 函数用于返回文件路径的信息。通过设置第二个参数 PATHINFO_EXTENSION,可以获取文件的扩展名部分

 把post请求改为s.php%001.jpg,pathinfo()会把后面的1.jpg过滤掉

然后把%00编码

六.数组绕过代码分析

  • 22
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
有道云笔记是一款文件管理和云存储平台,用户可以将各种文件上传至云端进行保存和管理。针对有道云笔记的渗透测试文件上传核题,主要是测试目标是否存在文件上传漏洞。 文件上传漏洞是指攻击者通过上传恶意文件或者利用上传功能绕过限制,成功在目标服务器上执行任意代码或者获取未授权的访问权限。攻击者可通过上传特定类型的文件,利用后台执行逻辑漏洞或者文件解析漏洞,从而实现对目标系统的攻击或控制。 针对有道云笔记的文件上传漏洞,常见的测试方法包括: 1. 尝试上传各种类型的文件:测试能否上传系统可执行文件、脚本文件或者危险的文件类型。 2. 绕过后台验证:尝试修改请求报文、绕过文件类型检查、篡改上传文件路径等,测试服务器是否能正确地执行上传操作的检查。 3. 文件解析漏洞测试:测试上传的文件是否能够被服务器直接解析,并且触发对应的解析漏洞。 4. 文件重命名与遍历:测试能否修改上传文件的文件名,并尝试通过../等目录遍历操作访问到其他敏感文件。 针对发现的漏洞和问题,需要将测试结果整理成详细的渗透测试报告,包括漏洞描述、危害程度评估和修复建议等。然后与有道云笔记的开发团队和管理员进行沟通,提供测试结果和修复建议,并跟踪漏洞修复进展。 及时发现和修复文件上传漏洞,对于保护用户数据和防止潜在的攻击十分重要。因此,有道云笔记应该充分重视渗透测试文件上传核题,加强安全意识和漏洞修复的流程,确保用户数据的安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值