DAY52WEB 攻防-XSS 跨站反射型存储型DOM 型标签闭合输入输出JS 代码解析

news2024/10/17 5:17:05

#知识点:

1、XSS跨站-输入输出-原理&分类&闭合

2、XSS跨站-分类测试-反射&存储&DOM

演示案例:

➢XSS跨站-输入输出-原理&分类&闭合

➢XSS跨站-分类测试-反射&存储&DOM

#XSS跨站-输入输出-原理&分类&闭合

漏洞原理:接受输入数据,输出显示数据后解析执行

基础类型:反射(非持续),存储(持续),DOM-BASE

拓展类型:jquery,mxss,uxss,pdfxss,flashxss,上传xss等

常用标签:https://www.freebuf.com/articles/web/340080.html

攻击利用:盲打,COOKIE盗取,凭据窃取,页面劫持,网络钓鱼,权限维持等

安全修复:字符过滤,实例化编码,http_only,CSP防护,WAF拦截等

测试流程:看输出想输入在哪里,更改输入代码看执行(标签,过滤决定)

1.反射型XSS:(简单案例)

常见情况是攻击者通过==构造一个恶意链接的形式==,诱导用户传播和打开,由于**链接内所携带的参数会回显于页面中或作为页面的处理数据源,最终造成XSS攻击。**

简单案例:

设置x值为什么,相应就会解析执行什么

利用嵌套js格式,生成嵌套网址:192.168.137.1:84/xss.php?x=<iframe src="http://www.xiaodi8.com">test</iframe>

如果这段代码被插入到一个网页中,并且该网页的用户受到攻击者的控制,那么该用户的浏览器将加载 http://www.xiaodi8.com 这个地址,并在页面中嵌入一个 <iframe> 元素,显示该地址的内容。

那么就可能导致跨站脚本攻击。攻击者可能会尝试利用这种方式来==窃取用户的信息、劫持用户会话,或者进行其他恶意活动。==

真实的XSS攻击语句,需要考虑输入和输入的格式

输入可能会有过滤,输出可能会有其他符号的拼接造成攻击语句执行失败

可能会造成如下的:攻击语句存在导致格式问题不能被正常解析和执行

解决方式:使用特定的语句进行替换,如**x οnerrοr=”alert(1)”**如果你将 οnerrοr="alert(1)" 嵌入到某个 HTML 元素中,那么当该元素加载失败时(例如图像加载失败、脚本加载失败等),JavaScript 中的 alert(1) 将会被执行,弹出一个带有 “1” 的警告框。

2.存储型XSS:(简单案例)

存储型XSS是持久化的XSS攻击方式,将恶意代码存储于服务器端,

当其他用户再次访问页面时触发,造成XSS攻击。

简单案例:

打开之前创建的留言板功能,依据ip访问http://192.168.137.1:84/gbook.php

将xss攻击写入在用户名处==:<script>alert(1)</script>== 内容随便填写,然后提交

发现每次访问页面的时候,都会弹出1的提示框,说明xss攻击成功

3.DOM-base型XSS:(简单案例)

通过**修改原始的客户端代码,受害者浏览器的DOM环境改变,导致有效载荷的执行。**

页面本身没有变化,但由于DOM环境被恶意修改,有客户端代码被包含进了页面并执行。

寻找可操纵的DOM元素: 攻击者会寻找页面上的DOM元素,例如URL参数、cookie、用户输入等,这些DOM元素的值可能会被动态地嵌入到页面中。

构造恶意载荷: 攻击者通过在寻找到的DOM元素中注入恶意代码,构造出一个特殊的输入值。这个输入值在后续被浏览器解释执行时,将导致恶意代码执行。

修改DOM环境: 攻击者通过修改DOM元素的值,或者在页面中插入特殊的HTML或脚本标签,改变了原始的DOM环境。

触发和执行: 当**页面加载或用户与页面交互时,浏览器解析修改后的DOM环境,执行了包含恶意代码的DOM元素,导致攻击生效。**

简单案例:

创建对应的html代码,

通过URL访问该页面http://192.168.137.1:84/domxss.html#https://www.baidu.com)并在**#后面跟上,想要跳转的页面,访问即可成功跳转**

<!--

    dom-xss-test 页面

    

    1. 设置页面标题为 "dom-xss-test"。

    2. 引入 jQuery 库,版本为 1.6.1。

    3. 利用 JavaScript 检查当前 URL 的哈希部分。

    4. 如果存在哈希部分,提取其中的 URL,并将页面重定向到该 URL。

-->

<html>

<head>

    <!-- 设置页面标题 -->

    <title>dom-xss-test</title>

    

    <!-- 引入 jQuery 库 -->

    <script src="https://code.jquery.com/jquery-1.6.1.min.js"></script>

    

    <script>

        // JavaScript 代码

        var hash = location.hash;

        

        // 如果 URL 中有哈希部分

        if(hash){

            // 提取 URL

**//hash.substring(1): 对 hash 字符串调用 substring(1) 方法。

//substring 方法用于提取字符串的一部分,参数为开始索引。

//在这里,从索引 1 开始提取,即去掉了 # 号。**

            var url = hash.substring(1);

            

            // 重定向页面到提取的 URL

            location.href = url;

        }

    </script>

