xss挖掘初上手
本文主要总结了xss可能出现的场景。
偏向于案例,最后分享一哈简单的绕过和比较好用的标签。
1.搜索框
- 首先看能否闭合前面的标签。
如输入111”><svg/onload=alert(1)>
查看源码是否将前面标签闭合,可闭合的话可触发xss
- 如过无法闭合时,用事件来触发xss.
输入1111”><svg/onload=alert(1)>,F12看源码
![]()
发现”>无法闭合前面的标签。那么就用事件。
输入1111”onmouseout=”alert(1) 此处的事件是当鼠标放上去移走时触发xss
![]()
2. url参数
直接在url参数上插入xss代码。
![]()
3. Post传递的参数
在Post数据包的参数的xss
![]()
4. 留言板
留言板的基本都是存储xss
一般都是闭合前面字符,再插入xss代码。
具体要看插入的xss在源码中的位置。
5. 发布文章
发布文章处就和自定义一个html页面差不多。
可以自己自定义代码。同时要看系统的过滤了哪些标签。
src中存在较多的一般是某某智能系统,给你了模版,还可以自定义的。
![]()
![]()
6. 文件上传的名称处
此处xss较为少见,是因为返回包将输入的文件名重新输出了出来,造成了xss。
![]()
7. 文件上传内容(可定义html页面)
此处一般是上传文件php,asp,jsp等文件,系统会将其存储起来,而不解析。从而上传一个自定义的html让其解析。
![]()
访问返回的路径即可。
![]()
8. 数据包的cookie处
![]()
9. url无参数处
![]()
一般的提交框中插入xss
![]()
无参数时。
![]()
![]()
- 简单的绕过和标签
最后分享一下简单xss绕过。(还是要看输入的代码在源码中的位置)
三个弹窗函数 alert confirm prompt
如设置了黑名单可通过编码绕过(url编码,html编码,bs64编码)
过滤了()或者将()输出成中文的()可以用``代替。
拿出较为好用的payload
<details/open/ontoggle=alert(1)>
<svg/onload=alert(1)>
<img/src/onerror=alert(1)>
<video/src/onerror=alert(1)>
<script>(alert)(1)</script>
<video><sourceonerror="javascript:alert(1)">
<video/src/onloadstart="alert(1)">
<ahref=javascript:alert(1)>222</a>
xss挖掘初上手的更多相关文章
- XSS编码初析
首先我们应当了解,当我们发送一个请求链接时,服务器与客户端都发生了什么 这里仅涉及到js的编码问题,因此就编码来说,首先我们确定我们发出的请求是采用GET的方式还是采用POST的方式 若采用GET的方 ...
- Flash XSS漏洞快速上手
0x01 Flash XSS xss一是指执行恶意js,那么为什么说flash xss呢?是因为flash有可以调用js的函数,也就是可以和js通信,因此这些函数如果使用不当就会造成xss.常见的 ...
- XSS漏洞初窥(通过dvwa平台进测试)
xss的全称是:Cross Site Script,中文名叫“跨站脚本攻击”,因为和CSS重名,所以改名XSS.作为一个网站是肯定要和用户有交互的,那么肯定就伴随着信息的输入输出,而利用xss就是通过 ...
- Android 5.0 Lollipop初上手体验
在等了好几天还没有等到OTA升级提示,前天笔者给Nexus4线刷入了官方提供的Lollipop的镜像,在试用了这两天之后,现在总结下自己感觉很惊艳的地方和一些地方的吐槽.(点击图片可以查看大图) 1. ...
- TensorFlow.org教程笔记(一)Tensorflow初上手
本文同时也发布在自建博客地址. 本文翻译自www.tensorflow.org的英文教程. 本文档介绍了TensorFlow编程环境,并向您展示了如何使用Tensorflow解决鸢尾花分类问题. 先决 ...
- centos7初上手3-安装apache服务
前两篇学习安装了mysql服务器,tomcat服务,这篇文章学习安装apache服务 1.执行yum install httpd,安装完成后查看httpd rpm -qa|grep httpd 2.新 ...
- centos7初上手2-安装tomcat服务
上一篇文章说完安装mysql数据库,这篇文章来学习一下tomcat安装 1.先做准备工作,安装jdk,先看服务器上有没有安装相关java文件 下载好1.8版本的安装包,用xftp传到服务器上(根据个人 ...
- centos7初上手1-安装mysql数据库
随着云服务器的普及,购入云服务器的门槛越来越低,对一个程序员来说,很多人会购买一款云服务器.以前买过两年windows服务器(没有什么实际用途,就是为了玩),最近有机会接触一下linux服务器,选择了 ...
- Linux初上手!
虚拟机Virtual Box装的Kali Linux,是Debian的发行版本,安装过程不说了,不是硬盘安装也没什么说的,由于是新手所以只有两个分区,一个[/]和一个[swap] 装好之后是xwind ...
随机推荐
- postgre的函数创建
语法: CREATE [OR REPLACE] FUNCTION function_name (arguments) RETURNS return_datatype AS $variable_name ...
- Knockout 官网学习文档目录
官网:https://knockoutjs.com/documentation/introduction.html Knockout-Validation: https://github.com/Kn ...
- ***新版微信H5支付技术总结(原创)
新版微信H5支付官方文档: https://pay.weixin.qq.com/wiki/doc/api/H5.php?chapter=9_20&index=1 H5支付是指商户在微信客户端外 ...
- java gui 2
1,编写程序,随机生成两个数,用户输入两个数的和,并进行评判.程序的初始界面如下: 点击“获取题目”,随机生成两个100以内的int类型的数,界面如下: 提示: (1)使用java.util.Rand ...
- 双系统恢复CentOS的MBR
Win7 和 CentOS 的双系统,在重装 Windows 后,CentOS 就无法启动了,因为MBR被Windows重写了. 解决方法就是恢复 CentOS 的MBR,需要借助2款 Windows ...
- 重磅推出:AutoProject Studio 自动化项目生成器
AutoProject Studio 自动化项目生成器 核心架构图 AutoProject Studio 自动化项目生成器是一款基于C#.Net Framework 4.0为平台自主研发.专为软件设计 ...
- SQL数据库的操作,表的操作
数据库定义语言(DDL):用于对数据库及数据库中的各种对象进行创建,删除,修改等操作 (1)create:用于创建数据库或数据库对象 (2)alter:用于对数据库或数据库对象进行修改 (3)drop ...
- XAML控件不可访问,它具有一定的保护级别
其它namespace的代码访问控件时会出现这个问题 需要把控件状态由protected改为public <TextBlock x:FieldModifier="public" ...
- hdu1814 Peaceful Commission
hdu1814 Peaceful Commission 题意:2-sat裸题,打印字典序最小的 我写了三个 染色做法,正解 scc做法,不管字典序 scc做法,错误的字典序贪心 #include &l ...
- webpack 4+ vue-loader 配置 (完善中...)
webpack 4+ vue-loader 配置 写的demo,clone下来后,npm run dev即可,(此demo并未加入router) 可能会由于版本问题,配置会有些许改动,暂时都是可用的 ...