只做了misc的菜鸡,来写写misc部分的writeup,狸神的FM到最后也看不懂,太难了呜呜呜。
博客原文:http://www.7yue.top/djbctf/

十八般兵器


hint1:JPHS
hint2:用Notepad++打开试试?
hint3:前十种兵器对应10进制,后八种对应8进制

根据hint1,先利用JPHS将18张图片均解密一下,密码为空,每张图片解密后的数据末尾都有一段数字,这幅图是删掉了部分空格,实际需要往下拉。

根据题目的武器顺序,前十张图片的数字组合起来十进制转十六进制。后八张图片的数字组合起来八进制转十六进制,asc转码一下得到flag

flag{CTFshow_10_bA_Ban_b1ng_Q1}

请问大吉杯的签到是在这里签吗

开局一张二维码,一直分离能分离出四张套娃的二维码,第二章二维码实际已经提示了到这里就要停下来了。(八神真好,处处都有提示)

第二张二维码用stegsolve查看最低通道,均能得到新的一张二维码图片,但没法扫码。
第二张图片原图:

最低位通道图:

两张图异或一下,即可发现酷似猪圈密码的字符:

解密后即可得到flag:

flag{dajiadoaidjb}

牛年大吉


hint1:不要格式化哟,看看引导扇区是不是丢东西了
hint2:压缩包密码在图片文件头里
下载附件得到一个vhd文件,用winhex装载

能看到有一个7z和一个png图片。7z需要密钥,密钥即为png文件头89504E47,猜,就硬猜。一开始hint2放错位置了,导致一直做不出来,后来有了hint2之后并不算难题。
解开7z压缩包即可得到flag:

flag{CTFshow_The_Year_of_the_Ox}

童话镇


hint1:离别
hint2:思念
hint3:爱
hint4:印象

开局一个mp3文件+四个感觉没用任何作用的提示。
把mp3文件binwalk一下得到一个加密的zip文件,爆破密码得 67373
得到两个txt文件,看起来很像是机器学习之类的。
学习样本,答案只有两种,0或1:

需要解密的密文:

利用knn算法来解,脚本如下:

import numpy as np
from sklearn.neighbors import KNeighborsClassifier
from ast import literal_eval
from PIL import Image
x_train = []
y_train = []
x_test = []
f1 = open("t.txt","r")
f2 = open("flag.txt","r")
while 1:s = f1.readline()if not s:breaks = s.strip('\n')p1 = literal_eval(s.split("\t")[1])p2 = literal_eval(s.split("\t")[0])x_train.append(p1)x_test.append(p2)#print(x_train)#print(x_test)
while 1:s = f2.readline()if not s:breaks = s.strip('\n')s = literal_eval(s)y_train.append(s)#print(y_train)
x_train = np.array(x_train)
y_train = np.array(y_train)
x_test = np.array(x_test)clf = KNeighborsClassifier(n_neighbors = 1)
clf.fit(x_train, x_test)
y_test = clf.predict(y_train)f3 = open("3.txt","w")
for i in y_test:f3.write(str(y_test[i]))
f3.close()

得到答案:

一共有78289个数据,78289正好等于79*991,且都是01字符,大概率就是一张图片了,写个脚本画图:

from PIL import Image
fp = open("3.txt","r").read()
pic = Image.new("L", (991, 79))
i = 0
for y in range(79):for x in range(991):if fp[i] == '0':pic.putpixel([x,y], 255)else:pic.putpixel([x,y], 0)i += 1
pic.show()

跑一下即可得到flag

色图生成器


hint1:颜色很重要,但github更重要
hint2:第一步图片很重要,txt不重要
hint3:看一看马赛克部分的RGB值,有没有想到什么呢

下载附件得到一张图片,和一个txt文件,图片中间有一大块颜色各异的色块,根据hint3也能想到提取像素。每个色块的像素都是RGB中随机两个通道有同样的数据,另外一个为0

脚本如下:

from PIL import Image
pic = Image.open('setu.png').convert('RGB')fp = open("1.txt","w")
for y in range(0,17):for x in range(0,181):piv = pic.getpixel((50+5*x, 80+20*y))if piv[0] != 0:fp.write(str(piv[0]))fp.write(" ")else:fp.write(str(piv[1]))fp.write(" ")
fp.close()

得到一串十进制字符串,转码即可得到一个rar文件。

