简单了解WEB漏洞-XSS跨站


简单了解WEB漏洞-XSS跨站

XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括Java、 VBScript、ActiveX、 Flash 或者甚至是普通的HTML。攻击成功后,攻击者可能得到包括但不限于更高的权限(如执行一些操作)、私密网页内容、会话和cookie等各种内容。

XSS跨站漏洞产生原理,危害,特点

原理

变量接收数据的时候没有进行过滤(可以对变量传输恶意代码进行执行)

变量接收数据后进行输出而刚好接收到的是恶意代码→执行恶意代码从而带来危害

#演示代码
<?php
$xss = $_GET['x']
echo $xss
?>
http://127.0.0.1/test.php?x=  #对x提交恶意代码

image-20211115190733338

危害影响

通过执行JS脚本可以获取到网站相关信息

特点

产生层面:变量再前端进行传输因此XSS经常发生在前端

函数类:由输出类函数所造成

浏览器内核版本:部分安全策略较高的浏览器会阻止js脚本的执行 目前已知IE浏览器不可执行 opera chrome edge均可执行

XSS跨站漏洞分类:反射,存储,DOM

反射型

不会储存在网站数据库中 危害程度较小

只会在利用xss漏洞的时候触发一次并不会对后续产生影响

发送数据 x=xss ==> xss.php ==> 显示到前端

存储型

会储存在网站数据库中 危害程度较大

若访问到存在存储型XSS漏洞的页面直接就会触发恶意代码(看一眼就怀孕)

只有把代码删除才会得到解决

发送数据 x=xss ==> xss.php ==> 储存到数据库 ==> xss.php ==> 显示到前端

DOM型

HTML DOM树

详情了解JavaScript HTML DOM (w3school.com.cn)

image-20211115190733338

发送数据 x=xss ==> 本地浏览器静态前端代码 ==> xss.php ==> 显示到前端

DOM没有经过后端代码处理

# pikachu靶场DOM型XSS部分源码



# 传递过来的text参数经过该参数来处理

相关