Pikachu-Cross-Site Scripting-反射型xss(get)

ops/2024/10/9 4:40:03/

存储型XSS

存储型XSS是指恶意脚本被存储在目标服务器上,当用户访问包含该脚本的页面时,脚本会被执行。攻击者通常通过输入框、留言板等用户可输入的地方进行注入。例如,攻击者可以在留言板中输入恶意脚本,当其他用户查看留言时,脚本会在他们的浏览器中执行。

反射型XSS

反射型XSS是指恶意脚本通过‌URL传递给目标网站,网站在处理URL时将脚本插入到页面中,再将页面返回给用户。攻击者需要将恶意链接发送给目标用户,当用户点击该链接时,浏览器解析并执行其中的脚本。

DOM型XSS

DOM型XSS是指攻击者利用DOM文档对象模型(DOM)的漏洞,在客户端执行恶意脚本。这种类型的XSS不需要服务器端的参与,攻击者通过构造特定的URL或操作DOM,使得浏览器执行恶意脚本。例如,通过修改页面的某些部分来触发脚本执行。

渗透思路

1、在目标站点上找到输入点,比如查询接口,留言板等;
2、输入一组“特殊字符+唯一识别字符”,点击提交后,查看返回的源码,是否有做对应的处理;
3、通过搜索定位到唯一字符,结合唯一字符前后语法确认是否可以构造执行js的条件(构造闭合);提交构造的脚本代码(以及各种绕过姿势),看是否可以成功执行,如果成功执行则说明存在XSS漏洞;

TIPS :
1、一般查询接口容易出现反射型XSS,留言板容易出现存储型XSS;
2、由于后台可能存在过滤措施,构造的script可能会被过滤掉,而无法生效,或者环境限制了执行(浏览器);
3、通过变化不同的script,尝试绕过后台过滤机制;

先输入各种特殊字符,查看源代码,查看页面返回;

可以看到页面把输入直接返回, 查看后端代码;也是如此;

从输入可以看出 前端做了长度限制,可以通过源码修改;

也可以通过burp suite修改

最后结果得到 反射型xss


http://www.ppmy.cn/ops/122991.html

相关文章

如何使用ssm实现基于Java的民宿预订管理系统的设计与实现

TOC ssm773基于Java的民宿预订管理系统的设计与实现jsp 绪论 1.1课题研究背景意义 随着科技的发展,计算机的应用,人们的生活方方面面都和互联网密不可分。计算机的普及使得人们的生活更加方便快捷,网络也遍及到我们生活的每个角落&#x…

【C++】多态练习题(面试常考)

学习之前,建议观看:【C】多态:深度剖析(多态、虚函数、抽象类、底层原理)_c 多态和虚函数,虚函数的实现原理-CSDN博客https://blog.csdn.net/2301_80555259/article/details/142178677?spm1001.2014.3001.5501 一.概念…

前端推荐书单

‌HTML5‌ 《HTML5精粹》 《HTML5入门经典》 ‌《HTML5权威指南》‌ ‌《HTML5高级程序设计》‌ ‌《HTML5实战》,掌阅电子书,已读完,已记笔记95% 《HTML5揭秘》 《HTML5与CSS3权威指南》读20%,笔记20%‌ CSS3 《CSS3专业网页开发指…

go语言protoc的详细用法与例子

一. 原来的项目结构 二. 选择源proto文件及其目录&目的proto文件及其目录 在E:\code\go_test\simple_demo\api 文件夹下,递归创建\snapshot\helloworld\v1\ad.pb.go E:\code\go_test\simple_demo> protoc --go_outpathssource_relative:./api .\snapshot\h…

Unite Shanghai 2024 团结引擎专场 | 团结引擎 OpenHarmony 工程剖析

在 2024 年 7 月 24 日的 Unite Shanghai 2024 团结引擎专场演讲中,Unity中国 OpenHarmony 技术负责人刘伟贤对团结引擎导出的 OpenHarmony 工程进行了细节剖析,详细讲解 XComponent 如何与引擎结合,UI 线程和引擎线程的关联以及 ts/ets 的代…

【多重循环在Java中的应用】

多重循环在Java中的应用 介绍 多重循环是将一个循环嵌套在另一个循环体内的编程结构。Java中的 for、while 和 do...while 循环均可作为外层循环和内层循环。建议使用两层嵌套,最多不超过三层,以保持代码的可读性。 在多重循环中,外层循环执…

C++面试速通宝典——12

200. 局部变量和全局变量是否可以同名? ‌‌‌‌  可以。局部变量会屏蔽全局变量。要用全局变量,需要使用“::”(域运算符)。 解释: ‌‌‌‌  在C中,局部变量和全局变量可以同名。但是,…

pycharm中使用anaconda创建多环境,无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称

问题描述 用的IDE是: 使用anaconda创建了一个Python 3.9的环境 结果使用pip命令的时候,报错 无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称 解决方案 为了不再增加系统变量,我们直接将变量添加在当前项目中你的Ter…