当前位置: 首页 > news >正文

刷题学习记录(文件上传)

[GXYCTF 2019]BabyUpload

知识点:文件上传+.htaccess+MIME绕过

题目直接给题目标签提示文件上传的类型

 思路:先上传.htaccess文件,在上传木马文件,最后蚁剑连接

上传.htaccess文件

再上传一个没有<?的shell

 但是要把image/png 改成image/jpeg,不然会被拦截过滤

蚁剑连接

找到flag

[NISACTF 2022]bingdundun~

知识点:文件上传+PHP伪协议+phar

环境只能上传图片或压缩包

上传一个图片马,上传成功了但是蚁剑返回的数据为空

 抓包看一下,文件类型和上一题的一样,但是上传还是成功了,问题就是蚁剑连接没有数据

 改文件类型,结果还是一样

 看了wp之后才知道要上传phar文件

<?php$phar = new Phar("exp.phar"); $phar->startBuffering();$phar->setStub("<?php __HALT_COMPILER(); ?>"); $phar->addFromString("test.php", '<?php eval($_REQUEST[8]);?>'); $phar->stopBuffering();
?>

生成了exp.phar,里面的test.php里就写了一句话木马(defender报毒警告)

这个冰墩墩有点挑,只喜欢压缩包和图片,用zip处理
将exp.phar重命名为exp.zip,上传成功

然后你需要观察,可以看到在打开靶机后,有个upload超链接,点进去发现url加上了一个参数“bingdundun”,如下:

http://1.14.71.254:xxxxx/?bingdundun=upload

传参

http://1.14.71.254:xxxxx/?bingdundun=phar://xxxxxxxxxxxxxxxxxxxxxxxx.zip/67

 

 然后就是进行蚁剑连接,但是一直返回数据为空

 如果直接上传木马的压缩包,会直接报毒,最好就是改后缀上传

别人的wp

但是到我这就会一直连不上蚁剑,页面的回显还一直是index.php

所以到这我有点疑惑

笔记

phar://

环境:可上传png、zip
首先写一个一句话木马shell.php接着压缩成zip文件。上传文件后使用shell工具进行连接。
http://localhost/?url=phar://uploads/63e93ffe53f03e93bb0a0249152d243874e31c9b.zip/shell

zip://

环境:可上传png、zip
首先写一个一句话木马shell.php接着压缩成zip文件。直接上传zip文件,然后使用shell工具进行连接。
http://localhost/?url=zip:///var/www/html/upload/892e38cea0c47c744ecc60ccacc94c23.zip%23shell

 PHP 伪协议 phar:// 

PHP 伪协议 phar:// 是一种用于访问和操作 PHP 归档文件(.phar 文件)的协议。它可以被滥用并导致文件上传漏洞。

当服务器端应用程序接受用户上传的文件并未进行充分验证时,攻击者可能会利用此漏洞通过上传一个伪装成图片或其他类型文件的 PHP 代码文件来执行恶意代码。

具体来说,当攻击者上传一个以 phar:// 开头的文件名到服务器时,PHP 在处理该文件时会将其视为一个归档文件并尝试解析。攻击者可以构造恶意的 .phar 文件,在其中包含 PHP 代码,然后将文件名伪装成其他类型的文件扩展名,例如 image.png

一旦服务器端应用程序接受并存储了这个文件,攻击者可以通过请求绕过文件类型验证,然后再通过 phar:// 协议来访问该文件。这将导致 PHP 解析并执行该文件中嵌入的恶意代码,从而使攻击者能够在服务器上执行任意的操作或获取敏感信息。

使用

当使用 phar:// 伪协议时,PHP 解析引擎会将该协议作为资源封装器来处理,允许访问和操作 .phar 归档文件中的内容。以下是 phar:// 伪协议的一些常见用法:

  1. 访问 .phar 归档文件中的文件:可以通过指定 .phar 文件的路径来访问其中包含的文件。例如,phar://path/to/archive.phar/file.txt 可以访问归档文件 archive.phar 中的 file.txt

  2. 读取 .phar 归档文件中的内容:可以像读取普通文件一样使用 file_get_contents() 或 fopen() 等函数来读取 .phar 归档文件中的内容。

  3. 执行 .phar 归档文件中的代码:可以使用 include 或 require 等 PHP 包含文件的函数来执行 .phar 归档文件中的 PHP 代码。这是利用 phar:// 协议进行文件上传漏洞攻击的关键。

 [MoeCTF 2022]what are y0u uploading?

