xss原理及简单介绍

XSS简单介绍—Web攻击

一 ·基础介绍

xss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的,而在xss攻击中,通过插入恶意脚本,实现对用户游览器的控制。

二·分类

(一)持久型/存储型

非持久型xss攻击是一次性的,仅对当次的页面访问产生影响。非持久型xss攻击要求用户访问一个被攻击者篡改后的链接,用户访问该链接时,被植入的攻击脚本被用户游览器执行,从而达到攻击目的。

例一:

通过在交互页面寻找xss漏洞,再通过插入xss恶意代码<script>alert(‘xss‘)</script> ,当管理员登陆界面时,就会弹出xss.

(二)非持久型/反射型

持久型xss攻击会把攻击者的数据存储在服务器端,攻击行为将伴随着攻击数据一直存在。下面来看一个利用持久型xss攻击获取session id的实例。

例二:

在交互页面输入<script>alert(‘xss‘)</script> 漏洞代码,立即弹出xss.

三·xss漏洞查找方法

1. 黑盒测试

所谓黑盒测试, 就是在不知道系统的代码和运行状态的条件下,对系统进行的测试。在对XSS漏洞的检测中,我们可以模拟黑客的攻击手段,在所有可能的数据输入接口处,尝试 进行一些XSS注入。通过观察注入后的引用这些数据的页面,看其是否出现被注入的现象,即可确实是否存在XSS漏洞。比如我们可以用下面所列的一些脚本来 尝试XSS注入:

><script>alert(document.cookie)</script>

=’><script>alert(document.cookie)</script>

<script>alert(document.cookie)</script>

<script>alert(vulnerable)</script>

<script>alert(’XSS’)</script>

<imgsrc=/uploadfile/2015/0301/20150301105236644.png” nerror=”alert(’XSS’)”>

2. 静态分析

静态分析方法属于白盒测试方法的一种,它通过对Web应用的代码进行分析,从而发现其中可能存在的问题。

3. 数据流分析

XSS 之所以产生,根本原因在于不安全的数据流, 使得用户的输入数据被直接嵌入到某些页面中。比如PHP中的echo语句,就能够将一些数据直接添加为 HTML页面的一部分,如果这个数据是用户注入了XSS脚本的数据,则会导致产生XSS攻击。因此,数据流分析的主要思想就是使用一些模型或者工具,分析 Web应用程序代码中的数据传输情况,从而发现其中存在的问题。

四·缺陷

1、耗时间
2、有一定几率不成功
3、没有相应的软件来完成自动化攻击
4、前期需要基本的html、js功底,后期需要扎实的html、js、actionscript2/3.0等语言的功底
5、是一种被动的攻击手法
6、对website有http-only、crossdomian.xml没有用

时间: 2024-10-25 19:46:57

xss原理及简单介绍的相关文章

VBox虚拟机与主机(宿主)通讯原理以及socat(套接字猫)简单介绍

