(1)背时

描述:腐烂了,变异了,太背时了......

附件为一个压缩包

解题思路:

1.打开压缩包,发现有一个描述:v(51wA:I7uABi#Bx(T



2.将v(51wA:I7uABi#Bx(T进行Z85解密为c3npr_@aq_y0ir。

3.加密的lsb隐写,利用cloacked-pixel工具包,发现密码不正确。

4.各种尝试,将c3npr_@aq_y0ir进行rot13编码为p3ace_@nd_l0ve

5.使用cloacked-pixel解密,1.txt中输出flag。



cloacked-pixel使用

加密:

python lsb.py hide big.png 1.txt 123456

ps: hide:表示加密模式; big.png:待加密的png图片; 1.txt:存放payload; 123456:加密的密码

解密:

python lsb.py extract big.png-stego.png 3.txt 123456

ps: extract:表示解密模式; big.png-stego.png:待解密的png图片; 3.txt:存放导出的payload; 123456:解密密码

分析:

python lsb.py analyse big.png-stego.png

ps: analyse:表示分析模式; big.png-stego.png:待分析的png图片; 运行后会对图像进行分析,将其分割成块,标记每个块的最低有效位

参考原文链接:https://blog.csdn.net/m0_54015794/article/details/112285451

(2)EzMisc

描述为好玩的图片

附件是一个很大的图片,上面有好多像素点

解题思路:

1.图片用photoshop打开,可以看到很清晰的像素点

2.图片放大之后,记录左上角和右下角像素点的坐标



(5.84x9.13+93.16x56.90)

3.计算每两个像素点之间的宽度间隔和高度间隔(1.18x2.27)

4.利用脚本提取像素点

点击查看代码
import os
import re
import cv2
import argparse
import itertools
import numpy as np parser = argparse.ArgumentParser()
parser.add_argument('-f', type=str, default=None, required=True,
help='输入文件名称')
parser.add_argument('-p', type=str, default=None, required=True,
help='输入左上顶点和右下顶点坐标 (如:220x344+3520x2150)')
parser.add_argument('-n', type=str, default=None, required=True,
help='输入宽度间隔和高度间隔 (如:44x86)')
args = parser.parse_args() if __name__ == '__main__':
if re.search(r"^\d{1,}x\d{1,}\+\d{1,}x\d{1,}$", args.p) and re.search(r"^\d{1,}x\d{1,}$", args.n):
x1, y1 = map(lambda x: int(x), args.p.split("+")[0].split("x"))
x2, y2 = map(lambda x: int(x), args.p.split("+")[1].split("x"))
width, height = map(lambda x: int(x), args.n.split("x")) img_path = os.path.abspath(args.f)
file_name = img_path.split("\\")[-1] img = cv2.imread(img_path, cv2.IMREAD_COLOR)
row, col = img.shape[:2] r, c = len(range(y1, y2 + 1, height)), len(range(x1, x2 + 1, width))
new_img = np.zeros(shape=(r, c, 3))
for y, x in itertools.product(range(r), range(c)):
new_img[y, x] = img[y1 + y * height, x1 + x * width] cv2.imwrite(f"{file_name}", new_img)
print("已保存到运行目录中...")
else:
print("参数-p或参数-n, 输入错误!")



5.生成的图片由好多颜色组成,piet编码在线解码可得



参考原文链接:https://blog.csdn.net/qq_47875210/article/details/128173378?csdn_share_tail={"type"%3A"blog"%2C"rType"%3A"article"%2C"rId"%3A"128173378"%2C"source"%3A"qq_47875210"}

(3)mini

题目描述:一个迷你文件是不是缺少什么(flag均为小写)

附件为一个压缩包

解题思路:

1.打开压缩包为一个没有后缀名的文件,放入HxD中查看没有文件头,27 1C前面添加37 7A BC AF为7Z的文件头

2.添加文件后缀7Z,解压得到加密的flag.docx和pw.txt

3.查看pw.txt,可知word密码为6位,且为纯小写字母



4.直接用kali自带john获取docx文档hash值



然后利用hashcat进行破解



-a 3 为暴力破解的掩码方式,-m 9400为加密文件类型。-h可以获取帮助查看命令。

当状态为Cracked,可以通过刚才的命令后面加上--show,来查看密码,这里为whljwa。

5.打开文件,发现是base64加密的密文,base64解密并转换为png图片

6.题目中说,flag全为小写,全转换为小写即得flag。

三道MISC的writeup的更多相关文章

  1. i春秋misc部分writeup

    i春秋misc部分writeup 一.敲击 方方格格,然后看到下面的格式,猜测出是键盘上的布局,然后看这些字母形成的形状想那些字母,就是flag了 2.滴滴滴 放到ctfcack里解密,发现时栅栏密码 ...

  2. CTF-i春秋网鼎杯第二场misc部分writeup

    CTF-i春秋网鼎杯第二场misc部分writeup 套娃 下载下来是六张图片 直接看并没有什么信息 一个一个查看属性 没有找到有用信息 到winhexv里看一下 都是标准的png图片,而且没有fla ...

  3. CTF-i春秋网鼎杯第一场misc部分writeup

    CTF-i春秋网鼎杯第一场misc部分writeup 最近因为工作原因报名了网鼎杯,被虐了几天后方知自己还是太年轻!分享一下自己的解题经验吧 minified 题目: 一张花屏,png的图片,老方法, ...

  4. Bugku - Misc图穷匕见 - Writeup

    Bugku - Misc图穷匕见 - Writeup 原文链接:http://www.cnblogs.com/WangAoBo/p/6950547.html 题目 给了一个jpg图片,下载图片 分析 ...

  5. ISCC2016-BASIC、WEB、MISC简单writeup

    RE和PWN题目的wp有大神已经放出来了,我也不擅长,就不搬了.bin求带. BASIC BASIC-1 50 仿射函数,百度“仿射加密法”,它讲的够清楚了. BASIC-2 50 结尾的“=”这个特 ...

  6. DDCTF-2019-writeup(7web+5misc)

    一年前第一次参加了DDCTF,再次参加简单记录下web与misc的writeup Web Web1 滴~ 1.jpg参数可以包含文件,参数经过两次base64和一次16进制编码,将index.php编 ...

  7. NCTF2019 小部分题解

    前言 礼拜五领航杯打的比较累,做不出WEB,D3CTF没用,做了NJCTF的一些题目(懒,睡觉到12点起) Misc 第一次比赛先去做misc,以前一直做WEB,以后要WEB+MISC做.礼拜六下午做 ...

  8. 【CTF】XCTF Misc 心仪的公司 & 就在其中 writeup

    前言 这两题都是Misc中数据包的题目,一直觉得对数据包比较陌生,不知道怎么处理. 这里放两道题的wp,第一题strings命令秒杀觉得非常优秀,另外一题有涉及RSA加密与解密(本文不具体讨论RSA非 ...

  9. 攻防世界 Misc 新手练习区 stegano CONFidence-DS-CTF-Teaser Writeup

    攻防世界 Misc 新手练习区 stegano CONFidence-DS-CTF-Teaser Writeup 题目介绍 题目考点 隐写术 摩斯密码 Writeup 下载附件是PDF文件打开,研究一 ...

  10. 攻防世界 Misc 新手练习区 ext3 bugku Writeup

    攻防世界 Misc 新手练习区 ext3 bugku Writeup 题目介绍 题目考点 WinHex工具的使用 linux磁盘挂载mount命令 Writeup 下载附件拖进winhex分析一下,查 ...

随机推荐

  1. 【前端必会】让ESLint与Prettier一起玩耍

    背景 上回说到ESlint和Prettier可能会有规则上的冲突,解决的办法有多种,好比不用Prettier 不用Prettier也是一种选择 配置相同的规则 我们选择一种可以共存的方式 可以参考这篇 ...

  2. 对list集合中元素按照某个属性进行排序

    test 为集合中的元素类型(其中包含i属性) Collections.sort(list,(test o1, test o2) -> { if (o1.getI() != o2.getI()) ...

  3. C++自学笔记 构造与析构;

    构造与析构 类不是实体:对象属于类:函数属于类 : 用不同的对象调用同一个类里面的函数的时候,函数知道是哪一个对象在调用它 关键字 this this是一个指针 Point a; a.print(); ...

  4. Annocation(注解)的使用示例

    示例一:生成文档相关的注解示例二:在编译时进行格式检查(JDK内置的三个基本注解)@Override: 限定重写父类方法, 该注解只能用于方法@Deprecated: 用于表示所修饰的元素(类, 方法 ...

  5. ubuntu下Mysql安装与root密码重置

    一.安装 1.首先更新本地存储库索引,执行sudo apt update 2.从APT存储库安装MySQL,执行sudo apt install MySQL-server,在安装过程中,可能会出现[Y ...

  6. JS逆向实战8——某网实战(基于golang-colly)

    其实本章算不上逆向教程 只是介绍golang的colly框架而已 列表页分析 根据关键字搜索 通过抓包分析可知 下一页所请求的参数如下 上图标红的代表所需参数 所以其实我们真正需要的也就是Search ...

  7. 嵌入式-C语言基础:指针函数

    指针函数:返回指针的函数,即函数返回一个地址.例如:int * a(int x,int y);由于()的优先级比*高,因此a先与()结合,a(int x,int y)显然是一个函数,函数前面带一个in ...

  8. Node.js的学习(一)node.js 的介绍

    一.简介 1.1.什么是 node.js ? node.js  一种 JavaScript 的运行环境,能够使得javascript能够脱离浏览器运行.以前 js 只能在浏览器基础上运行,能够操作的也 ...

  9. 【云原生 · Kubernetes】Kubernetes基础环境搭建

    1.系统镜像 安装运行环境系统要求为CentOS7.5,内核版本不低于3.10. CentOS-7.5-x86_64-DVD-1804.iso Chinaskill_Cloud_PaaS.iso Do ...

  10. 核磁共振成像学习笔记——从FID信号到K空间

    在理想磁场环境下(没有不存在场不均匀性),对于一个没有梯度场的方块. 此时,RF pulse的两路正交信号(相位差为90°)对此方块进行激发,然后收取信号,我们可以得到由此方块产生的FID信号. 设此 ...