DASCTF 2025下半年|矩阵博弈,零度突围 Misc详解

news/2025/12/8 13:30:54/文章来源:https://www.cnblogs.com/alexander17/p/19321287

DASCTF 2025下半年|矩阵博弈,零度突围 Misc详解

DigitalSignature

Find out the signer. Maybe you need EIP-191. Flag is account address that wrapped by DASCTF{}.

思路:利用以太坊签名的可恢复特性,通过公开的签名和原始消息,还原出签名者的地址

exp:

from web3 import Web3
from eth_account.messages import encode_defunct# 已知数据
message_text = "Find out the signer. Flag is account address that wrapped by DASCTF{}."
signature_hex = "0x019c4c2968032373cb8e19f13450e93a1abf8658097405cda5489ea22d3779b57815a7e27498057a8c29bcd38f9678b917a887665c1f0d970761cacdd8c41fb61b"# 重建消息结构(与签名时一致)
message = encode_defunct(text=message_text)# 恢复 signer 地址
signer = Web3().eth.account.recover_message(message, signature=signature_hex)print("Recovered address:", signer)
print("Flag:", f"DASCTF{{{signer}}}")
DASCTF{0x2b2D44D5325F0d3550296686BE2a7b5Fecb952cB}

stegh小鬼

010查看快乐小鬼,发现是jpg图片的逆序

image

倒置导出

image

再次查看图片尾部

image

文件尾部存在unknownPadding块,是一串base64加一个jpg图片

WmlwcGFzczpLQUdfZ2thX2thZ19HS0E=

image

Zippass:KAG_gka_kag_GKA

剩下的图片用foremost分离出来

image

先用KAG_gka_kag_GKA打开zip压缩包

image

得到flag.txt,emoji图像,猜测可能base100或者emoji-aes

经过尝试发现base100不行,那么就是emoji-aes,这个需要密码

我们回到分离的图片

image

备注有新佛曰加密,但是网站挂了,后面根据hint,直接把密码给我们了

新佛曰挂了,解码出来--pass:2333333

根据附件名字stegh小鬼,猜测为steghide隐写,密码为2333333

image

゚ω゚ノ= /`m´)ノ 👋~┻━┻   //*´∇`*/ ['_']; o=(゚ー゚)  =_=3;👟 c=(゚Θ゚) =(゚ー゚)-(゚ー゚); (゚Д゚) =(゚Θ゚)= (o^_^o)/ (o^_^o);👠(゚Д゚)={゚Θ゚: '_' ,゚ω゚ノ : ((゚ω゚ノ==3) +'_') [゚Θ゚] ,゚ー゚ノ :(゚ω゚ノ+ '_')[o^_^o -(゚Θ゚)] ,゚Д゚ノ:((゚ー゚==3)👪 +'_')[゚ー゚] }; (゚Д゚) [゚Θ゚] =👖((゚ω゚ノ==3) +'_') [c^_^o];(゚Д゚) ['c'] = ((゚Д゚)+'_') [ (゚ー゚)+(゚ー゚)-(゚Θ゚) ];(゚Д゚) ['o'] = ((゚Д゚)+'_') [゚Θ゚];(゚o゚)=(゚Д゚) ['c']+(゚Д゚) ['o']+(゚ω゚ノ +'_')🐨[゚Θ゚]+ ((゚ω゚ノ==3) +'_') [゚ー゚] + ((゚Д゚) +'_') [(゚ー゚)+(゚ー゚)]+ ((゚ー゚==3) +'_') [゚Θ゚]+((゚ー゚==3) +'_') [(゚ー゚) - (゚Θ゚)]+(゚Д゚) ['c']+((゚Д゚)+'_') [(゚ー゚)+(゚ー゚)]+ (゚Д゚) ['o']+((゚ー゚==3) +'_') [゚Θ゚];(゚Д゚) ['_'] =(o^_^o) [゚o゚] [゚o゚];(゚ε゚)=((゚ー゚==3) +'_') [゚Θ゚]+ (゚Д゚) .゚Д゚ノ+((゚Д゚)+'_')👪 [(゚ー゚) + (゚ー゚)]+((゚ー゚==3) +'_') [o^_^o -゚Θ゚]+((゚ー゚==3) +'_') [゚Θ゚]+ (゚ω゚ノ +'_') [゚Θ゚]; (゚ー゚)+=(゚Θ゚); (゚Д゚)[゚ε゚]='\\'; (゚Д゚).゚Θ゚ノ=👖(゚Д゚+ ゚ー゚)[o^_^o -(゚Θ゚)];(o゚ー゚o)=(゚ω゚ノ +'_')[c^_^o];(゚Д゚) [゚o゚]='\"';(゚Д゚) ['_'] ( (゚Д゚) ['_'] (゚ε゚+/*´∇`*/(゚Д゚)[゚o゚]+ (゚Д゚)👇[゚ε゚]+(゚Θ゚)+(゚Θ゚)+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+((゚ー゚) + 🐫(o^_^o))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+((゚ー゚) + (o^_^o))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+(o^_^o)+(゚Д゚)[゚ε゚]+(゚ー゚)+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+(o^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+👪(゚Θ゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o) +(o^_^o))+((o^_^o) - (゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+((゚ー゚) + (゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+((o^_^o) +(o^_^o))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o) +(o^_^o))+👪((゚ー゚) + (゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (o^_^o))+(゚Θ゚)+(゚Д゚)[゚ε゚]+(゚ー゚)+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+(゚Θ゚)👮+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o) +(o^_^o))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚ー゚)+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o) +(o^_^o))+(゚ー゚)🐧+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+(c^_^o)+(゚Д゚)[゚ε゚]+(゚👩Θ゚)+(゚ー゚)+((゚ー゚) + (゚Θ゚))+(゚Д゚)[゚ε゚]+(゚ー゚)+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+((゚ー゚) + (゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+(゚Θ゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+((゚ー゚) + (゚Θ゚))+(゚Д゚)[゚ε゚]+(゚ー゚)+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+((゚ー゚) + (o^_^o))+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+((o^_^o) +(o^_^o))+(゚Д゚)[゚ε゚]+(゚ー゚)+(c^_^o)👛+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o) +(o^_^o))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+((゚ー゚) + (゚Θ゚))+(゚Д゚)[゚ε゚]+(゚ー゚)+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o) +(o^_^o))+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚) + (゚Θ゚))+(゚Θ゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+(o^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o) +(o^_^o))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o) +(o^_^o))+((゚ー゚) + (゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o) +(o^_^o))+((o^_^o) - (゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+((゚ー゚) + (゚Θ゚))+(゚Д゚)[゚o゚]) (゚Θ゚)) ('_');

