XSS | 青训营笔记

A2UI 1.0 安全实战:JSON 界面、组件白名单、XSS 与授权检查 A2UI 1.0 是什么,如何安全呈现 Agent 生成的动态界面?从 JSON 消息、组件白名单、XSS 到用户确认与独立工具授权,基于 6 项 Node 和 1 项 Chrome 本地测试给出可复现代码与上线检查。实验仅覆盖自建协议子集,不代表官方 SDK 安全认证。 阅读详情

XSS | 青训营笔记

这是我参与「第四届青训营」笔记创作活动的的第9天。

XSS简介

XSS又叫CSS(Cross-Site Script),跨站脚本攻击是指恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。

XSS漏洞通常是通过php的输出函数将JavaScript代码输出到HTML页面中,通过用户本地浏览器执行的,所以XSS漏洞关键就是寻找参数未过滤的输出函数。

常见的输出函数有: echo、printf、print、print_r、sprintf、die、var-dump、var_export。

XSS原理

攻击者对含有漏洞的服务器发起XSS攻击(注入JavaScript代码),诱使受害者打开受到攻击的服务器URL,受害者在Web浏览器中打开URL,恶意脚本执行。

XSS的攻击方式

  • 反射型XSS:<非持久化> 攻击者事先制作好攻击链接, 需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的页面和内容),一般容易出现在搜索页面。一般是后端代码进行处理
  • 存储型XSS:<持久化> 代码是存储在服务器数据库中的,如在个人信息或发表文章等地方,加入代码,如果没有过滤或过滤不严,那么这些代码将储存到服务器中,每当有用户访问该页面的时候都会触发代码执行,这种XSS非常危险,容易造成蠕虫,大量盗窃cookie(虽然还有种DOM型XSS,但是也还是包括在存储型XSS内)。
  • DOM型XSS:基于文档对象模型Document Objeet Model,DOM)的一种漏洞。DOM是一个与平台、编程语言无关的接口,它允许程序或脚本动态地访问和更新文档内容、结构和样式,处理后的结果能够成为显示页面的一部分。DOM中有很多对象,其中一些是用户可以操纵的,如uRI ,location,refelTer等。客户端的脚本程序可以通过DOM动态地检查和修改页面内容,它不依赖于提交数据到服务器端,而从客户端获得DOM中的数据在本地执行,如果DOM中的数据没有经过严格确认,就会产生DOM XSS漏洞。一般是浏览器前端代码进行处理。

XSS的危害

  1. 挂马
  2. 盗取用户Cookie
  3. DOS(拒绝服务)客户端浏览器
  4. 钓鱼攻击,高级的钓鱼技巧
  5. 删除目标文章、恶意篡改数据、嫁祸
  6. 劫持用户Web行为,甚至进一步渗透内网
  7. 爆发Web2.0蠕虫
  8. 蠕虫式的DDoS攻击
  9. 蠕虫式挂马攻击、刷广告、刷浏量、破坏网上数据
  10. 其它安全问题

XSS的攻击方式

scirpt 标签

script 标签用于定义客户端脚本,比如 JavaScript。

    <script>alert(1);</script>
    <script>alert("xss");</script>

img 标签

img 标签定义 HTML 页面中的图像。

<img src=1 onerror=alert(1);>
<img src=1 onerror=alert("xss");>

input 标签

input 标签规定了用户可以在其中输入数据的输入字段。

<!-- onfocus 事件在对象获得焦点时发生: -->
<input onfocus=alert(1);>

竞争焦点,从而触发onblur事件:

<input onblur=alert(1) autofocus><input autofocus>

input 标签的 autofocus 属性规定当页面加载时 元素应该自动获得焦点。可以通过autofocus属性自动执行本身的focus事件,这个向量是使焦点自动跳到输入元素上,触发焦点事件,无需用户去触发。

<input onfocus="alert(1);" autofocus>
" οnclick=alert(1)>        这样需要点击一下输入框<br>
" onmouseover=alert(1)>    需要鼠标划过输入框<br>

XSS基本过滤方法

空格过滤

