还刷刷刷刷刷

devtools/2025/4/2 6:43:54/

ctfshow

Misc17

这题因为提示falg在图片数据里,用binwalk分离无结果

然后尝试使用kali zsteg工具的zsteg -e extradata:0 misc17.png > 1.txt命令提权

因为注册表,重装了kali

只能重装zsteg工具

先使用sudo su命令进入root用户(其具有最高权限

sudo su 命令执行后会让输入密码,(这里是kali的密码)注意,密码是可能不会显示的,不能输错,输完回车即进入root用户

先装zstage工具,命令

sudo apt update

查看可升级的安装包

 

然后使用命令进行更新和安装

sudo apt install -y ruby ruby-dev ruby-bundler zlib1g-dev libpng-dev build-essential

 执行

以上是确保系统更新安装必要的依赖库

接下来通过RubyGems安装zsteg

命令

bashsudo gem install zsteg

结果发现安装不了,问了deepseek一会儿让我换源一会儿让我通过GiHtub源码直接装,又或者直接命令apt装,还检查了Ruby版本是否兼容,(虽然这些我都不懂,但还是照做了)但发现并没有什么作用

最后在执行 sudo apt update sudo apt install zsteg 时显示警告,域名解析错误,然后判断应该是网络连接有问题,(真fou了,昨天还能用)这里检查了网络连接

ping 8.8.8.8

执行后发现它说网络不可达,所以尝试检查网络接口状态

检查网卡是否启用

bash
ip a

发现还是一大堆我看不懂的(忘了截图)

但如果网卡显示DOWN,则手动启用:

bashsudo ip link set eth0 up #有线网
sudo ip link set wlan0 up #无线网

然后尝试重新获取ip

bashsudo dhclient eth0 #有线网
sudo dhclient wlan0 #无线网

然后就发现可用了

那就继续用RubyGems安装zsteg

bashsudo gem install zsteg

检查是否成功

bashzsteg --version #输出示例

啥玩意儿?又没成功?

我。。今天全再这装工具了,中午也是为了重装pycharm出了点问题搞了一中午 ,。

算了,继续

既然这样那就应该检查zsteg是否真正安装

bashwhich zsteg

这里注意是which,不是where

得到路径

那就说明zsteg已安装,但版本信息丢失

那就尝试命令

bash#进入 zsteg 所在目录
cd /user/local/bin  #替换为自己的真实路径
./zsteg --help      #直接运行,看是否能正常使用

(注意第二行和第三行是分两次执行的)

虽然看不懂,但貌似是能正常执行的

那就说明是非正式安装(手动编译或者源码运行我这应该属于后者)

因为刚我是通过gem安装的,那就先验证版本信息

bashgem list zsteg

得到版本后重新安装强制更新

bashsudo apt purge zsteg  #卸载现有版本
sudo apt install zsteg  #重新安装

其实第一行bash命令可执行也可不执行,毕竟刚已经进入了

 分两步执行

最后的最后,再来

zsteg --version

我就不信还安装不成功!!!

裂开了,真的,

装这个工具花了不下三小时

但还是尝试使用命令分离一下,竟然发现可用

so?明明可用为什么检测命令zsteg --version显示unknow version??

这个问题从网上找了很多方法还是没解决,既然能用就好,暂时先放一下

因为zsteg检测到misc17.png有隐藏的信息

那么接下来就用zsteg 把misc.png中的隐藏信息“extradata:0”提取到指定文件“s”

zsteg -E 'extradata:0' 图片名 >s #单引号里的即为隐藏信息

然后binwalk分离文件s

binwalk -e 图片名 --run-as=root

然后打开kali下的_s.extracted文件

打开1F1获得flag

misc的题工具很重要,但有时候知识学到的没有多少,装工具却浪费了很多时间

Misc23

题目提示答案在时间里,用notepad++打开没有发现什么

使用kali exiftool 命令

然后就发现了可疑字符串

看到第一行,ctfshow{}典型flag的格式,然后注意到UnixTimestamp这个东东, 上网查了一下,这是官方给的定义

还有背景

什么时间戳不戳的,哎呀看他说那么高端 我理解的所谓溢出就是当32位整数的值超出其表示的范围(就是无法表示了)

如32位整数的表示范围是-2,147,483,648(逗号隔开好看一点)到2,147,483,647,当超出2,147,483,647时就无法表示了,这个就叫溢出

举个例子就是当在32位整数表示范围-2,147,483,648到2,147,483,647的最大值2,147,483,647加1,结果就会相当于“绕回最小值-2,147,483,648。但在这好像没有什么大用途。

接着看DECtoHEX,别的不用管,只用记住它是将十进制数转换为十六进制数函数

然后看到getflag

注意到get flag下面这一行

没错,这个了解一下,没提供什么有用的消息hh

这里是关键:

所以上面的这个提示   ctfshow{}, UnixTimestamp, DECtoHEX, getflag 

解释起来就是用ctfshow{}包裹   先 UnixTimestamp(转换为时间戳)再 DECtoHEX (转换为十六进制结果 就能get flag  有意思有意思

对于时间戳 ,它是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数(不考虑闰秒),用于表示一个时间点。然而,这种格式对于人类阅读并不友好,因此需要转换成可读的日期和时间格式。时间戳转换工具能够将时间戳快速转换为人类可读的日期时间格式,同时也支持反向转换,即将日期时间转换为时间戳

注意到这四个时间戳

所以这里应该将可读日期转换为时间戳

 就是这个工具 Unix时间戳(Unix timestamp)转换工具 - 站长工具

(这里在找在线转换网站的时候我还发现了另一个转换时间戳的网址,有很多比如Javascript、php、html工具,条形码生成、甚至元素周期表等涉及各学科不仅仅是网络知识的有用工具,放这了在线工具 - 你的工具箱)

那么接下来开始转换时间戳  (这里转换之前不要忘了把年月分隔符:换为 - 刚开始我就忘了,还奇怪怎么转不出来 后面的时间倒不用换,就用:即可)

第一个时间:

第二个时间:

第三个:

最后一个:

所以将四个换成的时间戳就是

874865822 2699237688 2156662245 460377706 #全部转为16进制

然后转十六进制

还是一个个转

1:

2:

3:

4:

最后连起来

3425649ea0e31938808c0de51b70ce6a #转16进制结果

最后包裹ctfshow{3425649ea0e31938808c0de51b70ce6a}

提交正确


http://www.ppmy.cn/devtools/171844.html

相关文章

【sql优化】where 1=1

文章目录 where 11问题描述错误实现正确实现性能对比测试 where 11 问题描述 在动态 SQL 拼接场景中,开发者常使用 WHERE 11 简化条件拼接逻辑(避免处理首个条件的 AND)。理论上,数据库优化器会忽略 11,但字符串拼接…

*DeepSeek 客服管理使用指南—让AI成为你的“智能助理”

一、快速响应客户咨询 场景:客服每天需处理大量重复问题(如订单查询、退换货政策等),高峰期易出现回复延迟。 DeepSeek 解决方案: 自动生成标准话术: 输入关键词(如“退货流程”)&a…

【AI学习】Transformer 模型

1,概念 是一种基于自注意力机制(Self-Attention Mechanism)的深度学习架构,在自然语言处理、计算机视觉等多个领域都有着极为重要的应用。 2,基本结构 1)编码器(Encoder) 通常由多个相同的编码器层堆叠而成。 每个编码器层包含了多头自注意力机制、前馈神经网络以及…

NO.55十六届蓝桥杯备战|排序|插入|选择|冒泡|堆|快速|归并(C++)

插⼊排序 插⼊排序(Insertion Sort)类似于玩扑克牌插牌过程&#xff0c;每次将⼀个待排序的元素按照其关键字⼤⼩插⼊到前⾯已排好序的序列中&#xff0c;按照该种⽅式将所有元素全部插⼊完成即可 #include <iostream> using namespace std; const int N 1e5 10; …

行业大数据实验报告 通过聚类算法实现睡眠健康群体的精准智能划分

一、实验目标 本实验旨在通过聚类算法对睡眠健康群体进行多维特征分析&#xff0c;识别不同群体的睡眠模式&#xff0c;并根据群体特点制定个性化的睡眠改善方案。通过使用聚类算法&#xff0c;帮助理解不同群体的睡眠健康状况&#xff0c;为个性化健康管理提供支持。 二、实验…

华为OD机试2025A卷 - 游戏分组/王者荣耀(Java Python JS C++ C )

最新华为OD机试 真题目录:点击查看目录 华为OD面试真题精选:点击立即查看 题目描述 2020年题: 英雄联盟是一款十分火热的对战类游戏。每一场对战有10位玩家参与,分为两组,每组5人。每位玩家都有一个战斗力,代表着这位玩家的厉害程度。为了对战尽可能精彩,我们需要…

黑天鹅事件频发:2025年5种蒙特卡洛模拟工具压力测试

——当不确定性成为常态 2025年&#xff0c;全球经济在供应链动荡、技术迭代加速和气候异常的叠加冲击下&#xff0c;黑天鹅事件从“偶然”演变为“新常态”。企业如何在高风险环境中保持决策韧性&#xff1f;答案藏在蒙特卡洛模拟工具与 PLM&#xff08;产品生命周期管理&…

【Linux探索学习】第二十九弹——线程概念:Linux线程的基本概念与线程控制详解

Linux学习笔记&#xff1a; https://blog.csdn.net/2301_80220607/category_12805278.html?spm1001.2014.3001.5482 前言&#xff1a; 在现代操作系统中&#xff0c;线程是程序执行流的最小单元。与进程相比&#xff0c;线程更加轻量级&#xff0c;创建和销毁的开销更小&…