实习作业第四天

反射型XSS:攻击者构造一个参数包含恶意js代码的URL,诱骗用户点击,用户访问后向服务器发送请求,服务器响应包含恶意代码的页面,并在客户端执行。例如服务器后端存在PHP代码echo '<pre>Hello ' . $_GET[ 'name' ] . '</pre>';,参数name传入js代码后,则会在服务器生成恶意页面,然后返回给客户端执行

存储型XSS:攻击者通过网页的留言、评论等交互处将恶意代码注入到服务器数据库中,用户请求后响应包含恶意代码的页面

DOM型XSS:攻击者构造一个参数包含恶意js代码的URL,诱骗用户点击,用户访问后向服务器发送请求,服务器的响应并不包含恶意代码,而是URL中的代码直接在本地浏览器由js执行。例如下面的html页面,当URL的参数a传入js恶意代码后,会直接被html内嵌的js代码写入到html中,并不需要经过服务器的处理

Fuzz字典

Level1:

Level2:

查看源码发现输入的值赋给了input标签的value,所以使用语句"><script>alert('1')</script>

闭合掉标签

Level3:发现输入之前的语句会被更换为html实体,确认后端代码使用了htmlspecialchars()进行了特殊处理。所以给input这个标签添加事件'onclick=javascript:alert(1);'就可以完成xss

Level4:使用上一关语句发现需要使用双引号闭合"onmouseover="alert(1);

Level5:

"onmouseover="alert(1);和<script>alert(1);</script>都被做了过滤

使用a"><a href=javascript:alert(1)>123</a>点击出现的链接即可通关

浏览器解析机制:

先进行html解析,解码html编码,然后进行url解析解码url编码,最后识别<script>标签进行js解析,解码unicode编码。

标签textarea和title里面不能有新标签。

Js中的关键标识符比如’和()不能用unicode表示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值