知识点:文件上传+特洛伊文件

进入环境简单上传一张图片得到的回显是

 一看还规定了上传的文件名

那就重新上传文件,更改文件名

 最后得到的回显就是flag

 拓展:

特洛伊文件

特洛伊文件(Trojan file)是一种恶意软件文件,通常通过欺骗用户下载和执行来感染计算机系统。它通常伪装成看似无害或有用的文件,并通过破坏计算机系统的安全性来实现攻击。

特洛伊文件得名于古希腊传说中的特洛伊木马,因为它们隐藏在看似无害的文件中,以欺骗用户为手段。

特洛伊文件可以采取多种形式,例如文档、多媒体文件或执行文件等。攻击者可以将其放置在可信任的下载网站或通过恶意附件的方式伪装成电子邮件发送给受害者。当用户下载和运行这些文件时,特洛伊文件就开始感染计算机系统,并且在计算机系统中执行各种恶意活动,如窃取用户敏感信息、控制计算机、损坏数据等。

危害

当特洛伊文件被执行时,它可能会执行以下一些恶意活动:

  1. 后门访问:特洛伊文件可能在受感染的计算机上创建一个后门,使攻击者可以远程访问和控制计算机。这样,攻击者可以执行各种恶意操作,例如窃取信息、安装其他恶意软件、删除文件等。

  2. 信息窃取:特洛伊文件可以用于窃取用户的敏感信息,例如登录凭据、银行账户信息、个人身份信息等。这些信息可以被用于个人利益或进一步的攻击行动。

  3. 键盘记录:某些特洛伊文件可以监视用户的键盘输入,记录敲击的按键,以获取密码和其他敏感信息。

  4. 拒绝服务攻击(DDoS):特洛伊文件可以使受感染的计算机成为一个“僵尸”机器,并与其他被感染的计算机一起发起分布式拒绝服务攻击。这将导致目标服务器过载,无法正常提供服务。

  5. 损坏或删除文件:特洛伊文件可以对系统文件、个人文件或重要数据进行破坏或删除。

 [SWPUCTF 2022 新生赛]Ez_upload

知识点:文件上传+.htaccess+MIME绕过

根据题目标签上传.htaccess文件

 接着上传图片马,跟第一题的上传类型一样,要改文件类型

 蚁剑连接成功

 但是flag不在flag文件里

 看到别人的wp发现flag不在文件中,而是在phpinfo中,但是flag好像被人删了

http://node5.anna.nssctf.cn:28004/upload/9ad9b10d407fbc93c318338c4db0314b/1234.png?cmd=phpinfo();

http://node5.anna.nssctf.cn:28004/upload/9ad9b10d407fbc93c318338c4db0314b/1234.png?cmd=system(%22ls+/%22);

 

相关文章:

刷题学习记录(文件上传)

[GXYCTF 2019]BabyUpload 知识点&#xff1a;文件上传.htaccessMIME绕过 题目直接给题目标签提示文件上传的类型 思路&#xff1a;先上传.htaccess文件&#xff0c;在上传木马文件&#xff0c;最后蚁剑连接 上传.htaccess文件 再上传一个没有<?的shell 但是要把image/pn…...

接口管理——Swagger

Swagger是一个用于设计、构建和文档化API的工具集。它包括一系列工具&#xff0c;如Swagger Editor&#xff08;用于编辑Swagger规范&#xff09;、Swagger UI&#xff08;用于可视化API文档&#xff09;和Swagger Codegen&#xff08;用于根据API定义生成客户端库、server stu…...

基于Python+WaveNet+MFCC+Tensorflow智能方言分类—深度学习算法应用(含全部工程源码)(三)

目录 前言引言总体设计系统整体结构图系统流程图 运行环境模块实现1. 数据预处理2. 模型构建1&#xff09;定义模型结构2&#xff09;优化损失函数 3. 模型训练及保存1&#xff09;模型训练2&#xff09;模型保存3&#xff09;映射保存 相关其它博客工程源代码下载其它资料下载…...

