XSS漏洞靶场---(复现)

news2025/4/21 20:08:19

XSS漏洞靶场—(复现)

反射型 XSS 的特点是攻击者诱导用户点击包含恶意脚本的 URL,服务器接收到请求后将恶意脚本反射回响应页面,浏览器执行该脚本从而造成攻击,恶意脚本不会在服务器端存储。

Level 1(反射型XSS)

image-20250317193251342

image-20250317193110501

此漏洞主要源于代码对用户输入未进行充分的过滤和转义处理。在 PHP 代码里,通过 $_GET["name"] 接收用户从 URL 传递过来的 name 参数,接着直接将该参数输出到 HTML 页面中。若攻击者在 name 参数里注入恶意的 JavaScript 代码,当页面加载时,这些恶意代码就会被浏览器执行,进而达成 XSS 攻击。

通过分析源码,可在name参数上尝试用简单的JS代码进行XSS攻击,看到下面代码执行成功

image-20250317192313770

攻击示例:

http://127.0.0.1/xss-labs-master/level1.php?name=<script> alert("攻击成功")</script>

修复建议:

为了防止 XSS 攻击,需要对用户输入进行过滤和转义处理。在 PHP 中,可以使用 htmlspecialchars 函数将特殊字符转换为 HTML 实体,从而避免恶意代码被执行

