当前位置: 首页 > ds >正文

BUUCTF [ACTF新生赛2020]music 1

BUUCTF:https://buuoj.cn/challenges


文章目录

    • 题目描述:
    • 密文:
    • 解题思路:
    • flag:


相关阅读
CTF Wiki
m4a文件格式分析
异或运算 XOR 教程
BUUCTF:[ACTF新生赛2020]music

在这里插入图片描述

题目描述:

得到的 flag 请包上 flag{} 提交。

密文:

下载附件,解压得到tmp文件夹,内有vip.zip,解压得到vip.m4a文件。

在这里插入图片描述


解题思路:

1、打开vip.m4a文件,发现该文件已损坏。

在这里插入图片描述

在010 Editor中,也可以观察到文件数据的混乱。

在这里插入图片描述

2、通过观察,参考m4a文件格式分析、异或运算 XOR 教程两篇文章,我终于明白,vip.m4a文件数据经过对“A1”的异或运算,才呈现上面的样子。

首先,通过对比m4a文件的ftyp(文件标识)和stsc(记录每个trunk的采样数),发现原来是“00”的数据变成了“A1”,ftyp:“66 74 79 70”变为“C7 D5 D8 D1”,stsc:“73 74 73 63”变为“D2 D5 D5 D2”。

(感谢CSDN半岛铁盒博主的分享,另外周的《半岛铁盒》也很好听)

ftyp:

在这里插入图片描述

stsc:

在这里插入图片描述

同时,我了解到异或运算的一条运算规律:一个值与 0 的运算,总是等于其本身。

x ^ 0 = x

所以,当“A1”与0进行异或运算时,结果为“A1”。这就是为什么原来是“00”的数据变成了“A1”。

从而得出,vip.m4a文件原数据经过了对“A1”的异或运算

3、在010 Editor中,对整个文件进行对“A1”的异或运算,保存得到完好的vip.m4a文件。

在这里插入图片描述

在这里插入图片描述

播放vip.m4a文件,将听到的字母记下来,得到:actfabcdfghijk,flag为:abcdfghijk

flag:

flag{abcdfghijk}
http://www.xdnf.cn/news/14852.html

相关文章:

  • TCP 和 UDP 是什么?
  • nginx基本使用 linux(mac下的)
  • MSPM0G3507之GPIO配置报错 #Sysconfig报错
  • 数据结构与算法 --- 双向链表
  • 从 AJAX 到 axios:前端与服务器通信实战指南
  • VR训练美国服务器:高性能解决方案与优化指南
  • 可编程逻辑器件的发展与比较
  • 逆向入门(22)程序逆向篇-TraceMe
  • FPGA设计的上板调试
  • Cisco FMC events无法加载并且cpu high故障- Cisco bug
  • Grab×亚矩阵云手机:以“云端超级节点”重塑东南亚出行与数字生活生态
  • AngularJS Git 提交消息规范
  • VS Code 配置本地 Dev Container
  • (LeetCode 每日一题) 2099. 找到和最大的长度为 K 的子序列 (排序)
  • 翻译服务器
  • SpringMVC系列(七)(Restful架构风格(下))(完结篇)
  • 第一章 从零开始学习大型语言模型-搭建环境
  • Spring Cloud:微服务架构的基石与实践指南
  • 从0开始学习计算机视觉--Day04--损失函数
  • C++动态链接库之非托管封装Invoke,供C#/C++ 等编程语言使用,小白教程——C++动态链接库(一)
  • Linux系统(信号篇)信号的保存
  • 在反向代理环境下精准获取客户端真实 IP 的最佳实践
  • Vue样式绑定与条件渲染详
  • 玄机抽奖Spring Web项目
  • 【STM32 学习笔记】PWR电源控制
  • 高通手机跑AI系列之——穿衣试装算法
  • 数据结构进阶 - 第一章 绪论
  • 数据结构-第三节-树与二叉树
  • 什么是财务共享中心?一文讲清财务共享建设方案
  • Lynx vs React Native vs Flutter 全面对比:三大跨端框架实测分析