rar文件里有一张名为Cloakify.png的图片,备注里又有一串颜色数据。

将图片binwalk一下,得到一个加密的压缩包文件。
根据hint1,github搜索Cloakify,得到解密工具,字典为题目附件的colors.txt,密文为压缩包注释。

解密得到压缩包密钥:D3arD4La0P1e45eD4iDa1Wo
解开得到一个pyc文件,在线反编译一下,得到:

from PIL import Image
import re, hashlib, random
flag = 'flag{jiu_bu_gao_su_ni}'
if re.fullmatch('^flag{[A-Z][0-9a-zA-Z]{4}}$', flag):m = hashlib.md5()m.update(flag.encode('ascii'))m = m.hexdigest()col = []for i in range(0, 24, 2):tmp = int(m[i:i + 2], 16)tmp += random.randint(-5, 5)col += [tmp]img = Image.new('RGB', (1024, 512))for i in range(4):timg = Image.new('RGB', (256, 512), tuple(col[i * 3:i * 3 + 3]))img.paste(timg, (i * 256, 0))img.save('C:/Users/Administrator/Desktop/setu.png')

这是对最初题目附件的setu.png的背景进行加密。
直接写个解密脚本一把梭:

import re
import hashlib
list = ['139', '102', '162', '24', '85', '57', '160', '37', '239', '200', '154', '30']
for a in range(48,123):for b in range(48,123):for c in range(48,123):for d in range(48,123):flag = 'flag{D' + chr(a) + chr(b) + chr(c) + chr(d) + '}'if re.fullmatch('^flag{[A-Z][0-9a-zA-Z]{4}}$', flag):m = hashlib.md5()m.update(flag.encode('ascii'))m = m.hexdigest()j = 0for i in range(0,24,2):p = int(list[j])if int(m[i:i+2], 16) - p > -5 and int(m[i:i+2], 16) - p < 5:j = j + 1continueelif i == 22:print(flag)breakelse:break

很快就能跑出来,跑出来即可得到flag:

flag{D4n1U}

拼图v2.0


手动拼图,一开始拼了一个小时只拼了90%,自动退出了很难受。第二次拼了50分钟得到flag:

碑寺六十四卦


hint1:为什么碑文上空白的地方,拓片上却是黑黑一片呢?
hint2:如果说每个方块对应一个字符,可是替换表在哪里?

下载附件得到一张图,注:以下图都不是原图,原图请到官网自取

反色后得到:

反色后用stegsolve解一下最低位通道得到另一张图片:


对照原图的数据,一个一个进行对比,得到每个图案的数据为:
5,37,26,32,8,44,11,30,53,27,39,34,51,3,52,46,18,33,46,40,7,56,40
根据题目的64卦,一共有64个数据,联想到base64也是有64个数据,解密一下即可得到flag,脚本如下:

a = [5,37,26,32,8,44,11,30,53,27,39,34,51,3,52,46,18,33,46,40,7,56,40]
b = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
flag = ''
for i in a:flag += b[i]
print(flag)

解得:
FlagIsLe1bnizD0uShuoH4o
最终flag为:

flag{Le1bnizD0uShuoH4o}

AA86


hint1:请仔细阅读题目描述(5毛一条,去掉括号)
根据提示可得,关键是16位操作系统。其实只要安装一个16位操作系统这题直接就能跑出来,难点变成了如何安装16位操作系统。
谷歌 jjencode AA86 可得:

.com后缀名文件可直接在16位操作系统执行,将txt里的数据保存,后缀名改为.com,传入MS-DOS虚拟机内,直接运行得到flag:

64位系统只能运行64和32位的程序,理论上32位系统也能运行32位和16位的程序,一开始我试着装32位xp系统,但是装的有点慢还没试过。不知道有没有人是在32位系统下跑出来的flag,之后就看大佬们自己发挥了。
最终flag为:

