文件上传 [SUCTF 2019]CheckIn1

news2024/12/28 22:59:10

打开题目

我们用cmd

curl --head +url 查看网站使用的是什么服务器

此题用的是openresty,OpenResty® 是一个基于 Nginx 与 Lua 的高性能 Web 平台

我们上传php,phtml的一句话木马都显示不合法

那我们试试传a.jpg的一句话木马

显示我们一句话木马内容里面包含了<?

我们上传2.jpg

那用其他姿势再看看

上传1234.png

可以制作成图片马,但是需要解析成php文件

正常想到的是.htaccess,但是这个服务器是nginx,而.htaccess是针对apache的

 

我们先打开user.ini文件,auto_prepend_file=1234.png,意思在执行php第一个代码前先执行包含的文件。即1234.png

注意:我们需要在ini文件开头上写上GIF89a作为文件幻术头,才能上传成功

访问一下

发现上传成功,接下来 我们用蚁剑连接下面的这个目录

uploads/cc551ab005b2e60fbdc88de809b2c4b1/index.php
原因:.user.ini中auto_prepend_file函数会在执行前把我们的一句话木马文件包含进来,并解析为php格式,而且这个函数是在执行加载第一个PHP代码之前执行指示(包含的)PHP文件

蚁剑连接,在根目录下找到了flag

 

即使我们这里把ini文件里面的函数改成apppend_file函数

上传目录依旧是

url+     /uploads/c55e0cb61f7eb238df09ae30a206e5ee/index.php

知识点:

  • ./htaccess文件和user.ini文件有何区别?

.htaccess(“分布式配置文件”)是一种Apache服务器配置文件,只能在支持Apache服务器的环境中使用,例如在Linux和Windows系统中安装了Apache服务器。 .htaccess文件应该被用在内容提供者需要针对特定目录改变服务器的配置而又没有root权限的情况下

php.ini(“全局配置文件”),对整个web服务起作用。user.ini是用户自定义的php.ini,通常构造后门和隐藏后门。虽然.user.ini也有限制条件,但是相比.htaccess的用于更加广泛,不仅适用于Apache,还可以在Nginx上操作。不管是nginx/apache/IIS,只要是以fastcgi运行的php都可以用这个方法

auto_prepend_file 表示加载第一个PHP代码之前执行指示(包含的)PHP文件
auto_append_file 表示加载第一个PHP代码之后执行指示(包含的)PHP文件

.user.ini实际上就是一个可以由用户“自定义”的php.ini,我们能够自定义的设置是模式为“PHP_INI_PERDIR 、 PHP_INI_USER”的设置

auto_prepend_file是在文件前插入,而auto_append_file是在文件最后才插入。 

  • 如何查看网站所使用的服务器是什么?

我们可以用cmd,curl --head 域名/IP(如果对方做了版本隐藏可能会看不到是什么服务器)

以上面的题目为例

可以看出网站使用的是 openresty服务器,而OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台

或者使用站长之家查询,网页404报错等等(不适用于此题)

  • 如何生成图片马?

图片马——就是在图片中隐藏一句话木马,和以jpg等为文件后缀的一句话木马不同,前者的本质是图片,后者的本质其实还是文档

图片马就是把一句话木马,通过二进制的方式追加到图片文件末尾,将木马文件和图片合并为另一个图片文件,合并后的图片包含一句话木马而且不影响图片显示,但用记事本等文本编辑器打开,能看到图片末尾的恶意代码。然后将图片上传到网站中,利用网站的漏洞,通常是文件包含漏洞,让网站把上传的图片当成脚本代码解析,从而达到运行恶意代码控制网站服务器的目的。
简单来说就是以文件上传漏洞为基本条件,将可执行的条件写入图片中去,再利用文件包含漏洞来执行图片中存在的一句话木马,从而获取目标服务器的权限。
 

制作方法:

1.将图片用文本方式打开,在末尾粘贴一句话木马(记事本,notepad++等,可能修改后图片无法正常显示)

2.cmd中使用命令 copy 1.jpg/b + 2.php 3.jpg

/b是二进制形式打开,/a是ascii方式打开

实操:桌面上有1.png图片,还有2.php一句话木马文件,在cmd终端下打开,注意三者须在一个目录下

   copy 1.png/b + 2.php/a 5.jpg

  用记事本打开5.jpg,在乱码的末尾发现了我们加上去的一句话木马(图片是能正常显示的)