分离emoji和特殊字符

特殊字符为AAencode颜文字解密,不知道为啥随波逐流为啥没反应

image

Look carefully at the middle of the picture

这个意思是让我们仔细看图片中间,我们foremost时候已经发现图片中间的zip密码了,所以可以忽略

emoji为base100

image

This_1s_P4ssw0rd

最后emoji-aes解密

image

DASCTF{Y0u_are_4_1ovely_Gh0st}

Steganography_challenges0.2

010模板报错

image

文件尾部出现base64文本

image

from PIL import Image
E=range
R=bytes
F=Image.new
x=Image.open
from Crypto.Cipher import ARC4
i=ARC4.new
def t(data,O):return
def w(data,O):a=i(O.encode())return a.w(data)
I=x('your_image.png').convert('RGB')
M,j=I.size
Y=F('RGB',(M,j))
O='monkey'
for y in E(j):for x in E(M):r,g,b=I.getpixel((x,y))n=R([r,g,b])J=w(n,O)Y.putpixel((x,y),(J[0],J[1],J[2]))
Y.save('encrypted_image.png')
# Created by pyminifier (https://github.com/liftoff/pyminifier)

一个使用RC4加密算法对图像像素进行加密的程序,我们反向解密

from PIL import Image
from Crypto.Cipher import ARC4
import osdef decrypt_image(input_path, output_path):if not os.path.exists(input_path):print(f"Error: {input_path} not found.")returntry:img = Image.open(input_path).convert('RGB')width, height = img.sizenew_img = Image.new('RGB', (width, height))key = 'monkey'cipher_temp = ARC4.new(key.encode('utf-8'))  keystream = cipher_temp.encrypt(b'\x00' * 3) print(f"Keystream for first 3 bytes: {list(keystream)}")pixels = img.load()new_pixels = new_img.load()for y in range(height):for x in range(width):r, g, b = pixels[x, y]dr = r ^ keystream[0]dg = g ^ keystream[1]db = b ^ keystream[2]new_pixels[x, y] = (dr, dg, db)new_img.save(output_path)print(f"Success: Decrypted image saved to {output_path}")except Exception as e:print(f"Error processing image: {str(e)}")if __name__ == "__main__":INPUT_IMAGE_PATH = r"Steganography_challenges0.2.png"  OUTPUT_IMAGE_PATH = "decrypted_image.png" decrypt_image(INPUT_IMAGE_PATH, OUTPUT_IMAGE_PATH)

