xss--跨站脚本攻击

xss--跨站脚本攻击,第1张

一、定义

攻击者在网页中嵌入恶意脚本代码(javascript),当用户使用浏览器浏览网页时,脚本就会在用户的浏览器上执行,从而达到攻击者目的。

二、原理

本质:可控变量,显示输出变量。代码在对数据进行显示出现的安全问题。——js代码
产生层面:前端。
函数类:输出型函数。
危害影响:受js代码影响。
浏览器内核版本:受对方浏览器版本限制,可能带有过滤。

三、危害

(1)窃取管理员帐号或cookie。入侵者可以冒充管理员的身份登录后台。使得入侵者具有恶意 *** 纵后台数据的能力,包括读取、更改、添加、删除一些信息。
(2)网站挂马。先将恶意攻击代码嵌入到Web应用程序之中。当用户浏览该挂马页面时,用户的计算机会被植入木马。
(3)发送广告或者垃圾信息。攻击者可以利用XSS漏洞植入广告,或者发送垃圾信息,严重影响到用户的正常使用。
(4)重定向

四、分类 1.反射型XSS

非持久化,一般需要用户手动点进去攻击者伪造好的链接才能触发代码

2.存储型XSS

持久性,攻击者的XSS语句存储在服务数据库,当有受害者访问这个网页都会触发代码,一般在留言板,评论区页面经常出现。

3.DOM型XSS

DOM型xss与上面两种最大的区别就是,dom型xss漏洞是基于文档对象模型(Document Object Model,DOM)的,它不需要经过后端,它是在浏览器解析渲染服务器源码的时候产生的,所以我们在抓包的过程中是看不到dom型xss有关的内容的。

五、靶场练习 pikachu靶场 1. 反射型XSS(get)

在没有过滤的情况下在提交参数中插入XSS语句,页面会出现一个d窗,并且再次访问该页面时网站不会出现d窗。
输入语句:

<script>alert(‘xss’)</script>

输入的语句本来是显示在页面上的,其为js代码,浏览器将其执行,d窗回显"xss":

2. 反射型xss(post)

登录:用户admin 密码123456
成功登录:
之后的 *** 作和反射型xss(get)一致

3. 存储型XSS

代码会存储在数据库中,访问该网页会一直触发XSS代码。
输入语句:

<script>alert(‘xss’)</script>

点击提交,出现d窗"xss":点击确定:
之后一直点击submit(访问该网页),就会一直回显xssd窗(一直执行输入的代码)

4. DOM型XSS

可以看到我们输入的参数使用burp抓包没有抓到,说明DOM型XSS,只在前端产生。
输入语句:

<script>alert(‘xss’)</script>

并没有回显,查看:
输入的语句被当作超链接了
查看页面源代码:

输入语句:'onclick=“alert('xss')”>,出现d窗:
onclick 事件会在对象被点击时发生,然后d出我们的xss
注:遇到输入语句会被当作超链接的,即需要点击才可以回显,那么就要引入onclick事件(用法:οnclick=“”)

5. DOM型xss-x

同样输入
查看:
发现输入语句还是被当作超链接。
输入

'οnclick="alert('xss')">

点击链接,出现d窗:

6.xss之盲打

XSS盲打简单来说,就是不知道后台有没有xss漏洞存在的情况下,不顾一切的输入xss代码在留言,反馈之类的地方,就叫盲打
首先还是老办法,输入常用语句:

<script>alert(‘xss’)</script>

提交:
并没有回显
估计是上传到后台去了,看看小贴士
输入用户密码(admin 123456)登录后台:
回显了!

7.xss之过滤

输入常用语句,发现语句并没有被执行,被过滤掉了。
试一下大小写绕过的方法:输入

<sCriPt>alert('xss')</ScrIpt>

回显了!

8.xss之htmlspecialchars

htmlspecialchars会过滤一些字符 首先老方法:
没回显,而且查看代码发现<和>都被过滤了,而且又是被当作超链接。(其实在这之前可以先输入常用的特殊字符,查看代码看是否被过滤。)
可以看出这里是对单引号不转义

从php代码可以看到默认不对单引号做处理,也写着输入’onclick=’alert(111)’试试
所以还是用之前的onclick事件:
回显了!

9. xss之href输出

老样子输入还是被当作超链接
用onclick事件:
还是不行
从代码提示可以使用javascript协议来执行js
输入javascript:alert(‘xss’),可以看到没有任何过滤,成功d窗

10. xss之js输出

可以看出将我们输入的字符存到了js代码里面然后进行判断,写一个闭合

'</script><script>alert(/xss/)</script>

回显了!

六、xss平台的使用

注册登录,创建项目test,并配置:
会出现:
将代码写入到pikachu靶场的xss漏洞部分,出现d窗:
平台获取到cookie信息:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/935050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-17
下一篇 2022-05-17

发表评论

登录后才能评论

评论列表(0条)

保存