WEB漏洞—XSS跨站之原理分类和攻击手法

发布时间 2023-07-12 23:56:05作者: 执小汐

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

本质,产生层面,函数类,漏洞操作对应层,危害影响,浏览器内核版本等

#原理:对参数进行回显,传递的参数的的代码就会被回显者的浏览器执行。即对文件显示过程出现了问题。

#本质:是前端漏洞,一般是js代码

产生层面:一般在前端

危害影响:受到js代码影响

#创建一个回显传参的脚本

 x=<script>alert(2)</script>,得到回显效果

浏览器内核版本:市面常用的浏览器能正常回显,IE浏览器不行,若有些浏览器的安全机制较高,则可能会阻止js脚本的执行 

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

反射型

发包X=123 => x.php =>回包

产生原因:没有对用户提交的内容进行可靠的输入验证。

大致意思,当用户在网站的地址栏输入URL,从服务器端获取到数据时,网站页面会根据返回的信息而呈现不同的返回页面,如果这个时候恶意用户在页面中输入的数据不经过验证且不经过超文本标记语言的编码就录入到脚本中,就会产生漏洞

#利用js代码,<script>alert(2)</script>,有回显

#也可以在URL地址上写代码

 

存储型

发包X=123 => x.php =>写到数据库=> x.php=>回显

攻击脚本将被永久的存放在目标服务器的数据库或文件中。这是利用起来最方便的跨站类型,跨站代码存储于服务端(比如数据库中)

攻击者在发帖或留言的过程中,将恶意脚本连同正常信息一起注入到发布内容中。随着发布内容被服务器存储下来,恶意脚本也将永久的存放到服务器的后端存储器中。当其他用户浏览这个被注入了恶意脚本的帖子时,恶意脚本就会在该用户的浏览器中执行。 

产生原因:未经适当 过滤净化就将保存在后端数据库的 用户提交的数据显示给其他用户。

 

DOM型

发包x=123 => 本地浏览器静态前段代码=x.php

#应用场景:在这种存在查看更多,点击查看更多之后,网站的URL并不会改变。和其它换页不同的是,其它是通过改变URL编号来换页的。

这种XSS与反射型XSS、持久型XSS在原理上有本质区别,它的攻击代码并不需要服务器解析响应,触发XSS靠的是浏览器端的DOM解析。客户端上的JavaScript脚本可以访问浏览器的DOM并修改页面的内容,不依赖服务器的数据,直接从浏览器端获取数据并执行。在客户端直接输出DOM内容的时候极易触发DOM型XSS漏洞

DOM型是直接调用前段静态代码#'onclick="alcrt(2)">

 

#cookie和session理论:

---Cookie:用户凭据:通过凭据可以判断对方身份信息,存储本地浏览器,存活时间较长,一般为小中型网站。(1.对方有漏洞2.对方浏览器不会阻止脚本的运行3.对方浏览器要保存cookie 4.对方管理员要触发XSS)

---session 会话,存储于服务器,存活时间较短,一般为大型网站。session更安全