copy  2.php/a +1.png/b 6.jpg

接下来

   我们依旧用记事本打开6.jpg,在乱码开头便发现了一句话木马(图片无法正常显示)

我们总结知道,两个代码都可以执行得到相同的结果,只是后者的结果,一句话木马在文件内容的首行,不推荐用后者

3.16进制打开图片在末尾添加一句话木马(如010editor)

4.用ps打开图片,在文件简介里面写上一句话木马

知识点见:https://www.cnblogs.com/1ink/p/15101706.html

exif_imagetype()函数

exif_imagetype() 读取一个图像的第一个字节并检查其签名,可以使用exif_imagetype()来避免调用其他具有不受支持的文件类型的exif函数

图像类型常量

如果无法从文件中读取足够的字节来确定图像类型,exif_imagetype() 将发出 E_NOTICE 并返回 false。 

文章参考wp:[SUCTF 2019]CheckIn 1_succ3的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1204276.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[C++ 从入门到精通] 12.拷贝构造函数

&#x1f4e2;博客主页&#xff1a;https://loewen.blog.csdn.net&#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01;&#x1f4e2;本文由 丶布布原创&#xff0c;首发于 CSDN&#xff0c;转载注明出处&#x1f649;&#x1f4e2;现…

22.能被7整除,并且求和。

#include<stdio.h>int main(){int i ,sum0;printf("1-1000能被7整除的数字有&#xff1a;\n");for(i1;i<1000;i){if(i%70){printf("%d ",i);sumsumi;} }printf("\n");printf("能被7整除的数字的和是&#xff1a;%d ",sum);re…

stm32 WIFI模块_8266使用

使用以上配置可以正常回应&#xff0c;其中无论勾选或者不勾选DTR/RTS都可以得到正常回应 ATCWMODE?表示查询当前WiFi状态是处于热点模式&#xff08;AP模式&#xff09;或者是连接其他WiFi的那个模式。通过图片看出这个符号不能省略。 设置AP热点命令格式&#xff1a;ATCWSAP…

手写线性表C++ vector

目录 一、vector基本概念 1.1、构造函数 1.2、析构函数 1.3、插入元素 1.4、删除元素 1.5、重载运算符 二、完整代码 一、vector基本概念 C中的vector是一种动态数组&#xff0c;它可以根据需要自动调整大小。vector是C标准模板库&#xff08;STL&#xff09;中的一个容…

通信原理板块——线性分组码之汉明码

微信公众号上线&#xff0c;搜索公众号小灰灰的FPGA,关注可获取相关源码&#xff0c;定期更新有关FPGA的项目以及开源项目源码&#xff0c;包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等 1、汉明码 (1)常见概念 代数码&…

2756基于微信小程序的图书商城系统

摘要 本文将详细介绍基于微信小程序的图书商城系统的设计和实现。该系统包括服务器端和客户端两部分&#xff0c;能够满足管理员和普通用户的需求。通过对用户需求和功能的分析&#xff0c;本文将详细阐述系统设计的关键环节&#xff0c;包括数据库设计和界面设计。最后&#…

C语言ZZULIOJ1148:组合三位数之一

题目描述 把1、2、3、4、5、6、7、8、9组合成3个3位数&#xff0c;要求每个数字仅使用一次&#xff0c;使每个3位数均为完全平方数。按从小到大的顺序输出这三个三位数。 输入:无 输出:按从小到大的顺序输出这三个三位数&#xff0c;由空格隔开。输出占一行。 提示 若一个数能表…

select在标准输出和套接字上进行监控

selectServerInTCPIPbook.c的内容如下&#xff1a; #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <arpa/inet.h> #include <sys/socket.h> #include <sys/time.h> #include <sys/…

教育局档案室智慧档案库房建设方案

教育局档案室智慧档案库房建设是指教育局为了更好地保存和管理学校、教师、学生等相关档案资料&#xff0c;以及保证这些档案资料的安全性、可靠性和完整性&#xff0c;而建设的一个专门的存储、管理和保护档案资料的场所。 专久智能提供的教育局档案库房建设方案从以下几个方面…

高密度统一存储在影视后期剪辑媒资应用中的优势

