BugKu:Flask_FileUpload

1.打开此题

通过题目知道这个是一个关于Flask的文件上传的漏洞题目

2.查看网页源代码

Flask是一个使用Python编写的轻量级Web应用框架。

这里又提示说用python来运行结果,那很有可能就是要通过python脚本来抓取flag

3.编辑Python脚本

工具:pycharm

文件类型:在这个文件的路径上找到file文件,然后修改文件后缀为.jpg或.png都可以

代码:为什么是这个代码呢,下面解答!!!

import os
os.system('ls / ')

4.上传脚本文件

提示文件上传成功,但是没有flag呀,差点就要放弃了,先别着急,查看一下源代码

小结:这里有flag文件说明我们的代码没错,我们来探究其原因。

首先对于这个有flask构建的web文件上传程序,其中包含了一个文件上传的端点 /uploader。当客户端通过 POST 请求发送文件到 /uploader 时,服务器会检查是否有文件被上传,然后将文件保存到指定的上传文件夹中。在文件保存后,os.system(' ls /') 这行代码被执行,它会在服务器上执行 ls / 命令,列出根目录下的所有文件和文件夹。

5.抓取flag文件

修改代码:

import os
os.system('cat /flag')

文件类型:我这里用的是.jpg,可以体验一下不同文件类型是否也能拿到结果

上传文件,与之前的上传步骤是一样的,拿到flag!!!

6.学有所思

flask框架:

Flask是一个非常小的PythonWeb框架,被称为微型框架;只提供了一个稳健的核心,其他功能全部是通过扩展实现的;意思就是我们可以根据项目的需要量身定制,也意味着我们需要学习各种扩展库的使用。

文件上传漏洞:

文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。这种攻击方式是最为直接和有效的,“文件上传” 本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。如果服务器的处理逻辑做的不够安全,则会导致严重的后果。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

第十一届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组

第十一届蓝桥杯大赛软件赛省赛C/C 大学 B 组 文章目录 第十一届蓝桥杯大赛软件赛省赛C/C 大学 B 组1、字串排序2、门牌制作3、既约分数4、蛇形填数5、跑步锻炼6、七段码7、成绩统计8、回文日期9、子串分值和10、平面切分 1、字串排序 2、门牌制作 #include<iostream>#def…

服务注册 Zookeeper

服务注册 Zookeeper 1、配置并启用 Zookeeper # application.yml dubboregistryaddress: zookeeper://localhost:2181# dubbo.properties dubbo.registry.addresszookeeper://localhost:2181<dubbo:registry address"zookeeper://localhost:2181" />address …

YOLOv5实例分割

目录 一,准备工作 1.1 标签数据解释: 1.2 数据集格式转换方法汇总 图片和JSON在一个文件夹的形式,通过下面的代码会再相同文件夹下生成对应的txt文件 方式2: 二,训练、测试、检测 一,准备工作 用conda创建自己的环境 安装项目路径下的requirements.txt 数据集准备…

快速获取文件夹及其子文件夹下的所有文件名

1、在文件夹中新建文本文档&#xff0c;命名为“命令.txt” 2、输入以下内容 tree /F > 文件名.txt dir *.* /B > 文件名.txt 其中文件名和文件格式可以是任意的&#xff0c;tree命令可生成文件及其子文件夹下所有文件的名称&#xff0c;dir命令只生成当前目…

OKR管理模式:企业新引擎,驱动未来发展

在当今竞争激烈的市场环境中&#xff0c;越来越多的企业开始采用OKR&#xff08;Objectives and Key Results&#xff0c;目标与关键成果&#xff09;管理模式&#xff0c;以期解决一系列发展难题&#xff0c;驱动企业向前发展。OKR作为一种目标管理工具&#xff0c;旨在帮助企…

Java实现二叉树(上)

1.树型结构 1.1树型结构的概念 树是一种 非线性 的数据结构&#xff0c;它是由 n &#xff08; n>0 &#xff09;个有限结点组成一个具有层次关系的集合。 把它叫做树是因为它看 起来像一棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的 1.2树型结构的特点…

AI预测福彩3D第28弹【2024年4月6日预测--第7套算法重新开始计算第1次测试】

今天开始&#xff0c;咱们开始进行第7套算法的测试&#xff0c;第7套算法将综合012路权重、012路直选及012路和值进行预测。好了&#xff0c;先上图后上结果吧~ 2024年4月6日福彩3D的七码预测结果如下 第一套&#xff1a; 百位&#xff1a;1 2 4 5 7 8…

