首页 > 编程语言 >【python】SSTI模版注入

【python】SSTI模版注入

时间:2024-01-23 17:22:23浏览次数:37  
标签:虚拟环境 venv python 模版 html flask SSTI

0x00  Python Vene环境及介绍

venv虚拟环境:创建和管理虚拟环境的模块

首先apt update更新一下包管理

安装你当前版本的python-venv

选择一个目录,安装venv虚拟环境。我取的名是flask-venv。

如何选中当前的venv呢?执行以下命令可以发现多了一个前缀flask-venv

在当前目录安装flask框架。

输入deactivate,退出当前虚拟python环境。

0x01  flask应用介绍及环境搭建

Flask是一个使用python编写的轻量级web应用框架

创建一个文件夹

编写一个python文件

其中route相当于是路由。通俗点来说,就相当于你输入不同的网址,访问不同的内容,这里就默认为根目录。

运行,并可访问自身的127.0.0.1:5000查看内容

 

其中可以更改一下run的参数

访问6666端口,火狐浏览器限制的话,https://blog.51cto.com/u_15999672/6110608

0x02  flask变量及方法

格式化字符串

Flask变量规则,通过向规则参数添加变量部分,可以动态构建URL

访问/hello/iamhacker

发现动态创建了一个网页。原理就是通过url传进name变量。

 

0x03  flask模版介绍

render_template就是加载html的内容渲染后再展示。在html中的{{xxx}},会被动态变量所替代。

例如

def index():
    m='123'
    return render_template("index.html",m1=m)

 index.html中的{{m1}}就会变成m的值。

render_tempplate_string

0x04  flask模版漏洞介绍

这种写法就不会有漏洞出现。

先格式化再渲染可能会出现漏洞!

输入{{7*7}}会得到49

我们来实验一下。

实验成功

SSTI注入类型及方法

 

0x05  继承关系和魔术方法

python,flask没有办法直接执行python指令。子类无法做到的事情先找到父类,再找到其他子类。

通过python代码,可知以下信息

继承关系

魔术方法

常用注入模块

标签:虚拟环境,venv,python,模版,html,flask,SSTI
From: https://www.cnblogs.com/AllFalls/p/17982357

相关文章

  • python安装包(模块)的八种方法
    1.使用easy_installeasy_install这应该是最古老的包安装方式了,目前基本没有人使用了。下面是easy_install的一些安装示例#通过包名,从PyPI寻找最新版本,自动下载、编译、安装$easy_installpkg_name#通过包名从指定下载页寻找链接来安装或升级包$easy_install-fhttp:/......
  • 通过Python计算有效降水量
    有效降水量是指能够提供给作物蒸发蒸腾,从而减少作物对灌溉水需求的雨量,可美国农业部土壤保持局推荐的方法进行逐日计算,本文将介绍其在Python环境中的实现方式。其公式如下:\[P_e=\sum_{i=1}^NP_{ei}=\begin{cases}\sum_{i=1}^N\frac{P_i(4.17-0.2P_i)}{4.17}&\quad\text{($P_i<8......
  • python简单去除视频水印
    只能去除固定水印位置。如果水印位置会变,那么后面的就去除不掉。而且如果视频第一帧没有水印出现,那么后面也没办法去掉。。。。。。。。文件夹格式为importosimportsysimportcv2importnumpyfrommoviepyimporteditorVIDEO_PATH='video'OUTPUT_PATH='output'......
  • ubuntu 安装python 3.1 具体步骤
    安装Python3.1的步骤如下:打开终端(Terminal)。输入以下命令来安装Python3.1的依赖:sudoapt-getupdatesudoapt-getinstallbuild-essentialcheckinstallsudoapt-getinstalllibreadline-gplv2-devlibncursesw5-devlibssl-devlibsqlite3-devtk-devlibgdb......
  • Python的sort自定义compare函数
    记住这个规律:1.无论是什么,都先左侧的大,ifx>y:固定写法。2.大的放右边就return1;如果想要大的放左边就return-1;这里记忆是【-1,1】坐标轴上,-1在左侧,1在右侧 #默认sort是左小-右大,的return1#要排序大的,就右侧大的return1defcompare(x,y):ifx>y:......
  • python截取视频中的一段成gif
    frommoviepy.editorimportVideoFileClipvideo=VideoFileClip('xxxx.mp4')#剪辑从第1秒到第6秒的视频片段clipped_video=video.subclip(0,6)#保存成gifclipped_video.write_gif('output.gif')#加载GIF文件clip=VideoFileClip('output.gif')#......
  • python文字转语音
    abc.txt我喜欢唱跳rap&篮球importosimportpyttsx3#创建一个TTS引擎engine=pyttsx3.init()voices=engine.getProperty('voices')forvinvoices:print("ID:",v.id)print("Name:",v.name)print("Languages:",......
  • python随机生成图片验证码第二篇
    Python生成随机验证码,需要使用PIL模块.安装: pip3installpillow基本使用1.创建图片fromPILimportImageimg=Image.new(mode='RGB',size=(120,30),color=(255,255,255))#在图片查看器中打开#img.show()#保存在本地withopen('code.png','wb')asf......
  • Java开发者的Python进修指南:JSON利器之官方json库、demjson和orjson的实用指南
    JSONJSON作为目前最流行的传输格式,在Python中也有相应的实现方式。由于JSON格式的文本可以跨平台并且简单易用,因此被广泛传播。因此,我们今天的主要讨论内容是如何熟练地应用Python的JSON库来处理将JSON映射到文本,以及如何从文本映射到对象中。现在,让我们开始探讨这个话题。官方j......
  • python用支持向量机回归(SVR)模型分析用电量预测电力消费|附代码数据
    全文链接:http://tecdat.cn/?p=23921最近我们被客户要求撰写关于支持向量机回归的研究报告,包括一些图形和统计输出。本文描述了训练支持向量回归模型的过程,该模型用于预测基于几个天气变量、一天中的某个小时、以及这一天是周末/假日/在家工作日还是普通工作日的用电量关于支持......