前言 尝试虚拟机使用socat建立服务器端接口转发时,发现对虚拟机接入网络原理不是非常了解,于是乎上网查找资料想搞明白是怎么回事,于是乎有了这篇总结博文.socat可以在服务器端口间建立全双工通信通道,可以用于端口数据转发,据说是Linux/Unix系统三大神器之一. 虚拟机虚拟网卡连接模式 1.桥接模式 直接将虚拟网卡桥接在物理网卡上,虚拟机与主机地位对等,相当于局域网新增加了一台机器,虚拟机分配的IP是局域网真实的IP地址,主机与虚拟机以及局域网其它主机与虚拟机可以互相访问 2.仅主机(ho

LDAP服务器的概念和原理简单介绍

LDAP服务器的概念和原理简单介绍 LDAP和JNDI关系

HTTP原理简单介绍

嗯,  cao,卡顿5s,上次计划撸代码来着,后来感觉不很现实?又着实low比~就打算把笔记搞上一搞~然,今天起个大啊早,又来变卦.哈哈哈~人生处处不惊喜~嘻嘻嘻 来开始你的表演~ <HTTP原理简单介绍>,摘自某论坛......记不得了...... HTTP在今后互联网中(原文如是说)必然将扮演越来越重要角色,国外互联网大佬对https部署竭力鼓吹呐喊,HTTP/2协议推广更是逼着你不上也得上!在HTTPS普及化过程中,必然会损害某些集团利益,但这是互联网趋势,历史的洪流是谁也阻挡不了的(历

微信公告号实现原理简单介绍;

前段时间无聊玩了玩微信公告号的实现,现在简单介绍一下微信公告号的实现原理: 开发者模式: 开发者模式其实就是,使用自己的服务器,你可以选择任何一种后台web开发语言,我以java web的实现: 数据传递: 手机app微信客服端发送数据,数据先到微信服务器,然后微信服务器直 下面的json解析以JSONObject.fromObject(即JSONObject和JSONArray)的方式解析,最简单的方式,为简单案列使用的,对于复制项目,不推荐使用这种方式,建议使用gson包或者fastJSON

快速生成沙盒目录的路径,多图片下载的原理(SDWebImage框架的简单介绍)

一.快速生成沙盒目录的路径 这个类主要是为了方便你快速拿到沙盒目录里文件夹的路径 给NSString写个分类 NSString+CHG.h #import <Foundation/Foundation.h> @interface NSString (CHG) // 用于生成文件在caches目录中的路径 - (instancetype)cacheDir; // 用于生成文件在document目录中的路径 - (instancetype)docDir; // 用于生成文件在tmp目录中的路径 -

简单介绍一下线程池和数据库连接池的原理

当客户端请求的数据量比较大的时候,使用线程池可以节约大量的系统资源,使得更多的CPU时间和内存可以高效地利用起来.而数据库连接池的使用则将大大提高程序运行效率,同时,我们可以通过其自身的管理机制来监视数据库连接的数量.使用情况等.本文我们主要就介绍一下线程池和数据库连接池的原理,接下来我们一起来了解一下这一部分内容. 线程池的原理: 其实线程池的原理很简单,类似于操作系统中的缓冲区的概念,它的流程如下:先启动若干数量的线程,并让这些线程都处于睡眠状态,当客户端有一个新请求时,就会唤醒线程池中的某

使用Kafka的一些简单介绍: 1集群 2原理 3 术语

目录 第一节 Kafka 集群 Kafka 集群搭建 Kafka 集群快速搭建 第二节 集群管理工具 集群管理工具 集群 Issues 第三节 使用命令操纵集群 第四节 Kafka 术语说明 第五节 Kafka 集群工作原理 总结 第一节 Kafka 集群 如果你是开发, 对搭建kafka集群没什么兴趣, 可以跳过这一章, 直接看明天的内容. 如果你觉得多了解一点没有什么坏处的话, 请继续看下去. 提醒一下, 本章图多 Kafka 集群搭建 概述 kafka集群的搭建还是比较繁琐的, 虽然只是下

dubbo学习过程、使用经验分享及实现原理简单介绍

一.前言 部门去年年中开始各种改造,第一步是模块服务化,这边初选dubbo试用在一些非重要模块上,慢慢引入到一些稍微重要的功能上,半年时间,学习过程及线上使用遇到的些问题在此总结下. 整理这篇文章差不多花了两天半时间,请尊重劳动成果,如转载请注明出处http://blog.csdn.net/hzzhoushaoyu/article/details/43273099 二.什么是dubbo Dubbo是阿里巴巴提供的开源的SOA服务化治理的技术框架,据说只是剖出来的一部分开源的,但一些基本的需求已经

【dubbo基础】dubbo学习过程、使用经验分享及实现原理简单介绍

一.前言 部门去年年中开始各种改造,第一步是模块服务化,这边初选dubbo试用在一些非重要模块上,慢慢引入到一些稍微重要的功能上,半年时间,学习过程及线上使用遇到的些问题在此总结下. 整理这篇文章差不多花了两天半时间,请尊重劳动成果,如转载请注明出处http://blog.csdn.NET/hzzhoushaoyu/article/details/43273099 二.什么是dubbo Dubbo是阿里巴巴提供的开源的SOA服务化治理的技术框架,据说只是剖出来的一部分开源的,但一些基本的需求已经