flag{https://utf-8.jp/public/sas/index.html}

CTFshow DJBCTF MISC(大吉杯) WP相关推荐

  1. CTFshow——DJBCTF MISC(2021年大吉杯)

    只会做MISC的小菜鸡来写一下WP,分享一下解题过程(都是大师傅萌带dd见的世面) 狸题就狸谱,看都没看,后来发现看了也看不懂 十八般兵器 感谢@i_kei师傅供题 刀.枪.剑.戟.斧.钺.钩.叉.鞭 ...

  2. ctfshow—2023愚人杯wp

    ctfshow-2023愚人杯wp 热身 热身 100 愚人杯比赛秉承欢乐.有爱.进取的精神 在群里师傅热心帮助下,已经开始第三届比赛啦! 欢迎各位师傅参加,希望大家玩的开心,比赛题目可以自由讨论.但 ...

  3. 2020湖湘杯 wp

    2020湖湘杯 wp web 题目名字不重要反正题挺简单的 NewWebsite misc misc2(题目名忘了.....) 总结 昨天打了下湖湘杯,签到选手上线. web 题目名字不重要反正题挺简 ...

  4. 2021 绿城杯 wp

    2021 绿城杯 wp Web ezcms ezphp Misc [warmup]⾳频隐写 Re easyre Crypto RSA1 [warmup]加密算法 Pwn null_pwn uaf Gr ...

  5. 【pwn】2021 鹤壁杯 wp

    [pwn]2021 鹤壁杯 wp 前言 这场比较简单,但是也看到了自己急于求成的下场,基础知识非常不牢固,很多调试手段都太拉了,逆向能力也是非常差,还是得跟着师傅们继续学啊! 1.ret2libc1 ...

  6. 2021 [线下]陇剑杯 wp

    2021 [线下]陇剑杯 wp 前言 1.1 1.2 1.3 1.4 1.5 3.1 3.3 4.1 4.2 5.1 5.2 Tip 前言 wp由EDI yanshu师傅投稿 ,感谢yanshu师傅. ...

  7. ctfshow【菜狗杯】misc

    文章目录 web web签到 web2 c0me_t0_s1gn 我的眼里只有$ 抽老婆 一言既出 驷马难追 TapTapTap Webshell 化零为整 无一幸免 无一幸免_FIXED 传说之下( ...

  8. CTFshow菜鸡杯WP

    WEB WEB1 签到 <?php if(isset($_GET['url'])){switch (strtolower(substr($_GET['url'], 0,4))) {case 'f ...

  9. 2021深育杯MISC超详细WP

    login 示例-副本.txt是伪加密,解出后明文攻击 解密password.zip发现是六字符CRC32 得到密码 welc0me_sangforctf 解密.passwd.swp 家人们以后恢复s ...

最新文章

  1. studio2008 无法显示该网页
  2. 正则表达式中re.S是什么意思?有什么作用?
  3. python PDF 转 图片
  4. 高中生获得全国科创大赛一等奖的项目,竟与硕士毕业论文高度雷同?!
  5. 如何从 Python 列表中删除重复项
  6. vmware workstation 8上面装vsphere5
  7. 【MFC系列-第23天】CMemoryDC的封装过程
  8. python 示例_Python使用示例设置add()方法
  9. Xshell登录Linux服务器 提示WARNING! The remote SSH server rejected X11 forwarding request 及 提示符显示-bash-4.2#
  10. UG基本命令ug快捷键命令大全ug基本命令教程完整版
  11. 20200411使用Potplayer对视频进行逐帧截图
  12. 一根竹子,4天的生长过程
  13. 关于硕士毕业直接工作还是继续读博的一些思考
  14. java宠物之王-龙灵传说_宠物之王龙灵传说闯关秘籍
  15. 赚钱套路分享:降维打击,报团取暖的玩法
  16. android组件圆角,Android实现圆角控件
  17. 对于搞钱我们是认真的
  18. js中的reduce函数详细解释
  19. 2022年了,你还没搞清楚箭头函数与普通函数的区别嘛?
  20. 百度快照排名推广如何优化?

热门文章

  1. 从面向对象编程转为面向接口编程
  2. print 中文输出乱码
  3. 3Dmax 三弟单面建模和实体建模的优缺点
  4. 一部电影《鬼子来了》节操没了,价值观一边去。
  5. 茅台抢购脚本详细教程, 另已将茅台抢购做成了一个软件
  6. 怎样实现随机抽题php,ppt VBA 实现随机抽题
  7. UE4 Unlua源码解析1 - 读源码的前置知识
  8. 口红会染唇是什么意思_口红和唇釉有什么区别
  9. Dubbo 3.0 !提升不止一点点!
  10. jq html 回车提交表单,jQuery事件之键盘事件(ctrl+Enter回车键提交表单等)