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

XSS内容分享

反射型XSS

反射型XSS 是非持久性、参数型的跨站脚本。反射型XSS 的JS 代码在Web 应用的参数(变量)中,如搜索框的反射型XSS。在搜索框中,提交PoC[scriptalert(/xss/)/script],点击搜索,即可触发反射型XSS。注意到,我们提交的poc 会出现在search.php 页面的keywords 参数中。

就我个人理解而言,简单来说反射型XSS就是对于用户的输入没有任何限制(过滤),所以用户可以输入恶意js代码被页面解析

下面是几个简单的反射型XSS的靶场

level1

img标签可以引入图片

超链接

level2(input表单)

引入了HTML实体,将<实体化了,将p标签显示到页面上,导致失效。(使用过滤函数进行js恶意代码的预防)

总共页面可以接受三种编码:urlcode,html实体编码,js unicode

解题思路,双引号闭合,逃逸出value。

1.用户参与

用户点击:a"onclick"alert(1) 最后用户得触发

鼠标滑过:a"onmouseover"alert(1) 鼠标滑过

2.用户不参与

"a”><script>alert(1)</script>>

双引号提前闭合了,后面的标签就能正常显示了

level3

从题目就可以看出

最外层是拿单引号在过滤,并且没有设置过滤单引号

可以就看到onclick函数已经标红了

level4

第四关和第三关类似,只是这次是双引号

level5

第五关过滤了关键词,比如on,还有script标签,关键在于没有过滤<尖括号

多设置一aaaaa的标签

level6

第六关多过滤了几个标签,但是 还是没有过滤标签。关键区分大小写,html中可以这么些,但是在js中不能这么写。

level7

这种过滤比较垃圾,他只过滤一次,你可以双写on来绕开过滤

level8

这一关关键在于改成其他编码。

http://www.lryc.cn/news/596558.html

相关文章:

  • 智能泵房监控系统:物联网应用与智能管理解决方案
  • Qt中QObject类的核心作用与使用
  • Qt 事件处理机制深入剖析
  • List<UserInfo> list = new ArrayList<>();为什么要这样创建数组?
  • 如何用keepAlive实现标签页缓存
  • 从 COLMAP 到 3D Gaussian Splatting
  • 滑动窗口经典问题整理
  • langchain4j之RAG 检索增强生成
  • Linux操作系统之线程(六):线程互斥
  • TCP day39
  • 质量即服务:从测试策略到平台运营的全链路作战手册
  • 重生学AI第十九集:VGG16的使用以及模型的保存与加载
  • 【期末考试复习】计算机组成原理 - 直接补码阵列乘法器
  • 【接口自动化】pytest的基本使用
  • CSS+JavaScript 禁用浏览器复制功能的几种方法
  • web登录页面
  • 黑马点评练习题-给店铺类型查询业务添加缓存(String和List实现)
  • kafka4.0集群部署
  • 数据结构01:链表
  • docker compose 安装使用笔记
  • Docker实战:使用Docker部署TeamMapper思维导图工具
  • 【实时Linux实战系列】基于实时Linux的传感器网络设计
  • Spring Boot音乐服务器项目-登录模块
  • 【论文阅读】Fast-BEV: A Fast and Strong Bird’s-Eye View Perception Baseline
  • 基于VU13P的百G光纤FMC高性能处理板
  • Rust实战:决策树与随机森林实现
  • 板凳-------Mysql cookbook学习 (十二--------5)
  • 【RAG优化】PDF复杂表格解析问题分析
  • 阶段1--Linux中的文件服务器(FTP、NAS、SSH)
  • 从差异到协同:OKR 与 KPI 的管理逻辑,Moka 让适配更简单