基于javassm实现的列车票务信息管理系统

开发语言&#xff1a;Java 框架&#xff1a;ssm JDK版本&#xff1a;JDK1.8 服务器&#xff1a;tomcat7 数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09; 数据库工具&#xff1a;Navicat11 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&…

Network AIS Receiver R400N

目录 Introduction OVERVIEW BASIC FEATURES APPLICATIONS SPECIFICATIONS Introduction OVERVIEW The R400N provides a method of monitoring the position, speed and heading of AIS vessels within VHF range. It can decode of Class A, Class B, Aids to Navigat…

位运算、芯片封装方式、中断、定时器

我要成为嵌入式高手之4月3、7日51单片机第一、二天&#xff01;&#xff01; ———————————————————————————— 裸机驱动&#xff1a;51 -> s3c2440 -> linux Soc片上系统 位运算 高位&#xff1a;MSB 地位&#xff1a;LSB 按位与&…

【C++第三阶段】string容器

以下内容仅为当前认识&#xff0c;可能有不足之处&#xff0c;欢迎讨论&#xff01; 文章目录 string容器基本概念构造函数赋值操作拼接操作字符串查找和替换字符串比较字符串存取字符串插入和删除字符串子串 string容器 基本概念 本质&#x1f449;string是C风格的字符串&…

php校园活动报名系统vue+mysql

开发语言&#xff1a;php 后端框架&#xff1a;Thinkphp/Laravel 前端框架&#xff1a;vue.js 服务器&#xff1a;apache 数据库&#xff1a;mysql 运行环境:phpstudy/wamp/xammp等本选题则旨在通过标签分类管理等方式&#xff0c;管理员&#xff1b;首页、个人中心、学生管理、…

EPSON推出XV-9100CD为检测车身所处姿势状态提供解决方案

陀螺仪传感器是电子稳定控制系统中不可缺少的传感器之一。与通常的民用部件相比&#xff0c;用于车载的部件有一些特殊要求。因为涉及安全&#xff0c;所以高可靠性是必备条件。在制动组件等高温条件下的耐久性、受振动或撞击时不会产生异常输出亦是十分重要的条件。爱普生推出…

Python景区票务人脸识别系统(V2.0),附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

4、双指针-移动零

首先不能复制&#xff0c;只能在原数组是哪个操作&#xff0c;那么很多集合的方式就不行了。当然在现实开发中肯定是可以的。目前按照题目来说是不可以的。所以我们可以思考下&#xff0c;是否可以通过交换来实现。 初始化一个变量 to 为 0。这个变量的目的是跟踪非零元素应该…

书籍《笔记的方法》读后感

读完《笔记的方法》有几周的时间&#xff0c;书里有些记录的内容&#xff0c;觉得非常有价值的&#xff0c;自己的观点&#xff0c;当下读书&#xff0c;其实并没有那么高大尚&#xff0c;就是存粹陶冶下情操&#xff0c;读书还是有一定作用的&#xff0c;毕竟看书只能慢慢来&a…

数字反转(StringBuffer)

题目 import java.util.Scanner; public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt();StringBuffer s new StringBuffer();//字符串转为整型数if(n>0) {s.append(n);String ss s.reverse().toString()…

C++的List类(一):List类的基本概念

目录 前言 List类的基本概念 List的构造函数 List类迭代器的使用 List的功能 List的元素访问 List与vector比较 前言 vector的insert和erase都会导致迭代器失效list的insert不会导致迭代器失效&#xff0c;erase会导致迭代器失效 insert导致失效的原因是开辟了新空间后…

2024人工智能与机器人系统国际学术会议(ICAIRS2024)

2024人工智能与机器人系统国际学术会议(ICAIRS2024) 会议简介 2024人工智能与机器人系统国际学术会议(ICAIRS2024)将在杭州举行。该会议旨在为人工智能和机器人系统的专家学者提供一个平台&#xff0c;以分享最新的研究成果、交流思想、探讨学术问题&#xff0c;并促进跨学科…

云仓酒庄旗下雷盛红酒入驻香港星怡SingLa餐厅共绘美食美酒新篇章

近日&#xff0c;云仓酒庄旗下品牌雷盛红酒正式入驻香港餐厅星怡SingLa&#xff0c;这一跨界合作不仅为香港市民和游客带来了全新的味蕾享受&#xff0c;也标志着美食与美酒文化的很好结合&#xff0c;共同绘就了一幅精彩绝伦的美食美酒新篇章。 云仓酒庄一直以来都致力于为消费…