htaccess绕过上传实验

这篇具有很好参考价值的文章主要介绍了htaccess绕过上传实验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实验目的

利用上传htaccess文件解析漏洞绕过验证进行上传PHP脚本木马

实验工具

  • 火狐:Mozilla Firefox,中文俗称“火狐”(正式缩写为Fx或fx,非正式缩写为FF),是一个自由及开放源代码网页浏览器,使用Gecko排版引擎,支持多种操作系统,如Windows、Mac OS X及GNU/Linux等。
实验内容

什么是网站(web)漏洞?

web漏洞通常是指网站程序上的漏洞,可能是由于代码编写者在编写代码时考虑不周全等原因而造成的漏洞,这些漏洞一旦被恶意攻击者利用,会根据漏洞的危害程度,造成不可估量的损失。

Web常见漏洞

  • SQL注入
  • XSS跨站点脚本
  • 任意文件读取漏洞
  • 上传漏洞
  • CSRF
  • 命令注入
  • 弱口令漏洞
  • 敏感信息泄露漏洞

htaccess绕过上传漏洞解析

htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。

PHP在处理.htaccess文件中的配置时存在漏洞,本地攻击者可能利用此漏洞绕过PHP的某些安全限制。

如果将PHP用作Apache模块的话,就可以使用.htaccess文件中的指令更改配置设置。用户可以使用这些选项更改display_errors之类权限选项,

可以绕过不同函数中的safe_mode或open_basedir安全限制。例如,用户可以通过.htaccess设置session.save_path。

session_save_path()和ini_set()函数中对save_path检查了safe_mode和open_basedir,但在.htaccess中确可以绕过这个检查。

文件上传漏洞在WEB端属于危害比较大的漏洞,一旦成功利用漏洞,可能导致网站被下后门,甚至可以直接拿下服务器权限。

白名单

服务端通过获取上传文件的扩展名来匹配预先定义的合法扩展名数组,如果未能成功匹配的话,认为上传文件不合法,返回报错信息,如果扩展名能成功匹配,则认为上传文件合法,进行文件保存操作。

拿上传图片举例,服务端定义的白名单:

$WhiteList=array("png","jpg","jpeg","gif");

可以看到,上述代码中只允许上传"png","jpg","jpeg","gif"这四种格式文件,上传文件时,服务端会检测后缀,如果所上传的文件格式后缀,没有在白名单允许的范围内,系统会拒绝上传。

黑名单

服务端通过获取上传文件的扩展名来匹配预先定义的非法扩展名数组,如果能成功匹配的话,认为上传文件不合法,返回报错信息,如果扩展名没有匹配到,则认为上传文件合法,进行文件保存操作。

拿上传图片举例,服务端定义的黑名单:

$BlackList=array("php","htaccess","asp","aspx");

根据黑名单列表可以看出,服务器不允许上传攻击中常用的php、htaccess、asp、aspx等脚本文件,也就是说这些文件都会被服务端所拦截,不能上传成功。

下面开始实验

步骤1:寻找上传漏洞,并尝试上传

点击它后,我们看到了网站的首页,看到如下画面

htaccess绕过上传实验,渗透测试学习,apache,安全

我们看到下方显示了允许上传的类型,可以猜测,这应该是一个白名单验证,系统只允许列出的文件后缀进行上传。

首先我们在桌面上找到一个后缀名为.png的图片,然后我们点击浏览,选择创建好的3.png,然后点击提交

然后,我们在桌面创建一个php文件,测试是否能上传成功。

在php文件里写入如下内容,并命名为1.php

<?php eval($_POST['123']);?>            //post会把123当做参数进行传递,eval会执行后面的语句。

eval在php中会将字符串当做代码来执行, 而post的意思是使用post的方式进行传递参数。

一句话木马,顾名思义,它的体积很小,只由一句php代码构成。

点击浏览,选择创建好的1.php,然后点击提交

