Less - 11:

1.观察界面和源代码可知,依旧是隐藏表单

2.突破点是

$str11=$_SERVER['HTTP_REFERER'];

(本题为HTTP头REFERER注入)

3.因此构造payload对t_ref进行修改

payload:

click here~" type="button" onclick="javascript:alert(1)"

4.

Less - 12:

1.直接分析源码,可以判断此题为user-agent注入

2. 启动bp拦截一下,

3.用payload替换,

Less - 13:

1.分析源代码,发现是cookie注入

2.依旧拦截抓包,修改

3.通关

Less - 14:

地址失效

Less - 15:

1.查看源代码,发现有弹窗脚本

  补充:

    ①ng-include 指令用于包含外部的 HTML 文件。包含的内容将作为指定元素的子节点。

    ②ng-include 属性的值可以是一个表达式,返回一个文件名。默认情况下,包含的文件需要包含在同一个域名下。

2.思路:

  ①使其包含leve 1 文件并构造如下payload ,利用src异常报错 。

  ②onerror 事件在加载外部文件(文档或图像)发生错误时触发。

3.做法:搜索发现无隐藏输入框,找到一个img标签,用于加载页面图片

4.尝试利用img标签的src路径错误触发的onerror事件,来制造弹窗,即:将src置空,新增onerror事件为alert(1)

构造payload:

'level1.php?name=test<img src=1 onerror=alert(1)>'

总结:无input标签,但是发现img标签,利用其空src的报错事件(onerror) 进行绕过