/**/,注释符号绕过;/符号绕过;

<img/src="x"/onerror=alert(1);>

也可以:

<img/src="x"onerror=alert(1);>

引号过滤

如果是html标签中,我们可以不用引号。如果是在js中,我们可以用反引号代替单双引号:

<img src=x onerror=alert(`xss`);>

括号过滤

当括号被过滤的时候可以使用throw来绕过。throw 语句用于当错误发生时抛出一个错误。

<img src=x onerror="javascript:window.οnerrοr=alert;throw 1">
<a onmouseover="javascript:window.onerror=alert;throw 1>           
ESP32搭配LVGL显示图片的两种方法详解:内部存储 vs 外部文件 本文详细介绍了ESP32搭配LVGL显示图片的两种方法:内部存储与外部文件。内部存储方案适合快速响应的小图片,而外部文件方案则适用于需要灵活更新和大容量图片的场景。通过对比分析,帮助开发者根据项目需求选择最优方案,提升嵌入式系统的UI性能。 阅读详情

相关推荐

NBIS单细胞教程:差异基因(五)

此文章是通过学习瑞典国家生物信息学基础设施(NBIS) 所开放的单细胞分析教程加上网上所查找的资料,自身的理解所形成的,可能会有不足之处。该部分是对不同集群之间的差异基因进行分析。参考来源:https://github.com/NBISweden/workshop-scRNAseq/blob/master/labs/seurat/seurat_05_dge.Rmd感兴趣的话可以阅读原文。

songyi10的博客 1万+

训练营(九)XSS

XSS 什么是XSS 全称:Cross Site Script 中文名:跨站脚本 危害:盗取用户信息、钓鱼、制造蠕虫等 概念:黑客通过“HTML注入”篡改网页,插入的恶意脚本。当用户在浏览网页时,实现控制用户浏览器行为的一种攻击方式。 方式:盗取Cookie XSS分类 存储型 攻击过程: 反射型 原理: 过程: 对比: DOM型 原理: 过...

KeithAlexander的博客 336

代号OneNET02 STM32+ESP8266 WIFI系列-第2节-STM32单片机通过ESP8266连接WIFI访问OneNET OTA服务器实现SOTA远程程序升级

第2节-STM32单片机通过ESP8266连接WIFI访问OneNET OTA服务器实现SOTA远程程序升级,这一节主要是实现通过OneNET OTA服务器将需要更新的程序远程下载到STM32单片机,这一节主要是引导程序和应用程序的讲解。

weixin_44862509的博客 1906

Web开发安全-攻击篇XSS | 青训营笔记

theme: healer-readable highlight: atelier-cave-light 这是我参与「第四届青训营 」笔记创作活动的第5天 Web开发安全 在web开发中,安全是非常重要的一环,如果不注意,用户信息,数据库权限等一些对企业、用户产生威胁将会掌握在不法分子的手中。我们需要不断地学习,发现代码的漏洞,与黑客斗智斗勇。这是一个你追我赶的过程。 XSS原理 ...

y943711797的博客 108

第一篇:常见CAN错误帧及其排查方向

在本文中主要阐述各类错误帧的形成原因以及在使用同星硬件设备出现错误帧时,应当 如何进行排查并消除错误帧。在 CAN 总线通信中,通常遇见的错误帧主要为以下五种,其 分别是:bit error、ACK error、stuff error、CRC error 以及 form error。

u013089100的博客 1746

Wireshark、Fiddler、Charles 三款抓包工具的本质差异与选型指南

抓包工具是网络调试与接口分析的基础能力,其核心在于理解OSI模型分层原理——不同工具工作在不同协议层级,解决不同维度问题。Wireshark面向网络层(L2/L3),可捕获原始数据帧与TCP握手细节,适用于DNS异常、丢包重传等底层问题定位;Fiddler和Charles则工作在应用层(L7),作为HTTP(S)代理实现HTTPS解密、请求改写与弱网模拟,是API调试与移动端测试的首选。技术价值体现在:精准匹配问题域(如证书固定需Fiddler脚本绕过,iOS调试依赖Charles证书信任链),避免‘用显微