</head>

<body>

    <!-- 页面主体内容 -->

    dom xss test.

</body>

</html>

#XSS跨站-分类测试-反射&存储&DOM

数据交互的地方


get、post、headers
反馈与浏览
富文本编辑器
各类标签插入和自定义

数据输出的地方
用户资料


数据输出


评论,留言等
关键词、标签、说明
文件上传

1.反射型XSS:(某案例测试)鸡肋,需要自己创建构造,还需要目标人物触发条件限制太多

重点:
1.页面输入的数据的是否能被自己掌控
2.进行判断是否是符号没有闭合还是存在过滤

2.存储型XSS:(某案例测试)交互性的方式和功能越多越容易实现入侵

存储型XSS是持久化的XSS攻击方式,将恶意代码存储于服务器端,

当其他用户再次访问页面时触发,造成XSS攻击。

测试靶场:小皮面板(phpStudy 服务器运维管理面板)

登录面板,发现存在==日志操作等功能,提示登录操作等信息 (可以使用XSS恶意代码在用户名上,当管理员访问日志的时候,自动触发==)

3.DOM-base型XSS:(某案例测试)

通过修改原始的客户端代码,受害者浏览器的DOM环境改变,导致有效载荷的执行。

页面本身没有变化,但由于DOM环境被恶意修改,有客户端代码被包含进了页面并执行。

测试对象:使用"edu.cn inurl:url=http" 在谷歌里面搜索对应网址

您提供的搜索字符串 “edu.cn inurl:url=http” 意味着您正在寻找包含 “edu.cn” 且在 URL 中包含 “http” 的网页。这样的搜索字符串通常用于在搜索引擎中查找具有特定特征的网站或页面。

“edu.cn”: 这是一个域名后缀,通常表示网站与教育机构相关,是中国的高等教育机构的域名后缀。通过在搜索中包含 “edu.cn”,您限定了搜索结果仅包含这一类域名。

“inurl:”: 这是搜索引擎查询语法中的一部分,用于指定搜索结果中必须包含特定字符串的 URL。在这里,“inurl:url=http” 表示搜索结果中的 URL 必须包含 “url=http” 这个字符串。

http://www.192011.com/export.php?url=http%3A%2F%2Fwww.nufe.edu.cn%2F(通过官方数据库,锁定URL,如果不是数据库中的网址,禁止替换)

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

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

相关文章

安防监控摄像头图传模组,1公里WiFi无线传输方案,监控新科技

在数字化浪潮汹涌的今天&#xff0c;安防监控领域也迎来了技术革新的春风。今天&#xff0c;我们就来聊聊这一领域的产品——摄像头图传模组&#xff0c;以及它如何借助飞睿智能1公里WiFi无线传输技术&#xff0c;为安防监控带来未有的便利与高效。 一、安防监控的新篇章 随着…

基于Java+Springboot+Vue开发的酒店客房预订管理系统

项目简介 该项目是基于JavaSpringbootVue开发的酒店客房预订管理系统&#xff08;前后端分离&#xff09;&#xff0c;这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能&#xff0c;同时锻炼他们的项目设计与开发能力。通过学习基于Java…

【AI学习】Mamba学习(七):HiPPO通用框架介绍

HiPPO这篇论文《HiPPO: Recurrent Memory with Optimal Polynomial Projections》&#xff0c;提出了一个通用框架。 我们再重新看一下论文的摘要&#xff1a; 从连续数据中学习的一个核心问题是&#xff0c;随着更多数据的处理&#xff0c;以增量方式表示累积历史。我们介绍了…

【记录】Windows|Windows 修改字体大全(Windows 桌面、VSCode、浏览器)

【记录】Windows&#xff5c;Windows 修改字体大全&#xff08;Windows 桌面、VSCode、浏览器&#xff09; 前言 最近从学长那里发现了一款非常美观的衡水体字体——Maple Mono SC NF。您可以通过以下链接下载该字体&#xff1a;https://github.com/subframe7536/maple-font/…

【C语言刷力扣】1832.判断句子是否为全字母句

题目&#xff1a; 法一 bool checkIfPangram(char* sentence) {int str[256];memset(str, 0, sizeof(int));for (int i 0; i < strlen(sentence); i) {str[ sentence[i] ];}for (int j a; j < z; j) {if (!str[j]) return false;}return true; } 法二 动态分配 typ…

C++ operator new和operator delete的深入讲解

个人主页&#xff1a;Jason_from_China-CSDN博客 所属栏目&#xff1a;C系统性学习_Jason_from_China的博客-CSDN博客 所属栏目&#xff1a;C知识点的补充_Jason_from_China的博客-CSDN博客 前言 关于operator new和operator delete我们需要明确一个概念&#xff0c;这两个都是…

2024全新UI网址发布页源码带黑夜模式

源码简介 2024全新UI网址发布页源码带黑夜模式&#xff0c;带网站延迟测速&#xff0c;该源码是html源码&#xff0c;可以做个引导页面。 安装教程 纯HTML&#xff0c;直接将压缩包上传网站目录解压即可(或在本地直接打开) 首页截图 源码下载 2024全新UI网址发布页源码带黑…