(第5天)进阶 RHEL 7 安装单机 Oracle 19C NON-CDB 数据库

进阶 RHEL 7 安装单机 Oracle 19C NON-CDB 数据库(第5天) 真快,实战第 5 天了,我们来讲讲 19C 的数据库安装吧!19C 是未来几年 Oracle 数据库的大趋势,同样的作为长期稳定版,11GR2 在 2020 年 10 月份官方就宣布停止 Support 了,19C 将成为新的长期稳定版,并持续支持…...

AI自动生成代码工具

AI自动生成代码工具是一种利用人工智能技术来辅助或自动化软件开发过程中的编码任务的工具。这些工具使用机器学习和自然语言处理等技术&#xff0c;根据开发者的需求生成相应的源代码。以下是一些常见的AI自动生成代码工具&#xff0c;希望对大家有所帮助。北京木奇移动技术有…...

jmeter和postman的对比

1.创建接口用例集&#xff08;没区别&#xff09; Postman是Collections&#xff0c;Jmeter是线程组&#xff0c;没什么区别。 2.步骤的实现&#xff08;有区别&#xff09; Postman和jmeter都是创建http请求 区别1&#xff1a;postman请求的请求URL是一个整体&#xff0c;j…...

深度学习在人体动作识别领域的应用:开源工具、数据集资源及趋动云GPU算力不可或缺

人体动作识别检测是一种通过使用计算机视觉和深度学习技术&#xff0c;对人体姿态和动作进行实时监测和分析的技术。该技术旨在从图像或视频中提取有关人体姿态、动作和行为的信息&#xff0c;以便更深入地识别和理解人的活动。 人体动作识别检测的基本步骤包括&#xff1a; 数…...

科技提升安全,基于YOLOv6开发构建商超扶梯场景下行人安全行为姿态检测识别系统

在商超等人流量较为密集的场景下经常会报道出现一些行人在扶梯上摔倒、受伤等问题&#xff0c;随着AI技术的快速发展与不断普及&#xff0c;越来越多的商超、地铁等场景开始加装专用的安全检测预警系统&#xff0c;核心工作原理即使AI模型与摄像头图像视频流的实时计算&#xf…...

二叉树的最大深度

问题描述&#xff1a; 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3示例 2&#xff1a; 输入&#xff1…...

nginx配置正向代理支持https

操作系统版本&#xff1a; Alibaba Cloud Linux 3.2104 LTS 64位 nginx版本&#xff1a; nginx-1.25.3 1. 下载软件 切换目录 cd /server wget http://nginx.org/download/nginx-1.25.3.tar.gz 1.1解压 tar -zxvf nginx-1.25.3.tar.gz 1.2切换到源码所在目录…...

奥比中光 Femto Bolt相机ROS配置

机械臂手眼标定详解 作者&#xff1a; Herman Ye Auromix 测试环境&#xff1a; Ubuntu20.04/22.04 、ROS1 Noetic/ROS2 Humble、X86 PC/Jetson Orin、Kinect DK/Femto Bolt 更新日期&#xff1a; 2023/12/12 注1&#xff1a; Auromix 是一个机器人爱好者开源组织。 注2&#…...

scala表达式

1.8 表达式&#xff08;重点&#xff09; # 语句(statement)&#xff1a;一段可执行的代码# 表达式(expression)&#xff1a;一段可以被求值的代码&#xff0c;在Scala中一切都是表达式 - 表达式一般是一个语句块&#xff0c;可包含一条或者多条语句&#xff0c;多条语句使用“…...

uniapp,点击选中并改变颜色,第二次点击取消选中状态

一、效果图 二、代码实现 字符串的indexOf和数组的indexOf用法一致&#xff01; arr.indexOf(item) 该方法返回某个元素在数组中的位置。若没检索到&#xff0c;则返回 -1。 关键代码&#xff1a;(通过:class绑定) :class"selectList.indexOf(sub.type) ! -1 ? right_ite…...

mmyolo的bbox_loss和检测bbox都是空

