第四天作业

一、总结反射型XSS、存储型XSS和DOM型XSS的特点与区别

1. 反射型XSS特点:

攻击载体: 攻击者通过将恶意脚本嵌入到一个URL中,用户点击这个URL时,脚本被发送到服务器并立即反射到响应页面中。

时机: 攻击脚本在用户请求的响应中被“反射”回用户浏览器。通常发生在用户点击一个恶意链接后。

攻击表现: 恶意代码被立即执行,通常用来窃取用户数据或进行会话劫持。

2. 存储型XSS特点:

攻击载体: 攻击者将恶意脚本存储在目标网站的数据库、论坛、评论区等地方。之后,当其他用户访问这些存储的内容时,脚本会被执行。

时机: 恶意脚本在存储时并不立即执行,而是在用户访问存储的内容时被执行。

攻击表现: 恶意代码被存储在服务器端的数据库中,所有访问这个内容的用户都会受到影响。存储型XSS通常具有更持久的影响。

3. DOM型XSS特点:

攻击载体: 恶意代码通过直接修改浏览器的DOM(文档对象模型)来执行,不需要经过服务器的处理。

时机: 攻击脚本通过用户的输入或者其他客户端数据来动态修改网页的DOM结构,导致恶意脚本在客户端执行。

攻击表现: 攻击脚本的执行完全依赖于客户端的代码,而不是服务器端响应。

4、区别总结:

反射型XSS:攻击脚本通过URL或表单数据被服务器即时反射到响应中执行,攻击依赖于用户点击恶意链接。

存储型XSS:攻击脚本存储在服务器端的数据中,当其他用户访问这些存储的内容时脚本被执行,具有持久性。

DOM型XSS:攻击脚本通过操控客户端的DOM实现,脚本的执行完全依赖于客户端,通常不需要服务器端的直接参与。

二、XSS的fuzz字典

一位GitHub作者整理的Web Pentesting Fuzz 字典,内容包括:参数Fuzz字典 Xss Fuzz字典 用户名字典 密码字典 目录字典 sql-fuzz字典 ssrf-fuzz字典 XXE字典 ctf字典 Api字典 路由器后台字典 文件后缀Fuzz js文件字典 子域名字典。

下载地址:GitHub - TheKingOfDuck/fuzzDicts: Web Pentesting Fuzz 字典,一个就够了。

其中的XSS fuzz字典部分展示如下:

三、在XSS靶场进行打靶挑战

靶场网址: https://xss.tesla-space.com/

参考博客:xss-labs 靶场详细攻略(附常用payload) - FreeBuf网络安全行业门户

1、第一关

将网址后面的name值修改后,会发现页面的“欢迎回来”后面的值会随之改变,因此在此处尝试注入恶意代码<script>alert('1')</script>,然后成功过关。

2、第二关 

2.1、第二关页面有个显眼的搜索框,尝试在该框中注入恶意代码,结果无效。

2.2、在页面单击右键,点击“检查”进入查看页面源码, 发现输入的数据被写入了value里,即<script>alert('1')</script>被写作值了,因此无效。

2.3、在 <script>alert('1')</script>前加上">将value闭合即可过关。

3、 第三关

3.1、在输入框中输入同样的代码,结果无效,并且发现原输入的值不一样。

3.2、原因是htmlspecialchars函数把预定义的字符&、”、 ’、<、>转换为HTML实体,防止浏览器将其作为HTML元素 ,所以无效。但htmlspecialchars函数无法转义单引号。

3.3、输入'οnclick='alert(1)为网页的表单输入框添加 onclick属性,点击一下输入框即可过关。

4、第四关

4.1、在框中输入<script>alert('1')</script>,发现尖括号被过滤了。

 4.2、采用第三关思路构造onclick,并且使用双引号来闭合标签,在输入框中尝试输入 " οnclick="alert(1),然后点击输入框成功过关。

5、第五关

5.1、在输入框中尝试输入<script>alert('1')</script>,发现script被过滤。

 5.2、尝试使用其它payload,比如JavaScript,在输入框中输入"><a href="javascript:alert(1)">后,点击">过关。 

6、第六关

 6.1、输入<script>alert('1')</script>出现和第五关相同的情况,再输入和第五关相同的payload,然而失败。

6.2、考虑到有更多的东西被过滤了,于是用大小写来绕过,输入"><a HrEf="javascript:alert(1)">成功过关。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值