​​Vision Pro/空间计算小白体系化练手案例:从入门到精通的实战项目指南

引言 随着苹果Vision Pro的发布,空间计算技术正迎来前所未有的发展机遇。对于希望进入这一领域的开发者来说,掌握visionOS及相关工具链是至关重要的第一步。本文将介绍一系列由浅入深的实战项目,旨在帮助初学者系统地学习并实践visionOS开发。这些项目不仅适合个人学习,也…

踩坑日记:线上接口超时问题排查

1.背景: 上线后,功能测试. 进入小程序页面发现很慢,耗时超过5秒,打开skywalking发现大量接口耗时都很高. 2.top命令 服务器top命令查看cpu资源发现占用并不高 3.mysql查看sql运行情况 # 当前运行的所有事务 select * from information_schema.innodb_trx; 1 | …

国内液压一体式潜孔钻机市场相对分散

根据研究团队调研统计&#xff0c;2023年全球液压一体式潜孔钻机市场销售额达到了52亿元&#xff0c;预计2030年将达到90亿元&#xff0c;年复合增长率&#xff08;CAGR&#xff09;为7.1%&#xff08;2024-2030&#xff09;。中国市场在过去几年变化较快&#xff0c;2023年市场…

计算机网络基础(1)

个人主页&#xff1a;C忠实粉丝 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 C忠实粉丝 原创 计算机网络基础 收录于专栏【计算机网络】 本专栏旨在分享学习计算机网络的一点学习笔记&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目录 1. 计算机网…

100. UE5 GAS RPG 显示范围魔法的攻击范围

在这一篇里&#xff0c;我们将制作一个范围魔法&#xff0c;释放魔法时&#xff0c;我们将在鼠标拾取位置绘制一个魔法光圈&#xff0c;用于显示技能释放时攻击的范围&#xff0c;然后再次点击可以释放技能。 创建贴花类 魔法范围标识的光圈&#xff0c;我们采用贴花实现&…

AI 代码工具大揭秘:提高编程效率的必备神器!

近年来&#xff0c;人工智能得到了迅猛的发展&#xff0c;并在各行各业都得到了广泛应用。尤其是近两年来&#xff0c;AI开发工具逐渐成为开发者们的新宠&#xff0c;其中GitHub Copilot更是引发了无限可能性的探索。在本文中&#xff0c;我将向大家介绍一些实用性较高的智能开…

徒步1 -经典贪心

# 问题描述 小明想从A徒步到B&#xff0c;总路程需要M天&#xff0c;路程中为了确保安全&#xff0c;小明每天需要消耗1份食物。 在起点及路程当中&#xff0c;零星分布着N个补给站&#xff0c;可以补充食物&#xff0c;不同补给站的食物价格可能不同。 请问小明若要安全完…

求双十一宠物空气净化器推荐!希喂、范罗士、有哈哪款好用?

不知道大家有没有觉得&#xff0c;今年的双十一比以往要冷清些。还是朋友提醒我才知道&#xff0c;预售已经开始几天了&#xff0c;真切的体会到了消费降级带来的变化。不过自己的东西可买可不买&#xff0c;猫主子的口粮和生活用品还是要保证的。 把小猫接回来已经一年了&…

HTTP服务

一.http协议的介绍 http应用层协议 超文本传输协议&#xff08;比如网站上面的超链接&#xff09; 作用&#xff1a;构建网站服务器&#xff0c;可以在客户端与网站服务器之间传输文本数据。 浏览器会将文本数据解析成对应的图片&#xff0c;视频进行展示。 1.网站类型 静…

字符串(4)_字符串相乘_高精度乘法

个人主页&#xff1a;C忠实粉丝 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 C忠实粉丝 原创 字符串(4)_字符串相乘_高精度乘法 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目…

AD9361 的 TX 输出中添加前置放大器,并在 RX 输入中添加 LNA。

AD9361 的 TX 输出中添加前置放大器&#xff0c;并在 RX 输入中添加 LNA。 https://www.analog.com/en/resources/evaluation-hardware-and-software/evaluation-boards-kits/AD-TRXBOOST1-EBZ.html https://wiki.analog.com/resources/eval/user-guides/ad-trxboost1-ebz/in…

区块链技术与农产品溯源:实现透明供应链的关键

引言 随着食品安全问题和消费者对产品质量要求的提升&#xff0c;农产品溯源变得越来越重要。消费者希望知道他们购买的农产品从何而来&#xff0c;经历了哪些过程以及是否符合安全标准。区块链技术因其去中心化、不可篡改和透明的特点&#xff0c;成为实现农产品溯源的理想选…

程序员如何使用AI工具进行设计开发?

一、需求分析阶段 自然语言处理辅助理解需求&#xff1a; 使用自然语言处理工具&#xff0c;如 ChatGPT 等&#xff0c;将复杂的业务需求描述转化为更清晰的技术要求。例如&#xff0c;向 AI 解释项目的背景和目标&#xff0c;让它帮助梳理关键需求点和可能的技术挑战。通过与…