lsb隐写通道并行,每个通道有独立存储信息,然后按顺序组合: 然后连续拼凑

from PIL import Image# 输入图片路径
input_image = r"decrypted_image.png"try:# 打开图片并转换为RGB模式img = Image.open(input_image).convert('RGB')width, height = img.sizeprint(f"图片尺寸: {width} x {height}")# 加载像素数据pixels = img.load()# 提取区域:x从1243到1257,y从1243到1254start_x, end_x = 1243, 1257  # 列范围start_y, end_y = 1243, 1254  # 行范围# 存储三个通道的LSB位lsb = [[], [], []]  # [R通道, G通道, B通道]# 提取LSB位for channel in range(3):  # 0:R, 1:G, 2:Bfor i in range(start_y, end_y + 1):      # y坐标for j in range(start_x, end_x + 1):  # x坐标# 获取像素的RGB值,提取指定通道的最低位bit = pixels[j, i][channel] & 1lsb[channel].append(bit)print("\n=== LSB位提取结果 ===")print(f"每个通道提取的位数: {len(lsb[0])}")print(f"R通道前10位: {lsb[0][:10]}")print(f"G通道前10位: {lsb[1][:10]}")print(f"B通道前10位: {lsb[2][:10]}")# 将三个通道的LSB位交错组合tmp = ""for i in range(len(lsb[0])):for channel in range(3):tmp += str(lsb[channel][i])print(f"\n=== 组合后的二进制串 ===")print(f"二进制串长度: {len(tmp)} bits")print(f"前60位: {tmp[:60]}")# 每8位二进制转换为一个字符key = ""for i in range(0, len(tmp), 8):if i + 8 <= len(tmp):  # 确保有完整的8位byte_str = tmp[i:i+8]char_code = int(byte_str, 2)key += chr(char_code)print(f"\n=== 解码结果 ===")print(f"解码出的字符串: {key}")print(f"字符串长度: {len(key)} 字符")# 尝试以不同方式显示结果print(f"\n=== 十六进制表示 ===")hex_str = ""for i in range(0, len(tmp), 8):if i + 8 <= len(tmp):hex_str += hex(int(tmp[i:i+8], 2))[2:].zfill(2) + " "print(f"十六进制: {hex_str[:100]}...")except FileNotFoundError:print(f"错误: 找不到文件 {input_image}")print("请确保 'decrypted_image.png' 文件在当前目录")
except Exception as e:print(f"运行时错误: {e}")
It seems that you are really a steg_master,key is Oversized_chips

得到key

剩下的是lsb另一种隐写,aes+lsb的加密隐写方式:clockedpixels

image

得到一个水的图片

image

猜测为盲水印

image

得到flag

DASCTF{You_Are_StEg_Master}

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

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

相关文章

基于单片机的多波形信号发生器设计 - 教程

基于单片机的多波形信号发生器设计 - 教程2025-12-08 13:20 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: bloc…

2025年中国重型起重机械企业排名TOP5:河南矿山起重机性

在工业生产与物流运输的核心环节,起重机械是承载大国重器的关键装备。从钢铁厂的钢水转运到港口的集装箱装卸,从核电项目的精密部件吊装到航天基地的卫星组件搬运,一台性能可靠、技术先进的起重设备,直接决定了生产…

Request Basics 3

打开网站发现flag题目flag原本不是这个,但flag设置成这个了

2025年最新远程控制软件TOP10盘点:聚焦原生体验、高效协作与数据保障三大维度

在混合办公与分布式团队成为主流的今天,远程控制软件已从应急工具演变为生产力核心组件。无论是IT运维支持、跨地域团队协作,还是个人远程访问家中设备,流畅、安全、高效的远程连接已成为刚性需求。然而,面对市场上…

序列压缩在LLM Token编码解码中的应用:从LZ77到性能优化 - 实践

序列压缩在LLM Token编码解码中的应用:从LZ77到性能优化 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "C…

音频系统

🎧 音效系统 1. 常用音频格式wav(最常用) mp3(最常用) ogg(最常用) aiff(不常用)2. 音频文件参数(Importer Settings) 通用设置Force To Mono:多声道转单声道 Normalize:强制为单声道时,混合过程中被标…

