本文主要总结了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. 【彻底解决】django migrate (mysql.W002) 【专治强迫症】

    cmd中使用python3 manage.py migrate命令,报warn,很多人都遇到过 解决办法: settings.py文件夹加入DATABASES['OPTIONS']['init_com ...

  2. crontab和at任务

    crontab周期任务 名称解释: cron来源于希腊语 chronos(χρόνος),原意是时间.(引用自维基百科) tab全称是table,表 常用参数: -e 编辑crontab文件 -l 显 ...

  3. ​Django-model

    Model:数据库操作 创建数据库的表: django不能自动创建数据库,但能创建表 在web的models里定义生成表 在project的settings里设置app定义和数据库信息 步骤: 1.创 ...

  4. C# FTP下载图片转为Base64

    public string GetFtpBase64String(string FtpFilePath) { try { string sBase64String = string.Empty; Ft ...

  5. 【JAVA】HashMap的原理及多线程下死循环的原因

    再次翻到以前工作中遇到的一个问题,HashMap在多线程下会出现死循环的问题,以前只是知道会死循环,导致CPU100%把机器拖跨,今天来彻底看看 首先来看下,HashMap的原理:HashMap是一个 ...

  6. dbus-glib 和 GDBus 的区别

    http://people.freedesktop.org/~david/gio-gdbus-codegen-20110412/ch29.html Conceptual differences(概念上 ...

  7. Python 常用Web框架的比较

    转载来自:https://www.cnblogs.com/sunshine-1/p/7372934.html 从GitHub中整理出的15个最受欢迎的Python开源框架.这些框架包括事件I/O,OL ...

  8. html_Dom

    Document: 每个载入浏览器的HTML文档都会成为一个Document对象. Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问. 并且Document 对象是 Wi ...

  9. Cookie、cookie使用方法

    Cookie.cookie使用方法.保存用户名密码 //设置Cookie, //cname 获取时所需参数 //username,password 用于记住账号密码,如果只要存一个参数 passwor ...

  10. 安装VUE Cli3 框架方法

    下面为大家介绍一下怎样安装  VUE Cli3的步骤 官网地址  https://cli.vuejs.org/zh/guide/installation.html 一.首先要检查一下是否安装node环 ...