weixin_28831341的博客 254

Web安全开发 | 青训营笔记

Web安全开发 这是我参与「第四届青训营」笔记创作活动的的第7天!跨站脚本攻击、跨站请求伪造、注入攻击、中间人攻击...

weixin_46248051的博客 974

SAP PS项目结算实操:从CJ20N到CJ88,手把手搞定项目成本结转与凭证生成

本文详细解析SAP PS项目结算全流程,从CJ20N到CJ88的操作要点,涵盖成本归集、结算规则配置、结果分析及凭证生成等关键环节。特别针对FICO模块中的项目凭证流转问题提供实战解决方案,帮助财务人员规避常见配置错误,提升项目结算效率与准确性。

weixin_26833503的博客 820

网络常见安全漏洞 | 青训营

随着互联网的迅猛发展,网络安全问题日益严重。在网络世界中,各种常见的安全漏洞给人们的通信和数据安全带来了巨大的威胁。本文将介绍一些常见的网络安全漏洞,并提供一些防范措施。

wuli1024的博客 1325

解决TexStudio编写LaTeX论文引用文献问题:正文引用处出现[?],参考文献也不显现

当我们利用LaTeX编写论文时,可能会出现引用参考文献时正文引用处出现?号,肯能的原因及解决方案如下: 问题一 忘记在\end{document}前面放\bibliographystyle{样式}和\bibliography{参考文献bib文件名}: \bibliographystyle{plain} \bibliography{sample} 其中, LaTeX 标准选项及其样式共有以下8种: plain,按字母的顺序排列,比较次序为作者、年度和标题. unsrt,样式同plain,只是按照引用的先后

左手の明天的博客 9530

Python爬虫逆向案例:某云片滑块验证码分析-滑动验证码

今天我们看个滑块。

2201_76125393的博客 1035

Web开发的安全之旅| 青训营

安全问题"很常见”,会危害。

Azbtt的博客 745

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

网站常见安全漏洞 | 青训营

网站常见安全漏洞 | 青训营

NEFU AB-IN's Blog 1289

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Web安全基础:常见的Web安全威胁及防御方法 |青训营

web安全

顶峰 632

面了三次字节,他的一些感悟

你好,我是TianTian。今天分享一篇小K投稿的字节面试记录,这是他第三次面字节了,之前投稿过一次:两个部门,六轮面试,终与字节无缘简单介绍一下,小K,目前是大专,22届毕业,他接下来计...

李dayday 785

Web开发安全

Web开发安全 参加字节跳动的青训营时写的笔记。这部分是刘宇晨老师讲的课。 个人博客(欢迎光临):Web开发安全(赤蓝紫) 1. 攻击 1.1 跨站脚本攻击(XSS) XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。 如填写表单信息时,如果盲目相信用户的提交内容,那么假如用户填写了类似<script>alert("注入恶意代码")</script>的信息,然后直接通过element.innerHTML

赤蓝紫の博客 2837

字节资深程序员经验分享——学习后端之路

如果一开始没办法进入大公司,那么就要在小公司里边工作、边深入学习你工作中使用的技术。深入学习的套路依然还是,搞清楚你用到的框架是实现原理是什么,你用到的数据库实现原理是什么。然后找机会进大公司。工作中我们要做到对一个系统熟悉,核心还是要了解到数据在系统中数据是怎么存的,怎么流转的。【Golang】: slice、map、goroutine、并发控制(锁)。通常意义上一个好的开局:去大公司,第一份工作方向就是就是喜欢长期深入的方向。【MySQL】︰索引的数据模型是什么、实际存储在硬盘上的物理模型是什么。

m0_63230155的博客 462

跨站脚本攻击(XSS)防护实战演练

XSS(Cross-Site Scripting,跨站脚本攻击)是最经典的 Web 安全漏洞之一,本质是代码注入攻击:攻击者在目标网页中植入恶意 JavaScript 脚本,当普通用户访问页面时,浏览器无法区分「原生代码」和「用户输入的数据」,会无差别执行注入的脚本,进而实现窃取用户凭证、劫持登录会话、篡改页面内容、钓鱼诱导、传播恶意程序等危害。之所以叫「跨站」,是因为早期攻击主要用于从目标站点窃取数据发送到攻击者的第三方站点;