最近用mmyolo训练自己的数据集的时候发现训练的时候loss_bbox0&#xff0c;测试和eval的时候结果也全是空的&#xff0c;排除了数据集读取的问题&#xff0c;最后发现是config中自定义了自己的类别但是没有传给dataset。。。 简而言之&#xff0c;在自定义了数据集里的metainf…...

Linux——基本指令(二)

​ 个人主页&#xff1a;日刷百题 系列专栏&#xff1a;〖C语言小游戏〗〖Linux〗〖数据结构〗 〖C语言〗 &#x1f30e;欢迎各位→点赞&#x1f44d;收藏⭐️留言&#x1f4dd; ​ ​ 写在前面&#xff1a; 紧接上一章&#xff0c;我们在理解接下来的命令之前&#xff0c…...

渲染农场对工业产品渲染带来的意义与优势?

随着科技的进步&#xff0c;利用精细渲染图来呈现和推广工业设计的创新已成为行业标准。这些图像在产品研发、设计评审和营销阶段起着关键作用&#xff0c;同时对产品最终的成功也产生深远影响。然而&#xff0c;由于产品设计日渐复杂&#xff0c;制作渲染图的任务变得极具挑战…...

产品入门第二讲:Axure产品元件库的使用

&#x1f4da;&#x1f4da; &#x1f3c5;我是默&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; ​​​​ &#x1f31f;在这里&#xff0c;我要推荐给大家我的专栏《Axure》。&#x1f3af;&#x1f3af; &#x1f680;无论你是编程小白&#xff0c;还是…...

(第7天)Linux 静默安装单机 Oracle 19C 数据库

Linux 静默安装安装单机 Oracle 19C 数据库(第7天) 很多朋友经常会问,如果生产环境不允许安装 Linux 图形化界面怎么办?是不是有其他的方式来安装部署 Oracle 数据库呢?答案是肯定的! 我们可以通过命令行的方式来静默安装,不调用图形化界面,当然也就没有那么简单了!…...

智能优化算法应用:基于入侵杂草算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于入侵杂草算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于入侵杂草算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.入侵杂草算法4.实验参数设定5.算法结果6.…...

数据挖掘目标(Kaggle Titanic 生存测试)

import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns1.数据导入 In [2]: train_data pd.read_csv(r../老师文件/train.csv) test_data pd.read_csv(r../老师文件/test.csv) labels pd.read_csv(r../老师文件/label.csv)[Su…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

Cursor实现用excel数据填充word模版的方法

cursor主页&#xff1a;https://www.cursor.com/ 任务目标&#xff1a;把excel格式的数据里的单元格&#xff0c;按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例&#xff0c;…...

<6>-MySQL表的增删查改

目录 一&#xff0c;create&#xff08;创建表&#xff09; 二&#xff0c;retrieve&#xff08;查询表&#xff09; 1&#xff0c;select列 2&#xff0c;where条件 三&#xff0c;update&#xff08;更新表&#xff09; 四&#xff0c;delete&#xff08;删除表&#xf…...

边缘计算医疗风险自查APP开发方案

核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接&#xff1a;3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯&#xff0c;要想要能够将所有的电脑解锁&#x…...

抖音增长新引擎:品融电商,一站式全案代运营领跑者

抖音增长新引擎&#xff1a;品融电商&#xff0c;一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中&#xff0c;品牌如何破浪前行&#xff1f;自建团队成本高、效果难控&#xff1b;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...

ardupilot 开发环境eclipse 中import 缺少C++

目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

AirSim/Cosys-AirSim 游戏开发(四)外部固定位置监控相机

这个博客介绍了如何通过 settings.json 文件添加一个无人机外的 固定位置监控相机&#xff0c;因为在使用过程中发现 Airsim 对外部监控相机的描述模糊&#xff0c;而 Cosys-Airsim 在官方文档中没有提供外部监控相机设置&#xff0c;最后在源码示例中找到了&#xff0c;所以感…...

DingDing机器人群消息推送

文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人&#xff0c;点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置&#xff0c;详见说明文档 成功后&#xff0c;记录Webhook 2 API文档说明 点击设置说明 查看自…...