htaccess绕过上传实验,渗透测试学习,apache,安全

可以看到提示:错误的文件类型,也就是只可以上传它白名单内的内容,如果上传白名单外的东西,会被系统拒绝。

因为在白名单列表中有jpg格式,因此在我们再将它的后缀名改为jpg,命名为123.jpg,查看是否能成功。

htaccess绕过上传实验,渗透测试学习,apache,安全

可以看到,改为jpg可以上传成功。

虽然jpg文件上传成功,但它其中的php代码并不能执行成功,使用中国菜刀也不会连接成功的。

因为jpg是图片格式,不能解析其中的php代码,要想解析php代码,后缀必须为php或者其他可以解析php代码的格式。

  • 提示:这个时候我们就需要对其进行绕过,服务器会检测我们所上传的后缀是否在白名单内,如果不在的话就禁止上传。
步骤2:利用htaccess解析缺陷漏洞绕过上传检测

我们利用htaccess来绕过上传检测,我们创建一个后缀名为.htaccess的文件,文件内容为AddType application/x-httpd-php .jpg 这句话的意思是让Apache服务器识别并解析后缀名.jpg的文件名。

htaccess绕过上传实验,渗透测试学习,apache,安全

  • 提示:上传成功到服务器的.htaccess文件里的代码可以让 .jpg后缀名文件格式的文件名以 php格式解析 所以我们把PHP脚本木马文件的后缀名改为.jpg格式,让.htaccess文件解析PHP脚本木马文件里的php代码 ,使木马上传成功。

我们开始上传1.htaccess文件,我们查看结果。

htaccess绕过上传实验,渗透测试学习,apache,安全

我们找到了flag值,我们把.htaccess文件里的代码上传到服务器后,我们把php脚本木马文件从.php修改成.jpg格式,让.htaccess文件解析php脚本,则木马成功。

总结

在本次试验中,我们尝试多种方法对其进行绕过。

  • 我们再次上传了jpg文件,虽然上传成功但并没有用处,因为Apache把它解析成图片了

  • 首先我们直接上传了php文件,因为白名单中没有php后缀的格式,拒绝上传,因此失败了

  • 接下来上传了htaccess文件,这个上传成功了,爆出了falg值。

因此我们得出结论,需要成功的执行代码,需要两个条件:

  • 上传文件后缀必须要在网站白名单之内,否则无法上传。

  • 上传文件后缀必须是Apache无法识别的后缀。

只有最后一个满足了这两点,因此一句话木马才能上传成功。

因为本实验仅作为测试用,无法连接中国菜刀,在真实的环境中,我们可以将上传木马的地址复制到菜刀里连接,这样就拿到了网站的Shell(具体操作步骤敬请关注本平台的其他相关课程)。文章来源地址https://www.toymoban.com/news/detail-708364.html