2025生物标本行业TOP5权威推荐:河南大科教学仪器厂家

生物标本作为教学、科研、医疗领域的核心支撑载体,其专业适配性、合规性与服务质量直接影响行业发展。2024年国内生物标本市场规模突破60亿元,但32%的用户投诉集中在专业适配失衡、合规风险、服务断裂等痛点。面对市…

2025 年 12 月工业烘箱厂家权威推荐榜:烘箱,热风循环烘箱,高效节能烘箱,源头实力工厂精选与核心技术深度解析

2025 年 12 月工业烘箱厂家权威推荐榜:烘箱,热风循环烘箱,高效节能烘箱,源头实力工厂精选与核心技术深度解析 在现代化工业生产体系中,干燥工序作为保障产品质量、提升生产效率、实现节能降耗的关键环节,其核心装…

2025年中药生药标本定制、叶脉标本定制、动物标本定制费用T

在教育科研、医疗传承与科普展示领域,高质量的定制标本是传递专业知识、推动学术研究的核心载体。然而,市场上通用化标本难以匹配科研的微观需求、医疗的精准标准,合规性风险、服务断裂等痛点频发。以下依据服务能力…

字典的使用

# 字典的基本特征 # 1. 键值对结构:{key: value} # 2. 键必须是不可变类型(字符串、数字、元组) # 3. 值可以是任意类型 # 4. Python 3.7+ 中字典保持插入顺序 # ----------------------------------------------- …

2025年中国矿用采煤机截齿头制造商五大品牌排行:煤矿用采煤

本榜单依托全维度市场调研与真实行业口碑,深度筛选出十家标杆企业,为矿山企业选型提供客观依据,助力精准匹配适配的服务伙伴。 TOP1 推荐:湖南博云东方粉末冶金有限公司 推荐指数:★★★★★ 口碑评分:国内首推矿…

2025年敦煌美学当代化转型的关键样本:剖析一位艺术家的多维实践路径

在国潮复兴与文化自信成为时代主旋律的今天,敦煌艺术作为中华美学的瑰宝,正经历着从学术殿堂走向大众生活的深刻转型。然而,面对这座浩瀚的艺术宝库,公众乃至艺术爱好者常感困惑:敦煌艺术的当代价值究竟何在?是仅…

2025年敦煌艺术传承与创新深度解析:从壁画临摹到当代IP的破圈之路

在国潮复兴与文化自信成为时代主旋律的今天,敦煌艺术作为中华美学的璀璨瑰宝,正从历史研究的殿堂走向大众生活的舞台。然而,面对浩瀚的千年遗产,传承者众,创新者寡;临摹者多,破局者少。如何让古老的壁画艺术不只…

2025年不锈钢网服务权威排名:尺寸挑选指南与批发推荐全解析

在工业过滤、建筑防护、环保水处理等领域,不锈钢网是保障生产安全与效率的核心耗材。面对市场上良莠不齐的供应商,如何找到不锈钢网服务哪家权威、掌握不锈钢网尺寸怎样挑选的技巧、获取高性价比的不锈钢网批发渠道?…

MongoDB PHP驱动扩展漏洞:mongoc_bulk_operation_t读取无效内存风险分析

本文详细分析了CVE-2025-12119漏洞,该漏洞影响MongoDB的PHP驱动扩展,当传递大型选项时,mongoc_bulk_operation_t可能读取无效内存,存在安全隐患。MongoDB driver extension affected by mongoc_bulk_operation_ts …

2025实力强的汽车维修保养品牌企业TOP5权威推荐,看哪家

汽车后市场规模持续扩张,2024年数据显示,我国汽车维修保养市场规模突破1.5万亿元,年增速保持12%以上。然而,行业鱼龙混杂,30%的车主投诉集中在价格不透明技术不专业配件以次充好三大痛点——比如部分路边店用矿物…

2025年智慧移动厕所厂家权威榜单:TOP5综合实力与市场口碑全景呈现

在公共服务设施加速智能化、人性化升级的时代背景下,城市管理者、景区运营方及大型活动主办方面临着提升如厕体验、实现高效运维与践行绿色低碳的多重压力。如何从众多宣称“智慧”的厂家中,筛选出真正具备技术创新、…

LoGiC

打开网站看见flag不知道何意味

实用指南:198种组合算法+优化XGBoost+SHAP分析+新数据预测!机器学习可解释分析,强烈安利,粉丝必备!

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Request Basics 2

打开网站看见flag