网安学习笔记(二)——XSS漏洞

此文为了仅为了帮助自己记录学习网络安全时的笔记。小白一枚,如有错误还望大佬指正。

XSS漏洞

简介

XSS漏洞即跨站脚本攻击(Cross Site Scripting),是指攻击者往web页面中国插入恶意的script代码,当用户浏览该页面时,嵌入web页面中的script代码就会被执行,从而达到恶意攻击用户的目的。

原因

XSS漏洞产生原因:对用户的输入未进行有效的过滤,编码,输出到网页中,导致注入并执行JavaScript代码。

常见位置

根据其产生的原因我们可以知道时未对用户的输入进行有效的过滤,所以XSS只会出现在对用户输入进行输出的地方,包括但不限于:留言板,搜索框,用户昵称,个人简介,复选框等。

分类

xss分为反射型,存储型以及DOM型。

反射型

直接输入参数,返回页面中包含输入的参数,但是数据不保留在服务器的数据库中。

反射性 XSS 只执行一次,且需要用户触发

存储型

直接输入参数,返回页面中包含参数,并且用户提交的数据存储到数据库中。

DOM型

使用javascript进行前端渲染时导致的xss。

反射型xss与存储型xss的判断依据:payload是否存储在数据库中。

xss只会出现在对用户输入进行输出的地方。

危害

包括但不限于:

盗取各类用户权限(cookie)

xss蠕虫

网站劫持(钓鱼,刷流量,篡改页面,挂马)

内网扫描

防御

防御xss 的核心思想:将用户输入看作文本,使浏览器无法将输出内容看作代码;

对输入和url进行编码过滤(将所有的英文符号进行转义,转义为空或者html实体编码)

在输入端写一个xss filter

对输出进行编码

使用httpOnly

 

httpOnly是cookie中的标识,他的作用是阻止JavaScript读写存在该标识的cookie

绕过手法

转义字符

单引号过滤

支持onerror属性的标签 img  object style

大小写混写

img src属性

 

 

 

你可能感兴趣的:(网安学习笔记(二)——XSS漏洞)