影视媒体行业是存储技术发展的重要推动力。Infortrend一直专注于存储的研发&#xff0c; EonStor GS 横向扩展统一存储是适合影视应用的解决方案&#xff0c;高密度机型性能卓越&#xff0c;扩展性高&#xff0c;数据保护技术安全可靠。非常具有性价比&#xff0c;在保证性能和…

msvcp71.dll,msvcr71.dll丢失的最简单的解决方法

在计算机使用过程中&#xff0c;我们常常会遇到一些错误提示&#xff0c;其中之一就是MSVCR71.dll缺失。这个问题可能会导致某些应用程序无法正常运行&#xff0c;给用户带来困扰。本文将介绍5个修复MSVCR71.dll缺失的方案&#xff0c;帮助用户解决这一问题。 一、重新安装相关…

U盘怎么加密?U盘数据该怎么加密?

在使用U盘的过程中&#xff0c;我们会将很多重要数据存放在电脑中&#xff0c;但为了保护文件的安全性&#xff0c;我们需要使用加密来进行保护。那么&#xff0c;U盘数据该怎么加密呢&#xff1f; U盘数据加密方法 想要将普通U盘变成加密U盘&#xff0c;我们需要使用专业的U盘…

如何防止听力下降?

听力受损是不可逆的&#xff0c;一旦听力下降了是无法恢复的&#xff0c;所以当我们出现听力障碍的时候&#xff0c;我们更应该注意我们的耳朵&#xff0c;想想如何能保护我们的残余听力&#xff01; 今天来告诉大家&#xff0c;哪些事是有易于听力的&#xff0c;一起来看看吧…

企业数据备份方案:如何选择适合企业的备份方法?

企事业单位通常配备文件服务器以存储涉及单位无形资产和商业机密的重要数据文件。尽管许多文件服务器配备了Raid以防止数据丢失风险&#xff0c;但员工恶意访问或黑客入侵仍可能导致数据的删除、恶意修改或加密。因此&#xff0c;为维护数据安全&#xff0c;企业需要及时备份操…

nodejs express vue uniapp电影购票系统源码

开发技术&#xff1a; node.js&#xff0c;vscode&#xff0c;HBuilder X express vue elementui uniapp 功能介绍&#xff1a; 用户端&#xff1a; 登录注册 首页显示搜索电影&#xff0c;轮播图&#xff0c;电影分类&#xff0c;最近上架电影 点击电影进入电影详情&am…

基于ssm+vue协同过滤算法的电影推荐系统

基于ssmvue协同过滤算法的电影推荐系统 摘要 电影推荐系统在信息技术发展的背景下日益成为研究的焦点&#xff0c;本研究基于SSM&#xff08;Spring SpringMVC MyBatis&#xff09;框架与Vue.js技术&#xff0c;以协同过滤算法为核心&#xff0c;旨在构建一种高效、准确的电影…

软考网络工程师知识点总结(三)

目录 41、特殊地址 42、子网划分 43、CIDR路由汇聚 44、IP数据报 45、ARP协议 46、ICMP协议 47、IPv6地址表示及类型 48、IPv6地址前缀 49、IPv4过渡IPv6 50、UDP传输层协议 51、TCP传输层协议 52、TCP头部中常见字段的含义&#xff1a; 53、TCP的流量控制和拥塞控…

三国杀中的概率学问题3——王荣

前言 本文是三国杀中的概率学问题系列文章中的一篇&#xff0c;将详细讨论王荣吉占的期望摸牌数问题。并加上连续情形作为拓展。 值得说明的是&#xff0c;本文的思路受到了一篇文章的启发&#xff0c;在此特别鸣谢&#xff0c;这是文章的链接。 王荣吉占的期望摸牌数 王荣的…

深度学习之基于YoloV5电梯电动车预警系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 深度学习在电梯电动车预警系统中的应用是一个复杂的系统工程&#xff0c;涉及计算机视觉、机器学习、深度学习等领域…

4.0 Linux进程前导知识

个人主页&#xff1a;Lei宝啊 愿所有美好如期而遇 冯.诺依曼体系 CPU&#xff1a;运算器&#xff0c;控制器 输入设备&#xff1a;键盘&#xff0c;麦克风&#xff0c;摄像头&#xff0c;鼠标&#xff0c;网卡&#xff0c;磁盘等。 输出设备&#xff1a;显示器&#xff0…