(法二:见http://0verflow.cn/?p=1764

Less - 16:

1.查看源代码,依旧是统一小写+各种过滤替换......把 “script”、”/”、”空格” 转换为”&nbsp” 这个实体编码,那就不能双写绕过和大小写混合绕过了。

2.尝试使用回车符%0a进行(经过尝试是可以的)

3.发现<center>标签,作用为

4.script我们可以使用%a0隔开绕过替换,空格替换可以使用%0a代替,但是反斜杠却没法绕过,所以只能不使用反斜杠。

5.构造payload:

<a%0ahref="javascr%0aipt:alert(1)">
 

Less - 17:

1.进入页面发现有两个注入点

2.查看源代码,发现<embed>标签,由于embed支持html事件属性,那就可以给他添加一个属性,比如onclick

3.尝试构造payload

arg01= onclick&arg02=javascript:alert(1)

Less - 18:

思路和上一关完全一样,引用上一关payload

arg01= onclick&arg02=javascript:alert(1)

Less - 19-20:

flash xss,涉及到反编译(没怎么肝明白,还在看,,,)

可以参考

https://blog.csdn.net/u014029795/article/details/103213877

https://blog.csdn.net/u014029795/article/details/103217680?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159547621119725219908275%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=159547621119725219908275&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v3~pc_rank_v4-1-103217680.first_rank_ecpm_v3_pc_rank_v4&utm_term=xss-labs%2019&spm=1018.2118.3001.4187

XSS - Labs 靶场笔记(下)的更多相关文章

  1. XSS - Labs 靶场笔记(上)

    上周在网上看到的一个XSS平台,刷一波<doge Less - 1: 1.进入主界面,由图二可知是GET请求,提交name=test,回显在页面 2.查看源代码可知 没有做任何过滤,显然存在反射 ...

  2. Sqli - Labs 靶场笔记(一)

    Less - 1: 页面: URL: http://127.0.0.1/sqli-labs-master/Less-1/ 测试: 1.回显正常,说明不是数字型注入, http://127.0.0.1/ ...

  3. sqli-labs 靶场笔记

    sqli-labs 靶场笔记 冲冲冲,好好学习 2020年1月12号 先来点铺垫 分类: 按照请求方法分类: 1.Get型注入:注入参数在get的参数里. 2.POST型注入:注入参数在POST的参数 ...

  4. pyqt样式表语法笔记(下)--原创

    pyqt样式表语法笔记(下) python 启动界面 QSS pyqt 一.启动界面的设置 简单点~说话的方式简单点用一张静态图片作为程序启动界面为例. 原来的语句     python    7行 ...

  5. 菜鸟教程之学习Shell script笔记(下)

    菜鸟教程Shell script学习笔记(下) 以下内容是学习菜鸟教程之shell教程,所整理的笔记 菜鸟教程之shell教程:http://www.runoob.com/linux/linux-sh ...

  6. 02 - Unit07:显示笔记下拉菜单、笔记的分享功能、笔记的删除功能

    显示笔记下拉菜单 笔记的分享功能 发送Ajax请求 绑定事件:绑定分享按钮单击事件 参数获取:笔记ID 发送请求:/share/add.do 服务器处理 ShareController ShareSe ...

  7. (未完)XSS漏洞实战靶场笔记

    记录下自己写的XSS靶场的write up,也是学习了常见xss漏洞类型的实战场景

  8. CSRF漏洞实战靶场笔记

    记录下自己写的CSRF漏洞靶场的write up,包括了大部分的CSRF实战场景,做个笔记. 0x01 无防护GET类型csrf(伪造添加成员请求) 这一关没有任何csrf访问措施 首先我们登录tes ...

  9. (未完)经典Web漏洞实战演练靶场笔记

    记录下自己写的经典Web漏洞靶场的write up,包括了大部分的经典Web漏洞实战场景,做个笔记. 0x01 任意文件下载漏洞 if(!empty($_GET['filename'])){ $fil ...

随机推荐

  1. Java——排序算法

    java排序从大的分类来看,可以分为内排序和外排序:其中,在排序过程中只使用了内存的排序称为内排序:内存和外存结合使用的排序成为外排序. 下面讲的都是内排序. 内排序在细分可以这样分: 1.选择排序: ...

  2. js下 Day14、面向对象案例

    一.软键盘拖拽 效果图: ![img](file:////Users/sairitsutakara/Library/Group%20Containers/UBF8T346G9.Office/Tempo ...

  3. Protobuf简单类型直接反序列化方法

    我有一个想法,有一个能够进行跨平台的高性能数据协议规范,能够让数据在两个不同的程序之间进行读取,最好能够支持直接将object序列化,那就完美了. 目标 支持任意Object序列化 支持从类似Syst ...

  4. python之列表操作的几个函数

    Python中的列表是可变的,这是它却别于元组和字符串最重要的特点,元组和字符串的元素不可修改.列举一些常用的列表操作的函数和方法. 1,list.append(x),将x追加到列表list末尾: 1 ...

  5. python初学者-从键盘获取信息

    name = input(">>> 姓名:") QQ = input(">>>QQ: ") phone_num = inpu ...

  6. 我都xxx岁了,还能继续做开发吗?

    前言 今天纯文字,阅读时间10分钟左右 最近在看一本书<大型网站技术架构:核心原理与案例分析>,可以说是非常枯燥的一本书,在开头几章讲解了网站的发展,介绍了一些架构中的常用名词.虽然有点枯 ...

  7. ssms导入excel数据提示未安装插件的解决方法

    今天用ssms导入excel的时候,提示 然后去找了一下解决方案,安装了相对应的插件.但是还是会提示这个问题. 又去找了一下原因,找到一个原因是sqlserver启动的时候是32位的,但是导入需要64 ...

  8. (java)五大常用算法

    算法一:分治法 基本概念 1.把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题--直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并. 2.分治策略是对于一个 ...

  9. 一个简单的struts2项目

    1.新建一个 Dynamic Web Project 项目 2.配置 struts.xml文件 <?xml version="1.0" encoding="UTF- ...

  10. 阿里云Ubuntu配置安装MQTT服务器

    先来说说mqtt协议: MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,它比较适合于在低带宽.不可靠的网络的进行远程 ...