到了这里,关于htaccess绕过上传实验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 渗透测试-sqlmap绕过WAF脚本编写

    Sqlmap一款功能强大集成了多种数据库识别及注入方式,多用于识别和利用Web 应用程序注入漏洞的工具,它的优点在于集成了大量 payload,对检测与利用的自动化处理(数据库指纹、访问底层文件系统、执行命令)。 我们之前学习时间盲注的时候,可以针对时间盲注类型的漏洞

    2024年02月09日
    浏览(50)
  • 网络安全|渗透测试入门学习,从零基础入门到精通—渗透中的开发语言

    目录 前面的话 开发语言 1、html 解析 2、JavaScript 用法 3、JAVA   特性 4、PHP 作用 PHP 能做什么? 5、C/C++ 使用 如何学习 关于在渗透中需要学习的语言第一点个人认为就是可以打一下HTML,JS那些基础知识,磨刀不误砍柴工。其次,了解基本的代码后,就可以去学习相关的漏洞知

    2024年02月09日
    浏览(50)
  • 网络安全|渗透测试入门学习,从零基础入门到精通—收集信息篇

    目录 前面的话 1、收集域名信息 1.1、Whois查询 ​编辑1.2、备案信息查询  2、收集敏感信息 3、收集子域名信息 3.1、子域名检测工具 3.2、搜索引擎枚举 3.3、第三方聚合应用枚举 3.4、证书透明度公开日志枚举 本章小结 本人喜欢网络完全的一些知识,自学一些。现在写出来和大

    2024年02月08日
    浏览(51)
  • 【网络安全】文件上传绕过思路

    分享一些文件上传绕过的思路,下文内容多包含实战图片,所以打码会非常严重,可多看文字表达;本文仅用于交流学习, 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。 一次项目渗透时,

    2023年04月21日
    浏览(37)
  • 【渗透测试】Apache Shiro系列漏洞

      🍨 Shiro-550(CVE-2016-4437) 🍦 1、漏洞原理 🍦 2、影响版本 🍦 3、漏洞利用 🍨 Shiro-721 🍦 1、漏洞原理 🍦 2、影响版本 🍦 3、漏洞利用 🍨 Shiro认证绕过漏洞(CVE-2020-1957) 🍦 1、漏洞原理 🍦 2、影响版本 🍦 3、漏洞验证 🍨 Shiro 身份验证绕过 (CVE-2020-13933) 🍦 

    2024年02月06日
    浏览(63)
  • 网络安全|渗透测试入门学习,从零基础入门到精通—动态分析技术工具OllyDbg界面介绍

    目录 动态分析技术调试器 什么是OllyDbg OllyDbg能干什么 OllyDbg窗口介绍 1、反汇编面板窗口 2、信息面板窗口 3、数据面板窗口 4、寄存器面板窗口 5、栈面板窗口 动态分析技术中最重要的工具是调试器,分为用户模式和内核模式两种类型。用户模式调试器是指用来调试用户模式

    2024年02月11日
    浏览(48)
  • CTFhub-文件上传-.htaccess

    首先上传 .htaccess 的文件 .htaccess SetHandler application/x-httpd-php 这段内容的作用是使所有的文件都会被解析为php文件 然后上传1.jpg 的文件   内容为一句话木马 1.jpg ?php echo \\\"PHP Loaded\\\"; eval(@$_POST[\\\'a\\\']); ? 用蚁剑连接 http://challenge-e3884f63b3d65683.sandbox.ctfhub.com:10800/upload/1.jpg

    2024年02月10日
    浏览(33)
  • 24 WEB漏洞-文件上传之WAF绕过及安全修复

    safedog BT(宝塔) XXX云盾 宝塔过滤的比安全狗厉害一些,在真实情况下现在很多网站都是用宝塔 Content-Disposition: 表单数据,一般可更改 name:表单参数值,不能更改,改完之后,数据包是有问题的,跟前端的表单值会对不上,这样后端会无法判断你上传的地方,如果要更改,那

    2024年02月10日
    浏览(49)
  • web安全第六天:绕过白名单监测实现文件上传

    3.1黑名单概念(随机构造一个后缀名,能上传即为黑名单) 一般情况下,代码文件里会有一个数组或者列表,该数组或者列表里会包含一些非法的字符或者字符串,当数据包中含有符合该列表的字符串时,即认定该数据包是非法的。 3.2如何确认黑白名单 因为黑名单是不允许

    2024年02月11日
    浏览(38)
  • 24 WEB漏洞-文件上传之WAF绕过及安全修复_阿里云盾waf绕过怎么修复

    目录 WAF绕过 上传参数名解析:明确哪些东西能修改? 常见绕过方法: `符号变异-防匹配(’ \\\" ;)` 数据截断-防匹配(%00 ; 换行) 重复数据-防匹配(参数多次) 搜索引擎搜索fuzz web字典 文件上传安全修复方案 WAF绕过 safedog BT(宝塔) XXX云盾 宝塔过滤的比安全狗厉害一些,在真实情况下现

    2024年02月20日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包