前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >MISC杂项-隐写2-解题过程

MISC杂项-隐写2-解题过程

作者头像
用户8909609
发布于 2023-10-17 07:29:46
发布于 2023-10-17 07:29:46
6010
举报
文章被收录于专栏:BM CTFBM CTF
 题目分析:

 下载环境

发现是一个欢迎的jpg类型图片文件,咱们打开瞅瞅,发现是一个表情包

 哈哈,表情包说想要拿到flag啊?心中没点b数?

咱们不要被它吓到了,咱们用记事本打开,检索下flag。

 发现存在flag.rar,并且是一个rar压缩文件,为了确保咱们的猜想是正确的,咱们再用kali中的binwalk命令提取隐写在内的文件

 发现有压缩包的存在,并且确实存在flag.rar。

接着我们用kali中的dd命令提取隐写在内的文件,并把提取出来的压缩文件命名为18.zip。

在这里先大致总结下,我们先下载环境,获取到了jpg图片文件,看看图片内容,是否存在隐写文件,如果存在,那么就提取隐写文件,看隐写文件里面是否存在压缩文件,有压缩文件就先看内容,再进行分析,如果压缩文件里面存在私有压缩文件,那么就存在密码,需要进行密码爆破,爆破之后打开压缩文件,查看里面的内容,查找flag,找到flag后看看是否存在编码,如果有,那么就分析flag的编码格式,并进行对应的flag编码格式,进行解码,解码之后就成功拿下flag了。

 开始解题:

 一、解压文件:

第一种:

解压方法使用命令unzip进行解压:

 第二种:

将压缩文件拖入到物理机内,使用物理机里面的解压软件进行解压。

 发现两个文件

打开flag.rar压缩文件发现一个jpg图片文件,打开需要密码。

 这个先不管,再去看第二个文件,jpg图片文件。

 二、密码爆破:

第一种:

首先图中说密码是3个数。

使用kali中fcrackzip工具进行暴力破解

其中-b参数是暴力破解、-c是指定字符集、'1'表示阿拉伯数字0-9、-l指定密码长度、-u只显示破解出来的密码,其他错误的密码不显示。

破解出来的密码为:871。

第二种:

使用现成工具Ziperello进行暴力破解。

 爆破出密码为:871

第三种:

进行逻辑推理。

 这张图片告诉我们密码是3个数,最后一句说斗地主挺好玩的。

看兰斯洛特那里给的信息说是梅花J,由此得出查理曼在扑克牌中对应红桃K,雅典娜对应黑桃Q。

咱们用什么敲代码?用的是键盘,因为密码是数字,所以键盘上Q对应的是1,K对应的是8,J对应的是7,不管是用牌的大小来排列,还是用图片上给的至高无上的权威来排列,都是8数字排第一位,所以说咱们只需要试两次,只有两种排列方法,817和871。

最后试出871为文件密码。

三、打开图片文件,拿flag,如图:

第一种:

在Kali中使用unzip命令解压flag压缩文件,输入刚才拿到的密码。

 第二种:

在物理机中输入解压密码,直接打开。

 这是一张抑郁的表情包,但是毫无价值信息。

