当前位置:首页 » 《随便一记》 » 正文

Bugku -----Web-----全题目解析 (一) 超详细步骤

27 人参与  2024年11月05日 18:40  分类 : 《随便一记》  评论

点击全文阅读


目录

1.Simple_SSTI_1

2.Simple_SSTI_2

3.滑稽

4.计算器

5.矛盾

————————————————————分割线————————————————————

1.Simple_SSTI_1

SSTI是服务器端模板注入 

F12查看下源码 

在 Flask 中,双大括号 {{ }} 用于表示动态内容的占位符,该内容将由模板引擎渲染。这被称为模板语法。 当你在 Flask 模板中使用双大括号把变量或表达式括起来时,它告诉模板引擎去计算该表达式并将其值插入到渲染后的 HTML 文档中。 例如,你提供的代码 flag={{config.SECRET_KEY}} 将会在 HTML 文档中的该位置渲染 Flask 应用程序的秘密密钥。

在Flask项目的配置中都是通过app.config对象来进行配置的。比如要配置一个项目的SECRET_KEY,可以使用app.config['SECRET_KEY'] = "xxx"来进行设置。

所以综上所诉 我们直接尝试去在url试着访问 config 

注意语法格式 ?flag={{config}}

也可用查询语法?flag={{config.SECRET_KEY}}

2.Simple_SSTI_2

打开题目让传入一个flag参数 我们试着看看config文件里

但是好像没有有用的东西 我们试着用模板注入看看怎么个事

?flag={{ config.__class__.__init__.__globals__['os'].popen('ls ../').read() }}

使用了模板引擎的功能来访问Python的config对象,通过链式属性访问(__class____init____globals__)来获取对Python标准库的os模块的访问权。一旦获得对os模块的访问,攻击者就可以通过popen方法执行任意的系统命令。

_class_:用来查看变量所属的类,根据前面的变量形式可以得到其所属的类。

__init__ :初始化类,返回的类型是function。

__globals__[]:使用方式是函数名.__globals__获取function所处空间下可使用的module、方法以及所有变量。

os.popen()方法:用于从一个命令打开一个管道。

open() 方法:用于打开一个文件,并返回文件对象。

结果发现app 这个文件 好像不是常见的内部文件名字 我们试着去访问看看 发现了flag文件

cat一下获取flag

3.Flask_FileUpload

‌Flask是一个轻量级的‌Python ‌Web框架,主要用于构建和维护Web应用程序。它提供了一组工具和功能,使开发者能够快速轻松地创建动态Web应用程序

一个提交框 查看下网页源码 提示 说是要上传个文件 并且固定了上传文件类型 需要时jpg和png的图片

于是写一段python的脚本文件 并且将后缀名改成jpg

import os: 这一行导入了Python的内置模块osos模块提供了许多与操作系统交互的功能,比如读写文件、更改和识别路径等。

os.system('ls / '): 这一行使用os模块中的system函数来执行一个外部命令。这里执行的是ls /命令。在Unix和类Unix系统中,ls是一个用于列出目录内容的命令,而/代表系统的根目录。因此,ls /会列出根目录下的所有文件和子目录。

上传成功后 页面没有什么特别的回显 我们看一下源代码 发现了我们要找的flag

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

所以我只需要利用这个漏洞再去修改下我们的python代码重新上传一下我们的文件即可

import osos.system('cat /flag ')

4.滑稽

进入环境 右键查看源代码

5.计算器

 让输入验证 但发现只能数一个字 打开源代码发现有输入长度限制是1  

将源代码中限制从1改一下 再次输入 正确验证即可获得flag


点击全文阅读


本文链接:http://zhangshiyu.com/post/182933.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 夏语栀祁墨寒我们各归人海,此生,也不必再见彩蛋小说结尾+附加(我们各归人海,此生,也不必再见)清爽版阅读
  • 重生下乡嫁糙汉,渣男全家悔哭了小说完结篇(师明凯颜惜雪)(重生下乡嫁糙汉,渣男全家悔哭了)全书无套路阅读无广告小说大结局
  • 他拿我取悦白月光,我离开后他悔哭了在线阅读_江宴苏晴晴方梨高分言情_小说后续在线阅读_无删减免费完结_
  • (王爷一晚亲七次,弃妇怂了!)云苏月延伸在线下载无广告章节清单
  • 在线阅读(我是让他不屑一顾,不愿多看一眼的路人)安喻意商晋深:结局+番外看点十足全文+后续
  • 混沌流年小说(孟流年周丽珍)序章+全章阅读(混沌流年)最新章节
  • 相亲闪婚随军,真千金有亿万物资小说(相亲闪婚随军,真千金有亿万物资)(陆婉婉霍凌寒)前传+阅读全新作品预订
  • 全书浏览江月年年人不还精彩剧情(沈默渊许愿)_江月年年人不还精彩剧情(沈默渊许愿)全书结局
  • 竹马的爱意***新上_江珉周絮玉佩校园甜文_小说后续在线阅读_无删减免费完结_
  • 她在黎明等待观看书荒列表_她在黎明等待观看书荒(苏野时晚晴)
  • (被凌虐侮辱一年后,国公府悔疯了)被凌虐侮辱一年后,国公府悔疯了(余笙笙傅青隐)整书在线无广告高口碑小说
  • (书荒必看)夏语栀祁墨寒(我们各归人海,此生,也不必再见)无删减在线下载阅读最终终章

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1