上传漏洞上传方法总结

本文详细总结了上传漏洞的多种突破方法,包括客户端验证、Content-Type修改、Apache与Nginx服务器的绕过策略、WAF绕过技巧、利用NTFS ADS特性以及文件重命名等。针对不同服务器环境和WAF防护,提供了多种测试和攻击思路,同时讨论了如何通过文件包含、垃圾数据等手段来绕过安全检测。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


title: 上传漏洞[汇总]
copyright: true
top: 0
date: 2018-07-31 22:40:47
tags: 上传漏洞
categories: 渗透测试
permalink:
password:
keywords:
description: 对上传漏洞的大部分上传方式作总结。

最后必然失去的希望就是毒药啊。

个人对上传漏洞的理解在第一章节就说过了,这里稍微复述一下。上传漏洞按个人理解分两种,第一种是代码层的。即代码过滤不严格,或者使用客户端本地校验。第二种是服务层的,比如iis6.0的解析漏洞,apache的解析漏洞。第三种就是前面结合在一起的,比如代码层过滤了部分内容都是能绕过,然后通过服务器层的解析漏洞上传成功。

上传之前要探测环境,获取web容器是IIS还是Apache还是nginx,然后获取脚本语言是PHP还是aspx。最好能获取到他们使用的版本。

上传突破

然后根据一些经验开始做测试,按照下面步骤一步一步来测试。

  1. 如果是客户端验证,禁用JavaScript即可
  2. 如果是content-type验证,抓包修改content-type的数据为image/jpeg
  3. 如果是Apache,尝试上传htaccess文件。一般能上传htaccess就没问题了,排除一些可能会过滤的后缀,比如他过滤了php后缀,你就在htaccess中修改成ppphhhppp,然后上传这个后缀的文件
  4. 如果是Apache,上传m.php2,m.php3,m.php5,m.pht或者m.php.rar.zip.zza.eaa等等测试
  5. 如果是Nginx,图片中嵌入PHP代码然后通过访问m.jpg%00.php或者m.jpg/.php链接菜刀
  6. 如果是Nginx,可以上传内容为<?PHP fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd])?>’);?>的test.jpg,然后访问test.jpg/.php,自动生成shell.php
  7. 如果是黑名单机制的话,可以尝试大小写绕过,如果不行的话试一试别的后缀,比如jsp jspx jspf asp asa cer aspx php php php3 php4 exe exee等等
  8. 如果服务器是win的话,上传m.php(.)(空格)(.)(空格)(.)(空格)多测试几次,或者m.php…测试
  9. 如果服务器是win的话,上传m.php::$DATA测试
  10. 如果服务器是win的话,上传m.php.[空格].[空格].[空格].[空格]测试
  11. 如果代码层会匹配后缀名然后删除的话,上传m.pphphp测试
  12. 如果上传的路径可控的话,一般可以结合00截断上传。比如文件名改成m.jpg,上传路径改成…/upload/m.php%00,如果请求是POST方法的话,要用二进制修改,在hex中把20改成00。上传路径只要出现都可以测试一下截断。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

浪子燕青啦啦啦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值