换一种打开方式,使用记事本打开,老样子检索flag,但是需要注意的是把这里的flag改为f1@g(题目规定的格式

找到flag。

进行提交,提交不对,发现flag貌似是进行了base64编码去进行base64解码。

 解码后拿到flag:y0u Are a h@cker!

最后需要注意的是题目中要求的提交格式!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Qt操作sqlite数据库
版权声明: 此文为本站源创文章[或由本站编辑从网络整理改编], 转载请备注出处:[狂码一生] http://www.sindsun.com/article-details-96.html
Sindsun
2019/12/11
1.4K0
42.QT-QSqlQuery类操作SQLite数据库(创建、查询、删除、修改)详解
Qt 提供了 QtSql 模块来提供平台独立的基于 SQL 的数据库操作。这里我们所说的“平台 独立”,既包括操作系统平台,也包括各个数据库平台,Qt支持以下几种数据库:
诺谦
2019/06/14
13.6K0
【C++】Qt:SQLite数据库操作示例
SQLite 是一种轻量级的嵌入式关系型数据库管理系统,它是一个开源的、零配置的、自包含的、事务性的 SQL 数据库引擎。SQLite 的设计目标是简单、高效、可靠,适用于各种大小的应用程序。
DevFrank
2024/07/24
3070
【C++】Qt:SQLite数据库操作示例
Qt数据库sqlite总结
第四:QSqlTableModel  继承QSqlQueryModel类  --该类提供了一个可读写单张SQL表的可编辑数据模型,功能:修改,插入,删除,查询,和排序
bear_fish
2018/09/20
3K0
QT进阶学习——如何通过QT连接云服务器的MySQL数据库并进行数据库操作 和 数据表的增删改查
QT进阶学习——如何通过QT连接云服务器的MySQL数据库并进行数据库操作 和 数据表的增删改查
Arya
2024/10/23
4120
QT进阶学习——如何通过QT连接云服务器的MySQL数据库并进行数据库操作 和 数据表的增删改查
Qt(C++)使用SQLite数据库完成数据增删改查
当前文章介绍的设计的主要功能是利用 SQLite 数据库实现宠物投喂器上传数据的存储,并且支持数据的增删改查操作。其中,宠物投喂器上传的数据包括投喂间隔时间、水温、剩余重量等参数。
DS小龙哥
2023/07/24
1.3K0
Qt(C++)使用SQLite数据库完成数据增删改查
C++ Qt开发:QSqlDatabase数据库组件
Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍QSqlDatabase数据库模块的常用方法及灵活运用。
王瑞MVP
2023/12/27
1.5K0
C++ Qt开发:QSqlDatabase数据库组件
Qt5实战第九篇:Qt5的数据库操作
Qt5提供了强大的数据库操作功能,通过QSqlDatabase、QSqlQuery、QSqlTableModel等类,开发者可以轻松地在图形用户界面(GUI)应用程序中进行数据库连接和操作。无论是SQLite这种轻量级数据库,还是MySQL、Oracle等大型数据库,Qt5都能提供很好的支持。
china马斯克
2025/01/02
3190
Qt数据库与QTableWidget结合的增删改查
点击上方蓝字可直接关注!方便下次阅读。如果对你有帮助,可以点个在看,让它可以帮助到更多老铁~
用户5908113
2020/02/17
5.4K0
Qt数据库与QTableWidget结合的增删改查
C/C++ Qt 数据库QSql增删改查组件应用
Qt SQL模块是Qt中用来操作数据库的类,该类封装了各种SQL数据库接口,可以很方便的链接并使用,数据的获取也使用了典型的Model/View结构,通过MV结构映射我们可以实现数据与通用组件的灵活绑定,一般SQL组件常用的操作,包括,读取数据,插入数据,更新数据,删除数据,这四个功能我将分别介绍它是如何使用的。
王瑞MVP
2022/12/28
3930
C/C++ Qt 数据库QSql增删改查组件应用
Qt对MySql数据库的增删查改操作
开发工具:Qt Creator 4.2.1 (Community) 开发平台:windows 7 数据库:MySql 5.5.45 一、在.pro配置文件中添加添加数据库 QT       += core gui sql   #后面追加上sql 二、头文件引入 #include <QDebug> #include <QMessageBox> #include <QSqlError> #include <QSqlQuery> #include <QVariantList> 三、下面直接上代码     //打印
Sindsun
2019/12/10
6.4K0
Qt5数据库操作之sqlite
在编写程序的过程中,有一些数据希望软件再次运行时可以记录上一次用户的一些操作,比如服务器的ip和端口号等。对于数据量比较小的,在Qt中可以使用QSetting来记录。但对于一些数据量比较大的,肯定不能使用QSetting了。此时一般会选择使用数据库来记录。
用户5908113
2019/09/02
3.4K0
Qt5数据库操作之sqlite
Qt使用kingbase数据库存储数据(完成考勤系统数据增删改查)
当前基于Qt(C++)开发了一款教室上课考勤系统的软件,主要是使用了Kingbase数据库进行数据存储和管理。
DS小龙哥
2023/07/24
3680
Qt使用kingbase数据库存储数据(完成考勤系统数据增删改查)
Qt操作Sqlite类封装,及命令行导入csv文件到Sqlite数据库
这里记录下导入csv文件到sqlite数据库的操作方法及sqlite的封装,留作备忘。
杨永贞
2022/08/11
1.8K0
Qt操作Sqlite类封装,及命令行导入csv文件到Sqlite数据库
C/C++ Qt 数据库QSql增删改查组件应用
Qt SQL模块是Qt中用来操作数据库的类,该类封装了各种SQL数据库接口,可以很方便的链接并使用,数据的获取也使用了典型的Model/View结构,通过MV结构映射我们可以实现数据与通用组件的灵活绑定,一般SQL组件常用的操作,包括,读取数据,插入数据,更新数据,删除数据,这四个功能我将分别介绍它是如何使用的。
王瑞MVP
2022/12/22
5190
C/C++ Qt 数据库QSql增删改查组件应用
[QT]qt连接sqlite数据库
作者:admin,发布日期:2017-02-10 阅读:151;评论:0 首先要在pro文件中引入sql库 QT +=sql 然后引入头文件 #include <QSqlDatabase> #include <QMessageBox> #include <QSqlQuery> #include <QSqlError> #include <QSqlDriver> #include <QSqlRecord> #include <QSqlTableModel> 然后就可以在cpp文件里连接数据库了     
繁花云
2018/07/31
2K0
C/C++ Qt 数据库与SqlTableModel组件应用
SqlTableModel 组件可以将数据库中的特定字段动态显示在TableView表格组件中,通常设置QSqlTableModel类的变量作为数据模型后就可以显示数据表内容,界面组件中则通过QDataWidgetMapper类实例设置为与某个数据库字段相关联,则可以实现自动显示字段的内容,不仅是显示,其还支持动态增删改查等各种复杂操作,期间不需要使用任何SQL语句。
王瑞MVP
2022/12/22
9110
C/C++ Qt 数据库与SqlTableModel组件应用
43.QT-访问远程SQLite数据库
将要共享的share文件夹设置为共享(远程访问默认只能读),如果要想远程访问能够写的话,则点击权限进行修改,然后应用.
诺谦
2019/06/14
3K0
C++ Qt开发:SqlRelationalTable关联表组件
Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍SqlRelationalTable关联表组件的常用方法及灵活运用。
王瑞MVP
2023/12/29
3330
C++ Qt开发:SqlRelationalTable关联表组件
[QT]数据库-SQLite简明教程
原文链接:https://blog.csdn.net/humanking7/article/details/80920892
祥知道
2020/03/10
3.3K0
相关推荐
Qt操作sqlite数据库
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档