XSS跨站脚本漏洞原理及实验

XSS跨站脚本

根据中国网络安全法,仅用于网络安全学习
xss属于代码注入的一种,它允许恶意用户京代码注入网页,用户在浏览页面时就会受到影响。可能得到很高的权限

XSS分类

一、反射性xss
攻击方式:攻击者通过电子邮件的等方式,将含有xss的恶意代码连接发送给目标用户。当用户访问链接时,服务器接收到用户的请求并进行处理,然后服务器把带有XSS代码的数据发送给浏览器,这是浏览器解析恶意脚本,触发XSS漏洞

二、存储型XSS(持久性)
攻击方式:多见于留言板,发帖子等提交框,提交后恶意脚本连通正常信息一起注入帖子内容中,帖子被服务器存储,恶意脚本也存入了服务器后端,当用户浏览带有恶意脚本的帖子时,恶意脚本有被浏览器解析执行。

三、DOM型XSS
DOM型可以使脚本动态的访问和更新文档的内容和结构;他是特殊的反射性XSS;网页的结构时与HTML节点树构成(head、title、各种标签),这种类型可以通过JS语言控制HTML结构,或诸多操作。DOM型不与数据库交互,所以也是特殊的反射型XSS

反射性XSS实验及代码分析

实验工具:DVWA,phpstudy,burpsuite,谷歌浏览器
low等级
我们可以看到low等级没有做任何限制,当输入111时,就会显示111,若我们输入则又可以执行弹窗代码;

XSS跨站脚本漏洞原理及实验_第1张图片XSS跨站脚本漏洞原理及实验_第2张图片
3、height等级
看一下源码:
htmlspecialchars(string): 把预定义的字符 “<” (小于)、 “>” (大于)、& 、‘’、“” 转换为 HTML 实体,防止浏览器将其作为HTML元素,只要我们写< script>就会给我们过滤掉;
XSS跨站脚本漏洞原理及实验_第3张图片

htmlspecialchars() 函数把预定义的字符转换为 HTML 实体。
输入的>和<号会被转义了。

存储型XSS及代码分析

1、low等级
源码分析:
XSS跨站脚本漏洞原理及实验_第4张图片
输入用户名和一段 ,strip_tags函数把script标签给剥除了,addslashes函数把 ’ 转义成了 ’
我们可以看一下网页源码,这里对name进行了长度限制;
在这里插入图片描述对与message进行过滤,我们可以考虑对name注入,然后我们用burpsuite抓包;对其数据进行修改;

你可能感兴趣的:(xss,网络安全,渗透测试)