2021/12/7 HttpOnly绕过,xss-labs

小迪

涉及资源及参考

https://www.bilibili.com/video/BV1JZ4y1c7ro?p=26&spm_id_from=pageDriver
httponly介绍: https://www.oschina.net/question/100267_65116
$_SERVER用法:https://blog.csdn.net/moliyiran/article/details/79806108

在这里插入图片描述

cookie中设置了HttpOnly属性,那么通过js脚本将无法读取到cookie信息,这样能有效的防止XSS攻击,但是并不能防止xss漏洞只能是防止cookie被盗取。

绕过httponly

浏览器未保存密码,通过xss 劫持提交的表单
开启httponly
在这里插入图片描述
插入xss获取cookie
在这里插入图片描述
没有获取到cookie值
在这里插入图片描述
表单
在这里插入图片描述
本地抓包查看
在这里插入图片描述
获取密码,条件:登录框存在跨站(XSS存在于登录框才行) ,有些鸡肋。
获取浏览器保存的密码
劫持表单
在这里插入图片描述
在代码中插入xss
在这里插入图片描述

在这里插入图片描述
这里password一直变成text
在这里插入图片描述
没成功先放一下
最后是因为平台的问题延时发送了

总结
在这里插入图片描述

xss-labs

less1
改变name参数界面也回显,试一下弹窗
在这里插入图片描述
在这里插入图片描述
less2绕过实体化标签函数
搜索框与界面有交互
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以发现标签被替换了
在这里插入图片描述
查看代码,用来htmlspecialchars()函数
在这里插入图片描述

在这里插入图片描述
继续观察,发现在参数传入htmlsperialchars函数之前,浏览器获取表单这里xss可以操作,value里xss是字符串没办法执行,那么传入xss使引号闭合就能允许弹窗了。
在这里插入图片描述
输入">闭合前面引号和标签,#注释后面(其实无所谓只要xss能执行就行)

http://127.0.0.1:8999/level2.php?keyword="><script>alert(1)</script>#

在这里插入图片描述

less3

小知识:win+v打开剪贴板,要在设置中开启才行

传统方式不行,xss也没回显,value也没了
在这里插入图片描述
在试试上一关的闭合
被强制转换字符串了🙄,转义了
在这里插入图片描述
又被转换了
在这里插入图片描述
那就不用<>了,

==鼠标触发弹窗的onclick属性 ==
在这里插入图片描述

在这里插入图片描述
引号闭合

http://127.0.0.1:8999/level3.php?writing="onclick="alert(1)

在这里插入图片描述
然而并不行,把”换成‘才成功
在这里插入图片描述

换浏览器试试
在这里插入图片描述
奇怪🤔换单引号就行,而且代码里最后变成双引号
在这里插入图片描述
less4
尝试上一关双引号成功了,但是单引号不行( •̀ ω •́ )✧
在这里插入图片描述
在这里插入图片描述
less5
不能用onclick了
在这里插入图片描述
查看代码发现这里过滤l<script on,所以onmouseover移动鼠标也不能用了
在这里插入图片描述
使用别的xss代码

http://127.0.0.1:8999/level5.php?keyword="><a href='javascript:alert(1)'&submit=%E6%90%9C%E7%B4%A2

创建了个超链接φ(゜▽゜*)♪,歪日突然想到之前那个函数不是过滤<>吗,咋回事
在这里插入图片描述
奥,这函数只是对str起作用,应该只是方便做题
在这里插入图片描述

less6
尝试使用上一关方法
在这里插入图片描述
代码进行了过滤,那再用其它的xss …( $ _ $ )
在这里插入图片描述
但这麽仔细一看,它过滤的没分大小写啊!
使用"Onclick="alert(1)
可以了
在这里插入图片描述
less7
再试试"Onclick="alert(1)
可以,被转换小写了,strtolower()函数
在这里插入图片描述
在这里插入图片描述
开阔一下思路,它on只过滤了一次,那可以采取重写字符串
"oonnclick="alert(1)
同理超链接
"><a hhrefref=‘javasscriptcript:alert(1)’
less8
上一关思路不行了,没有在表单里没执行
在这里插入图片描述

防止过滤写成 javasscriptcript:alert(1),不行,一看不是和上一关替换为空了。
在这里插入图片描述
在这里插入图片描述
那使用编码绕过它的过滤
在这里插入图片描述
可以看到没有过滤
在这里插入图片描述

less9
上一关方法以不行,没有http://不行?奶就写上吧
在这里插入图片描述
最后添加//http://
这里用#注释不行
在这里插入图片描述
less10
传啥参数有没用,推测应该是另一个变量接受的,猜它这有三个name哪一个是
在这里插入图片描述
真正的变量是t_sort,还过滤了<>
在这里插入图片描述
用"οnclick="alert(1),但是没有形成搜索框,代码显示的也不对
在这里插入图片描述
前面加上tpye=“text”
在这里插入图片描述
less11
查看源代码,接受变量变成了$_SERVER[‘HTTP_REFERER’]获取当前链接的上一个连接的来源地址
在这里插入图片描述
自己写入referer
在这里插入图片描述

referer检测多用于csrf(跨站请求伪造)
xiaodi8.com后台添加管理员数据包:www.xiaodi8.com/adduser.php?username=xx&password=123456
niao人博客为了吸引小迪创建了一个网站www.玛咖.com
niao人在网站首页加入代码:<script src=” www.xiaodi8.com/adduser.php?username=xx&password=123456”
小迪在访问niao人网站时,会自动在xiaodi8后台添加管理员

-小迪后台为了防止此类攻击,会检测来源:是否为同一域名

==XSS:跨站攻击;csrf:跨站请求伪造 ==

less12
查看代码请求的是$_SERVER[‘HTTP_USER_AGENT’]获取用户的相关信息的,包括用户使用的浏览器,操作系统等信息。
抓包修改
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值