2501_94567985的博客 741

XSS-Labs 靶场通关全记录(上):XSS 的前世今生与基础反射型实战(Level 1–10)

本文为XSS安全入门上篇,面向零基础读者,系统讲解跨站脚本攻击的本质:从“弹窗”表象深入到输入输出上下文的解析逻辑。通过部署XSS-Labs靶场,逐关拆解Level1至Level10的绕过原理,涵盖反射型、存储型、DOM型差异,揭示引号闭合、事件属性、伪协议、大小写/双写/实体编码、注释诱饵、属性覆盖等经典绕过手法。强调防御核心在于“上下文输出编码”与“协议白名单”,而非依赖关键词黑名单。全文以实战为导向,帮助读者建立“看位置、判上下文、构造最小验证”的安全思维,真正理解XSS为何持续威胁Web安全。

446

Web 版翻译者资料库

本项目是桌面版《翻译者资料库》的 Web 移植版,基于 Spring Boot 3.3、Thymeleaf、Bootstrap 5.3 与 MySQL 8.0 构建。它面向翻译写作提供资料、词汇、句库、文本工具、对照制作、查找、备份恢复及旧库迁移等功能,完整继承桌面版核心业务规则,支持一键启动与离线访问。

howard2005的专栏 184

Jackson 序列化 / 反序列化注解 完整版笔记

Jackson 序列化 / 反序列化注解 完整版笔记

handsome_sai的博客 306

MCP 协议会成为前端 AI 工程的标准接口吗?

MCP(Model Context Protocol)正在成为连接 AI 模型与外部工具、数据源的一层通用协议。本文从 MCP 的核心机制出发,分析它在浏览器与前端工程中的落地边界,讨论它能否成为前端 AI 工程的标准接口,并给出当下更务实的架构选择建议。

m0_62937412的博客 387

LangGraph 本地 build 频频翻车,最终在服务器跑通流式对话

先说结论:我本地那个,一次都没成功过。三次,三次,全挂在拉镜像上。而顺得像刚上过油。这就很像我高中那辆自行车:骑着能走,一上锁就坏。那天晚上我盯着终端里那行红字看了很久,想的不是技术方案,想的是——为什么同一个工具,可以一边让我觉得自己很行,一边让我觉得自己不太行。

人工智能AI技术 321

带着小白学习-微服务-6 实战:网关

地址栏输入:http://localhost:8088/goods/index,这时候就不是到8100端口去调用了,而是8088直接通过路由转发,分别到nacos对应的goods对应的服务中区调用。** 可以看出,这里将前面已经正常运行的server-store子工程(库存服务,服务提供方),server-goods子工程(商品服务,服务消费方)。(1)uri: lb://store 代表要到nacos的注册中心的服务列表中找到服务名为store的微服务;,网关是做路由转发,不是服务调用;

wdyan297的博客 242

海外平台频繁弹验证?从 DNS、WebRTC 到浏览器指纹的环境异常排查清单

在运营多地区海外平台账号时,即使代理节点通畅、TCP 握手成功,仍可能遇到频繁人机验证、地区限制、播放失败等异常。核心结论是:这类问题往往不在网络传输层,而在浏览器环境参数与网络出口之间的逻辑自洽性。本文从 DNS 泄漏、WebRTC 穿透、时区与语言匹配、Canvas/WebGL 指纹、TLS 特征五个维度,给出一份可复现的环境异常排查清单,并对比个人手动配置与工程化环境管理方案的适用边界。适用于跨境运营、多账号运维团队。

P1Browser【p1指纹浏览器】的博客 229
上一篇: SQL注入 | 青训营笔记
下一篇: HTTP/HTTPS | 青训营笔记
UestcXiye
博客等级 码龄8年 9032粉丝 1306原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UestcXiye

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值