pikachu学习笔记(3)
XSS盲打
这种类型我之前在newstarCTF见过,总体就是我们通过编写XSS语句,然后管理员查看该留言时自动运行。
为了保险起见,我决定留言和大名均使用XSS语句:<script>alert('xss')</script>,然后通过提示找到后台登入界面
然后在提示这里我找到了后台登入界面,又是一个爆破,依旧是admin/123456,登入后提示我们XSS攻击成功
过滤XSS
听名字就知道有WAF阻挡我们直接用XSS进攻,必须对语句进行转义,用base64编码之列的肯定是没有任何用的,首先我们需要确定它过滤了什么,我
用<script>alert('xss')</script>测试一下,貌似<script>和xss都被过滤了
所以我只能去问DeepSeek,让它告诉我其他的XSS语句,
第二个会被屏蔽,所以用第一个
XSS之htmlspecialchars
首先还是先查这个htmlspecialchars是什么
它的意思应该是我们输入的<>会被转义
当我们依旧尝试注入<script>alert('xss')</script>后翻看源码,果然被转义了。
但是啊但是,这道题可以利用下面的a标签
构建XSS语句:' onclick='alert("xss"),闭合后为<a href='' onclick='alert("xss")'>,成功弹窗。(务必记得点一下超链接)
XSS之href输出
首先我们依旧是输入<script>alert('xss')</script>,发现没有反应,一看源码,果然被注释了
那利用a标签呢,额依旧难逃被注释的命运
但是我在网上找到了利用JavaScript伪协议进行XSS攻击:javascript:alert(1)、
首先依旧是<scirpt>alert('xss')</script>零帧起手,没有任何反应,然后提示让我们输入tmac,但........
重新输入<scirpt>alert('xss')</script>后,我发现了问题<script>标签对应关系有问题,那么我们只需要想办法闭合掉第一个<script>就可以了
所以我们构建</script><script>alert('xss')</script>