解释

  • htmlspecialchars($str, ENT_QUOTES, 'UTF-8'):该函数把字符串中的特殊字符(如 <>"' 等)转换为 HTML 实体(如 <>"' 等),如此一来,即使攻击者注入了恶意的 JavaScript 代码,这些代码也会以文本形式显示,而不会被浏览器执行。
<!DOCTYPE html><!--STATUS OK--><html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<script>
window.alert = function()  
{     
    confirm("完成的不错!");
    window.location.href="level2.php?keyword=test"; 
}
</script>
<title>欢迎来到level1</title>
</head>
<body>
<h1 align=center>欢迎来到level1</h1>
<?php 
ini_set("display_errors", 0);
$str = $_GET["name"];
// 对用户输入进行转义处理
$escapedStr = htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
echo "<h2 align=center>欢迎用户".$escapedStr."</h2>";
?>
<center><img src=level1.png></center>
<?php 
// 对用于计算长度的字符串也可以考虑进行必要的验证
$lengthStr = htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
echo "<h3 align=center>payload的长度:".strlen($lengthStr)."</h3>";
?>
</body>
</html>

Level 2(反射型XSS)

image-20250317193401601

image-20250317193759284

虽然代码在部分输出时使用了 htmlspecialchars 函数对用户输入进行了处理,但在表单输入框的 value 属性赋值时,没有对用户输入进行足够的转义处理。攻击者可以通过构造特殊的输入,绕过这种部分防护,使得恶意的 JavaScript 代码在页面中被执行,从而实现 XSS 攻击。

在上述代码里,$str 是从 $_GET["keyword"] 获取的用户输入,在 <input> 标签的 value 属性中直接使用了 $str,而没有进行合适的转义。

在h2标签之中的恶意代码被htmlspecialchars编码了。其中<、>都被编码成了html字符实体,恶意代码被编码了,只能从属性值中的恶意代码处进行突破了,,只需要将属性的引号和标签先闭合就可以了。

攻击示例:

http://127.0.0.1/xss-labs-master/level2.php?keyword="><script>alert('XSS 攻击成功!')</script><"

image-20250317193900303

修复建议

为了防止这种 XSS 攻击,需要对表单输入框 value 属性中的用户输入也进行转义处理。可以继续使用 htmlspecialchars 函数。

<!DOCTYPE html><!--STATUS OK--><html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<script>
window.alert = function()  
{     
    confirm("完成的不错!");
    window.location.href="level3.php?writing=wait"; 
}
</script>
<title>欢迎来到level2</title>
</head>
<body>
<h1 align=center>欢迎来到level2</h1>
<?php 
ini_set("display_errors", 0);
$str = $_GET["keyword"];
// 对输出到 h2 标签中的内容进行转义
$escapedStrH2 = htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
// 对输出到 input 标签 value 属性中的内容进行转义
$escapedStrInput = htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
echo "<h2 align=center>没有找到和".$escapedStrH2."相关的结果.</h2>".'<center>
<form action=level2.php method=GET>
<input name=keyword  value="'.$escapedStrInput.'">
<input type=submit name=submit value="搜索"/>
</form>
</center>';
?>
<center><img src=level2.png></center>
<?php 
// 对用于计算长度的字符串也进行必要的验证
$lengthStr = htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
echo "<h3 align=center>payload的长度:".strlen($lengthStr)."</h3>";
?>
</body>
</html>

Level 3(反射型XSS)

image-20250317194935969

尝试Level 2 的攻击方法后未能成功

image-20250317195153096

image-20250317195340074

代码中对 $str 进行了 htmlspecialchars 处理,在大部分情况下能防止常见的 XSS 攻击。不过,当攻击者利用 HTML 事件属性时,仍可能构造出能执行恶意脚本的情况。在 HTML 标签的属性中,如果输入包含事件处理函数(如 onclickonload 等),即使使用了 htmlspecialchars 转义了引号,攻击者依然可以通过构造合适的输入绕过部分防护。

image-20250317195534631

echo "<h2 align=center>没有找到和".htmlspecialchars($str)."相关的结果.</h2>"."<center>
<form action=level3.php method=GET>
<input name=keyword  value='".htmlspecialchars($str)."'>	
<input type=submit name=submit value=搜索 />
</form>
</center>";

虽然对 value 属性的值进行了转义,但如果攻击者输入的是包含事件处理函数的内容,可能会引发 XSS 攻击

攻击示例:

http://127.0.0.1/xss-labs-master/level3.php?writing='onmouseover='alert("XSS")

'οnmοuseοver='alert(“XSS”)

onmouseover

当用户将鼠标悬停在输入框上时,onmouseover 事件触发,恶意脚本 alert("XSS") 就会被执行

image-20250317201539168

修复建议:

为了更安全地处理用户输入,除了使用 htmlspecialchars 对普通字符进行转义,还需要对可能的 HTML 事件属性进行过滤和验证,或者采用更严格的白名单机制来允许的字符和属性。另外,在现代 Web 开发中,可以考虑使用 htmlentities 函数来进行更全面的转义。

<!DOCTYPE html><!--STATUS OK--><html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<script>
window.alert = function()  
{     
    confirm("完成的不错!");
    window.location.href="level4.php?keyword=try harder!"; 
}
</script>
<title>欢迎来到level3</title>
</head>
<body>
<h1 align=center>欢迎来到level3</h1>
<?php 
ini_set("display_errors", 0);
$str = $_GET["keyword"];
// 更全面的转义处理
$escapedStr = htmlentities($str, ENT_QUOTES, 'UTF-8');
echo "<h2 align=center>没有找到和".$escapedStr."相关的结果.</h2>"."<center>
<form action=level3.php method=GET>
<input name=keyword  value='".$escapedStr."'>	
<input type=submit name=submit value=搜索 />
</form>
</center>";
?>
<center><img src=level3.png></center>
<?php 
// 对用于计算长度的字符串也进行转义
$lengthStr = htmlentities($str, ENT_QUOTES, 'UTF-8');
echo "<h3 align=center>payload的长度:".strlen($lengthStr)."</h3>";
?>
</body>
</html>

Level 4 (反射型XSS)

image-20250317202516270

image-20250317202234224

漏洞分析

  1. 过滤不彻底

代码尝试通过 str_replace 函数去除输入中的 <> 字符,以防止用户注入 HTML 标签。然而,攻击者可以利用 HTML 实体编码绕过这种过滤。HTML 实体编码允许将特殊字符用特定的编码表示,例如 < 可以用 < 表示,> 可以用 > 表示。当页面输出时,浏览器会将这些实体编码解析为对应的字符。

  1. 部分输出转义问题

虽然在 <h2> 标签中使用了 htmlspecialchars 对输出进行转义,但在 <input> 标签的 value 属性中,使用的是经过 str_replace 处理后的 $str3,没有再次进行全面的转义,这就给攻击者留下了可乘之机。

攻击示例:

http://127.0.0.1/xss - labs - master/level4.php?keyword="onfocus=javascript:alert('xss') "

当用户点击该 URL 时,浏览器会向服务器发送请求,服务器端代码通过 $_GET["keyword"] 获取到 keyword 参数的值为 "onfocus=javascript:alert('xss') "

原代码中处理逻辑:

$str = $_GET["keyword"];
$str2 = str_replace(">", "", $str);
$str3 = str_replace("<", "", $str2);

这里代码只是简单地去除了 <> 字符,而攻击者输入的内容中并没有直接使用 <> 来包裹脚本,所以这种过滤方式对该恶意输入无效,$str3 仍然是 "onfocus=javascript:alert('xss') "

修复建议:

为了防止此类 XSS 攻击,需要对用户输入进行更严格的过滤和转义处理。可以使用 htmlspecialcharshtmlentities 函数对输出进行全面转义,确保特殊字符被正确处理

<!DOCTYPE html><!--STATUS OK--><html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<script>
window.alert = function()  
{     
    confirm("完成的不错!");
    window.location.href="level5.php?keyword=find a way out!"; 
}
</script>
<title>欢迎来到level4</title>
</head>
<body>
<h1 align=center>欢迎来到level4</h1>
<?php 
ini_set("display_errors", 0);
$str = $_GET["keyword"];
// 对输入进行全面的 HTML 实体编码转义
$escapedStr = htmlentities($str, ENT_QUOTES, 'UTF-8');
echo "<h2 align=center>没有找到和".$escapedStr."相关的结果.</h2>".'<center>
<form action=level4.php method=GET>
<input name=keyword  value="'.$escapedStr.'">
<input type=submit name=submit value=搜索 />
</form>
</center>';
?>
<center><img src=level4.png></center>
<?php 
// 对用于计算长度的字符串也进行转义
$lengthStr = htmlentities($str, ENT_QUOTES, 'UTF-8');
echo "<h3 align=center>payload的长度:".strlen($lengthStr)."</h3>";
?>
</body>
</html>

Level 5(反射型XSS)

image-20250317210244626

image-20250317210338381

在这段代码中,$str 变量接收用户输入的 keyword 参数,经过一系列处理后存储在 $str3 中,而 $str3 被直接嵌入到 HTML 表单的 input 标签的 value 属性中,没有进行足够的 HTML 实体转义,这就为 XSS 攻击提供了可能。

攻击原理:

攻击者通过构造恶意的 keyword 参数,将包含 JavaScript 代码的字符串注入到页面中。当页面加载时,浏览器会执行注入的 JavaScript 代码,从而实现攻击目的。例如,使用如下 URL:

http://127.0.0.1/xss-labs-master/level5.php?keyword="><a href=javascript:alert("攻击成功")>"点这"</a>

在这个 URL 中,keyword 参数的值为 "><a href=javascript:alert("攻击成功")>"点这"</a>。当页面加载时,这个恶意代码会被嵌入到 input 标签的 value 属性中,导致浏览器执行 alert("攻击成功") 代码,显示一个提示框,表明攻击成功。

image-20250317211641196

代码中存在问题的部分:

echo "<h2 align=center>没有找到和".htmlspecialchars($str)."相关的结果.</h2>".'<center>
<form action=level5.php method=GET>
<input name=keyword  value="'.$str3.'">
<input type=submit name=submit value=搜索 />
</form>
</center>';

在上述代码中,$str3 直接被嵌入到 input 标签的 value 属性中,没有进行足够的 HTML 实体转义,使得攻击者可以通过构造恶意的 keyword 参数注入 JavaScript 代码。

修复建议:

为了防止 XSS 攻击,需要对用户输入的数据进行充分的 HTML 实体转义。可以使用 htmlspecialchars 函数对 $str3 进行转义,修改后的代码如下:

echo "<h2 align=center>没有找到和".htmlspecialchars($str)."相关的结果.</h2>".'<center>
<form action=level5.php method=GET>
<input name=keyword  value="'.htmlspecialchars($str3, ENT_QUOTES, 'UTF-8').'">
<input type=submit name=submit value=搜索 />
</form>
</center>';

在这个修改后的代码中,htmlspecialchars 函数将 $str3 中的特殊字符(如 <>" 等)转换为 HTML 实体,从而避免了 JavaScript 代码的注入。ENT_QUOTES 参数表示同时转换单引号和双引号,'UTF-8' 表示使用 UTF-8 编码。

Level 6(反射型)

image-20250317212042882

image-20250317212103797

代码尝试对一些常见的用于 XSS 攻击的关键词进行替换,例如将 <script 替换为 <scr_ipt,将 on 替换为 o_n 等。但这种过滤方式存在严重缺陷:

  • 大小写绕过:过滤操作是基于小写关键词进行的,攻击者可以使用大小写混合的方式绕过过滤。例如,在攻击 payload "><a hRef=javascript:alert(1)>test</a> 中,使用 hRef 而不是 href,就绕过了对 href 的替换。
  • 不完整过滤:只对部分关键词进行了替换,攻击者可以利用其他未被过滤的 HTML 属性和事件来注入恶意脚本。
echo "<h2 align=center>没有找到和".htmlspecialchars($str)."相关的结果.</h2>".'<center>
<form action=level6.php method=GET>
<input name=keyword  value="'.$str6.'">
<input type=submit name=submit value=搜索 />
</form>
</center>';

这是漏洞的关键所在。虽然对 $str 进行了 htmlspecialchars 处理,但在将 $str6 嵌入到 input 标签的 value 属性时,没有对其进行充分的 HTML 实体转义。这意味着攻击者构造的恶意代码会被直接插入到 HTML 页面中。

攻击示例:

http://127.0.0.1/xss-labs-master/level6.php?keyword="><a hRef=javascript:alert(1)>test</a>

当用户访问包含恶意 keyword 参数的 URL 时,浏览器会解析并执行嵌入在页面中的恶意脚本。例如,对于 "><a hRef=javascript:alert(1)>test</a> 这个 payload,当页面加载后,input 标签的 value 属性会被提前闭合,后面插入的 <a> 标签会正常显示。当用户点击这个链接时,浏览器会执行 javascript:alert(1) 代码,弹出一个警告框,表明攻击成功。

image-20250317212810046

Level 7(反射型)

image-20250317213103716

image-20250317213134017

$str2 = str_replace("script", "", $str);
$str3 = str_replace("on", "", $str2);
$str4 = str_replace("src", "", $str3);
$str5 = str_replace("data", "", $str4);
$str6 = str_replace("href", "", $str5);

代码尝试对一些常见的用于 XSS 攻击的关键词进行过滤,将它们替换为空字符串。但这种过滤方式存在明显缺陷:

  • 过滤不全面:只对部分关键词进行了过滤,攻击者可以使用其他未被过滤的 HTML 属性和事件来注入恶意脚本。
  • 可绕过过滤:攻击者可以通过一些技巧绕过这些过滤,例如使用大小写混合、重复关键字等方式。比如构造 javascscriptript 绕过对 script 的过滤,当过滤操作移除 script 后,仍能形成有效的 javascript
echo "<h2 align=center>没有找到和".htmlspecialchars($str)."相关的结果.</h2>".'<center>
<form action=level7.php method=GET>
<input name=keyword  value="'.$str6.'">
<input type=submit name=submit value=搜索 />
</form>
</center>';

这是漏洞的关键所在。在将处理后的 $str6 嵌入到 input 标签的 value 属性时,没有对其进行充分的 HTML 实体转义。这意味着攻击者构造的恶意代码会被直接插入到 HTML 页面中,当浏览器解析该页面时,就会执行恶意脚本。

攻击示例:

http://127.0.0.1/xss-labs-master/level7.php?keyword="><a hrhrefef=javascscriptript:alert(1)>test</a>

image-20250317213920685

攻击者构造的 keyword 参数为 "><a hrhrefef=javascscriptript:alert(1)>test</a>。通过重复关键字符(如 hrhrefefjavascscriptript),使得过滤函数在移除 hrefscript 后,依然能保留有效的可执行代码。经过过滤后,hrhrefef 变成 hrefjavascscriptript 变成 javascript,最终在页面中形成有效的 <a href="javascript:alert(1)">test</a> 代码,当用户点击链接时,就会触发 alert(1) 弹出警告框。

修复建议:
为了防止 XSS 攻击,需要对最终输出到页面的内容进行充分的 HTML 实体转义。可以使用 htmlspecialchars 函数对 $str6 进行处理,修改后的代码如下:

$str = strtolower($_GET["keyword"]);
$str2 = str_replace("script", "", $str);
$str3 = str_replace("on", "", $str2);
$str4 = str_replace("src", "", $str3);
$str5 = str_replace("data", "", $str4);
$str6 = str_replace("href", "", $str5);
$escaped_str6 = htmlspecialchars($str6, ENT_QUOTES, 'UTF-8');
echo "<h2 align=center>没有找到和".htmlspecialchars($str)."相关的结果.</h2>".'<center>
<form action=level7.php method=GET>
<input name=keyword  value="'.$escaped_str6.'">
<input type=submit name=submit value=搜索 />
</form>
</center>';

通过 htmlspecialchars 函数将特殊字符(如 <>"' 等)转换为 HTML 实体,这样即使攻击者构造了恶意的 keyword 参数,也无法在页面中执行恶意脚本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2317390.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于ssm的电子病历系统(全套)

一、系统架构 前端&#xff1a;jsp | bootstrap | jquery 后端&#xff1a;spring | springmvc | mybatis 环境&#xff1a;jdk1.8 | mysql | maven | tomcat | idea 二、代码及数据库 三、功能介绍 01. 登录 02. 主页 03. 管理员-个人中心-修改密码…

Linux-数据结构-线性表-单链表

一.链表的概念 【1】线性表的链式存储 解决顺序存储的缺点&#xff0c;插入和删除&#xff0c;动态存储问题。 【2】特点&#xff1a; 线性表链式存储结构的特点是一组任意的存储单位存储线性表的数据元素&#xff0c;存储单元可以是连续的&#xff0c;也可以不连续。可以被存…

基于SpringBoot的Mybatis和纯MyBatis项目搭建的区别

【由于之前学习MyBatis的时候是跟着视频敲的纯MyBatis项目&#xff0c;以至于在突然看到别人在SpringBoot项目里搭建MyBatis方式的时候很懵比…特此文字形式记录一下区别&#xff08;应该还有好多种其他方式是我不知道的&#xff0c;主要应该就是要知道关键的流程步骤&#xff…

大数据学习(68)- Flink和Spark Streaming

&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4dd;支持一…

Fastdata极数:中国民宿行业发展趋势报告2025

2024年&#xff0c;中国游客出行次数大幅上涨&#xff0c;旅游相关支出也复苏强劲。2025年中国旅游业还将持续稳健的复苏及增长。同时&#xff0c;中国旅游业将见证一场深刻的变革&#xff0c;这场变革的推动力是消费者对旅游期望的转变&#xff0c;经济因素和年轻人全新价值观…

图论——广度优先搜索实现

99. 岛屿数量 题目描述 给定一个由 1(陆地)和 0(水)组成的矩阵,你需要计算岛屿的数量。岛屿由水平方向或垂直方向上相邻的陆地连接而成,并且四周都是水域。你可以假设矩阵外均被水包围。 输入描述 第一行包含两个整数 N, M,表示矩阵的行数和列数。 后续 N 行,每行…

鸿蒙路由 HMrouter 配置及使用一

1、学习链接 HMRouter地址 https://gitee.com/hadss/hmrouter/blob/dev/HMRouterLibrary/README.md 2、工程配置 下载安装 ohpm install hadss/hmrouter 添加编译插件配置 在工程目录下的build-profile.json5中&#xff0c;配置useNormalizedOHMUrl属性为true (我这项目创…

各省水资源平台 水资源遥测终端机都用什么协议

各个省水资源平台 水资源遥测终端机 的建设大部分从2012年开始启动&#xff0c;经过多年建设&#xff0c;基本都已经形成了稳定的通讯要求&#xff1b;河北瑾航科技 遥测终端机&#xff0c;兼容了大部分省市的通讯协议&#xff0c;如果需要&#xff0c;可以咨询和互相学习&…

需求分析、定义、验证、变更、跟踪(高软47)

系列文章目录 需求分析、定义、验证、变更、跟踪 文章目录 系列文章目录前言一、需求分析二、需求定义三、需求验证四、需求变更五、需求跟踪六、真题总结 前言 本节讲明需求分析、定义、验证、变更、跟踪相关知识。 一、需求分析 二、需求定义 三、需求验证 四、需求变更 五、…

从零开始 | C语言基础刷题DAY3

❤个人主页&#xff1a;折枝寄北的博客 目录 1.打印3的倍数的数2.从大到小输出3. 打印素数4.打印闰年5.最大公约数 1.打印3的倍数的数 题目&#xff1a; 写一个代码打印1-100之间所有3的倍数的数字 代码&#xff1a; int main(){int i 0;for (i 1; i < 100; i){if (i % …

docker入门篇

使用docker可以很快部署相同的环境,这也是最快的环境构建,接下来就主要对docker中的基础内容进行讲解.Docker 是一个用于开发、交付和运行应用程序的开源平台&#xff0c;它可以让开发者将应用程序及其依赖打包到一个容器中&#xff0c;然后在任何环境中运行这个容器&#xff0…

Unity Shader - UI Sprite Shader之简单抠图效果

Sprite抠图效果&#xff1a; 前言 在PhotoShop中我们经常会用到抠图操作&#xff0c;现在就用Shader实现一个简单的抠图效果。 实现原理&#xff1a; 使用当前像素颜色与需要抠掉的颜色相减作比较&#xff0c;然后与一个指定的阈值比较以决定是否将其显示出来&#xff1b; U…

vllm-openai多服务器集群部署AI模型

服务器配置是两台ubantu系统电脑,每台电脑安装两张4090-48G显存的显卡,共计192G显存。 服务器1 服务器2 准备工作: 1.两台电脑都已经安装了docker 2.两台电脑都已经安装了nvidia驱动 参考vllm官方资料 https://docs.vllm.ai/en/latest/serving/distributed_serving.html…

在Spring Boot项目中接入DeepSeek深度求索,感觉笨笨的呢

文章目录 引言1. 什么是DeepSeek&#xff1f;2. 准备工作2.1 注册DeepSeek账号 3.实战演示3.1 application增加DS配置3.2 编写service3.3 编写controller3.4 编写前端界面chat.html3.5 测试 总结 引言 在当今快速发展的数据驱动时代&#xff0c;企业越来越重视数据的价值。为了…

STM32---FreeRTOS事件标志组

一、简介 事件标志位&#xff1a;用一个位&#xff0c;来表示事件是否发生 事件标志组&#xff1a;一组事件标志位的集合&#xff0c;可以简单的理解时间标志组&#xff0c;就是一个整体。 事件标志租的特点&#xff1a; 它的每一个位表示一个时间&#xff08;高8位不算&…

Word 小黑第40套

对应大猫43 主题 -浏览主题 -选择W样式标准文件就行 1级段落和2级段落&#xff08;用项目符号不影响原本段落文字符号 颜色修改为自动&#xff09; 整段变红的 不是把光标定位到红色字体那里 要选择几个红色字体 再创建样式 插入的空白页一定要是下一页&#xff0c;不能插空白…

【Linux我做主】浅谈Shell及其原理

浅谈Linux中的Shell及其原理 Linux中Shell的运行原理github地址前言一、Linux内核与Shell的关系1.1 操作系统核心1.2 用户与内核的隔离 二、Shell的演进与核心机制2.1 发展历程2.2 核心功能解析2.3 shell的工作流程1. 用户输入命令2. 解析器拆分指令3. 扩展器处理动态内容变量替…

数据结构篇——二叉树的存储与遍历

一、引入 书接上文&#xff0c;文于此续。上文我们学到了树的存储结构&#xff0c;那么今天&#xff0c;我们来学习下几种特殊的二叉树以及关于它的各种遍历&#xff0c;让我们一起加油吧。 二、特殊的二叉树 二叉树的特殊形式这里介绍3种&#xff0c;其中需要着重记忆的有…

分而治之:用于 RGB-T 显著目标检测的 Confluent Triple-Flow 网络(问题)

摘要 问题一&#xff1a;RGB-thermal显著对象检测这是什么&#xff1f; RGB图像是可见光的三通道图像&#xff0c;而thermal是热红外图像&#xff0c;通常为单通道&#xff0c;记录物体的热辐射信息。结合RGB和thermal两种模态的数据&#xff0c;可以利用两者的互补信息&…

求职招聘网站源码,找工作招工系统,支持H5和各种小程序

招聘找活招工平台系统源码 招聘求职找工作软件 发布信息积分充值招聘系统,里面带纤细教程 功能介绍: 招工小程序主要针对工地招工工人找工作,工地可以发布招工信息,工人可以发布找活信息,招工信息可以置顶,置顶需要积分,积分可以通过签到、分享邀请好友、充值获取,后…