第一次写博客,有不好的地方,麻烦大佬指正,我用了些时间把BugKu里的Misc的解题思路和套路整理了一下,发出来分享

各位小可爱们,右边有目录可以快速跳转哦

1.签到题

给了一张二维码,扫描关注就得到了flag

2.这是一张单纯的图片

题目给了一张图片,下载下来,然后用Winhex打开,发现末尾处有一段Unicode编码

key{you are right}



然后打开一个在线解码的网站解码就可以得到flag

这里放出解码的网址:https://tool.chinaz.com/tools/unicode.aspx

附件下载地址

3.隐写

把题目给的rar下载下来,解压后得到一张图片,先用了Winhex打开,发现没什么提示,然后又放到kali里面用binwalk检测,没有隐藏文件,最后想到了修改图片的高度

修改图片的高度和宽度,binwalk分析一下发现什么也没有藏,那就可能是图片被改“短”了(一般改成和宽度一样,把高去用八进制转换成十六进制,然后去winhex里面找到相同的十六进制,替换成想要的高的十六进制,改宽的原理相同)

先右键查看一下文件的高和宽



发现宽是500,然后拿去网站转化为16进制

16进制为01f4,到winhex里面去搜索01f4



我们把高01A4改成和宽一样的01F4,然后保存退出,重新打开图片,就可以看到flag了

附件下载地址

4.telnet

下载zip,解压出来一个数据包,用wireshark打开

筛选telnet协议,然后直接右键追踪TCP流,就可以直接看到flag了

附件下载地址

5.眼见非实(ISCCCTF)

下载文件,名字是zip,不管他,直接丢到winhex里面看

发现还真的是zip文件,错怪他了,修改后缀为zip,打开之后发现里面有个docx文件,解压出来打开

打开报错,联想题目,眼见非实,丢到winhex里面去看



发现也是一个zip文件,修改后缀为zip打开,能解压出来一个文件夹,flag在\眼见非实\word\document.xml文件下,问我怎么知道的?一个一个试出来的

附件下载地址

6.啊哒

下载zip文件,能解压出来一个表情包,不多说,直接丢到winhex里面查看

发现末尾有flag.txt字样,猜测是个压缩包,改后缀后打开压缩包,发现有flag被加密了,一开始猜测是伪加密,但测试后,发现不是,那就只能去找密码了,找了半天没找到,最后抱着试一试的态度,点开了图片的详细属性,发现密码就在里面.....



不难看出是一个16进制,直接16进制转文本,得出密码

输入密码解压,得到flag

在线解密网站:在线16进制转文本

附件下载地址

7.又一张图片,还单纯吗

下载下来,丢到winhex里面无果之后,在linux里面使用命令binwalk查找隐藏文件,发现很多隐藏文件

可以用binwalk -e 图片路径 或者 formost 图片路径 的方法把里面的东西分离出来

不知道是不是我操作问题,我用binwalk分离不出来,所以就用了fomost



分离出来之后,会在当前目录下生成一个文件夹,在里面能看到flag

附件下载地址

8.猜

下载图片,是个半人脸的照片,丢到winhex和linux里面一顿操作,什么都没有发现o(╥﹏╥)o,然后重新看了看题目,感觉是靠这半张脸去猜明星,直接用百度搜图或者谷歌搜图

发现是刘亦菲,按照题目要求格式提交即可

附件下载地址

9.宽带信息泄露

下载下来发现是个bin文件,丢到winhex里面看了一番,无果后百度了一下bin文件用什么软件可以打开,结果发现

.bin 是个万能的后缀,就是说啊,许多软件的作者如果写数据文件的时候(跟我一样)起名困难,很可能不知道该把自己的软件存出来的文件叫做什么格式,于是啊,既然是二进制存储的,不如就叫 .bin 吧。

所以,当你看到一个 .bin 格式的文件时,一方面可以先在心里默默咒骂一下软件作者,另外一方面,可以视图通过 magic number 猜测这是个什么文件。unix 下的 file 程序就是专门通过文件头部信息跟 magic number 来猜测文件格式的。猜到之后,就可以试试通过具体的格式是否能够找到对应的软件了。

我有什么好说的呢.......

联想题目,应该是路由器的配置文件,用routerpassview软件打开,题目要求提交用户名,所以搜索字段为username



把username所对应的val提交即可

routerpassview这个软件,火绒会报毒,如果要保险起见,可以去虚拟机运行ヾ(◍°∇°◍)ノ゙

附件下载地址

10.隐写2

下载图片下来,发现这个图片有点猖狂呀!不管他,改盘他还得盘他

用binwalk可以看到有隐藏文件,可以用 binwalk -e 图片路径 分离出来

可以分理处一个flag.rar,和提示.jpg,说解压密码为3位数,直接用ARCHPR破解

成功爆破出密码,密码为:871

解压出3.jpg,用winhex打开,在末尾发现flag,flag被base64加密了,解密即为正确flag

这里给出解密网站:在线base64加密解密

附件下载地址

11.多种方法解决

下载得到一个exe文件,发现运行不了

所以就用Winhex打开,发现格式就是base64转图片的格式



所以就放到网站里面去转成图片

得到了一个二维码,扫描即可

这里放出转换的网址:base64在线转图片

附件下载地址

12.闪的好快

给了一个gif图,可以用网站把他们分离开来



菜鸡的我只能一个一个扫了,扫完可以得到flag

这题有点麻烦,就把flag给出来SYC{F1aSh_so_f4sT}

这里给出图片分离的网站gif分离

附件下载

13.come_game

打开zip解压出来一个exe文件,双击打开,发现是一个自己以前玩过的游戏

以前就把我玩吐了,这次又尝试了上百条命,没过关......

玩了几条命后,发现没用,就退出游戏了

回到游戏文件夹,发现游戏创建了两个文件

有个叫save的,猜测里面是关卡数



把4改成5,重新进游戏,发现还真的是关卡数,得到flag

附件下载地址

14.白哥的鸽子

下载下来得到一个名叫jpg的文件,先不管他,直接用winhex打开,拉到最后,发现了一串奇怪的字符串



看这样子,猜测是栅栏密码,就去解密网站解密



提交发现是错误的,去掉两个@@之后提交

附件下载

15.linux

解压得到一个名叫flag的文件

这道题有多重做法,这里说两种

第一种做法

用cat命令,直接输入cat flag会冒出一大串的字符,拉倒最底下,能发现flag

第二种做法

用strings命令,输入strings flag,能查找flag这个文件里面的所有字符串,同样的,在最后可以发现flag

附件下载

16.隐写3

下载下来得到一张叫dabai的png图片,右键看了属性,发现宽跟高很不匹配,猜测是被改“短”了,所以用winhex打开

图片被改“短”了(一般改成和宽度一样,把高去用进制转换成十六进制,然后去winhex里面找到相同的十六进制,替换成想要的高的十六进制,改宽的原理相同)

做法大致和第3题相同,想知道做法的,跳回去看看就行了,做出来的结果如下图

附件下载

17.做个游戏(08067CTF)

下载下来发现是个jar文件,玩了一把

注意打开这个文件需要有java的环境



发现他居然嘲讽我,不可饶恕,必须得盘他

右键用Notepad++打开

第一眼就看到了PK头,直接修改后缀为zip,解压出来三个文件夹

因为zip算法的创始人的名字缩写是PK,所以看到PK就基本可以断定是zip文件了



flag在cn\bjsxt\plane\PlaneGameFrame.class文件下,因为PlaneGameFram翻译过来是游戏框架的意思,所以用Notepad++打开搜索字符串flag就可以得到flag

这里要注意的是,flag是base64位加密过的,要提交解密后的flag才能得分

base64解密网站

18.想蹭网先解开密码

下载下来得到了一个数据包,再看了看题目的提示

知道了是破解wifi密码,先用软件或者python生成一个11位数的字典



在kali里面用aircrack-ng -w pass.txt wifi.cap这条命令就可以开始爆破了



破出来密码为13910407686,按题目要求格式提交即为flag

附件下载

19.Linux2

把题目下载下载,是个文件,放到kali里面用binwalk扫描一下,发现很多隐藏的文件

用bindwalk -e brave把隐藏的东西分离出来,或者用formost分离出来

进入分离出来的文件夹,找一下,就可以找到flag,flag在_brave.extracted\ext-root\o8\huas.txt文件下



做法二

根据题目的提示,可以直接用grep命令查找字符串"KEY"

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户

提交即可

附件下载,提取码:s7jy

20.账号被盗了

这道题,我去的时候,网页已经404了........

想知道做法的话,可以去看别人的writeup

21.细心的大象

下载下来是一张图片,结合题目,细心,猜测是右键看图片的详细信息



果不其然在备注那里有一串疑似base64编码的东西,解密之后是一串疑似密码的字符串



然后去kali里面用binwalk查看有没有隐藏文件,发现有一个rar的文件然后把他们分离出来



打开发现是一个加密了的压缩包,那密码肯定就是我们刚刚解密出来的字符串了,解压出来之后,是一张什么提示都没有的图片,猜测是图片被改短了

我们把01A4改成和宽一下的01F4就可以看到flag了

附件下载

22.爆照(08067CTF)

把图片下载下来,发现是一个动漫图片(手动滑稽)缘什么空的,挺不错的,推荐看看(doge)

不多说了,直接开始做题,我看着题目,一开始还以为是ms08067呢,想了想发现不可能,把他放到kali里面用binwalk查看一下有没有隐藏的文件,发现有东西,把它们分离出来

能分离出来一个zip压缩包,打开发现就一些文件和一个gif动图,叫我慢慢排序

解压出来,用file命令查看了一下,都是jpg文件

那就一个一个改后缀成jpg咯,然后一张一张图片查看,发现88.jpg包含一个二维码



扫描能得到bilibili,提交发现是错的,猜测是不完全,看了全部图片的详细信息后,发现888图片有备注

拿去base64解码,能得到silisili

然后用binwalk一个一个找,会发现8888的图片有藏一个压缩包



把他们分离出来,能分离出来一个二维码,扫描能得到panama,其他的图片一切正常, 猜测这三个就是flag的组成,然后结合之前的提示,叫我慢慢排序,多试几次就可以得到flag为flag{bilibili_silisili_panama},提交即可

附件下载

23.猫片(安恒)

下载下来是一个名字叫png的图片,根据以往的经验,改png后缀直接打开

用binwalk分析之后无果,遂用stegsolve打开,并且根据题目给的提示LSB BGR NTFS,设置图片属性





把Red Green Blue三项设为0,不显示他们三种颜色,Alpha不用设置,因为它代表了透明度,如果设置为0了,那么图片就看不到了

能看到是一个png的文件,按Save Bin把它保存为png文件,然后把FFFE删去,保留PNG头

打开图片发现是半截二维码

然后修改图片的高度,关于方法我前面第三题有讲,这里就不再赘述

修改好之后扫描可以得到一个百度网盘下载地址



下载下来之后,发现怎么样都找不到真的flag,去翻了翻大佬的博客,发现要用NtfsStreamsEditor2这个工具打开才可以看到文件,但是我怎么样都看不到,在此只能搬运这位大佬的博客



去pyc反编译网站把这个反编译一下可以得到

写一个解密脚本解决

注意两点 :

encode()只是演示一下ciphertext的由来,也就是演示了如果flag='*******' 加密的过程,让你明白加密过程 然后现在给你一个真的flag的ciohertext 求解flag,解密的脚本一定是按照加密脚本 反过来写 也就是按加密脚本从下往上走。一层层解密。

这里给出解密的脚本

import base64
ciphertext = [
'96', '65', '93', '123', '91', '97', '22', '93', '70', '102', '94', '132', '46', '112', '64', '97', '88', '80', '82', '137', '90', '109', '99', '112']
def decode():
flag = ''
ciphertext.reverse()
for i in range(len(ciphertext)):
if i % 2 == 0:
s = int(ciphertext[i]) - 10
else:
s = int(ciphertext[i]) + 10
s = chr(i^s)
flag = flag + s
print(flag)
decode()

最后得出 flag{Y@e_Cl3veR_C1Ever!}

24.多彩

这玩意儿,要知道口红色号,并且脑洞很大,遂放弃了

25.旋转跳跃

下载题目文件得到一个mp3文件,然后有个提示说key:syclovergeek

可以使用MP3stege来解密MP3文件,进入到MP3stege文件目录下,运行以下命令即可

Decode.exe -X -P syclovergeek sycgeek-mp3.mp3

运行结束后会在文件夹下创建



打开即可得到FLAG

26.普通的二维码

下载解压出来是一张二维码图片,扫描可得到



老规矩,走一套流程,右键属性>winhex>然后binwalk

右键看完没有任何信息,然后用winhex打开



最后那里有一串奇怪的字符串,仔细查看后发现最高只有7,并没有到8,猜测是八进制,去网站八进制转成字符串,发现三个一组的时候可以转出f,猜测是三个一组转换



把它们放到一个文件里面,但注意要把@xjseck!删去,然后可以写一个脚本来转换(注意本脚本为Python3.x版本才可运行)

f = open('flag.txt')
temp = []
while True:
k = f.read(3)
if k:
temp.append(k)
else:
break f.close()
for i in temp:
num = '0o' + i
num = int(num, base=0)
num = chr(num)
print(num, end='')

转换出来的结果如下图所示

27.乌云邀请码

下载解压得到



使用winhex和binwalk无果后,用stegsolve打开







很明显的低位隐写有东西,明显的lsb隐写,设置之后可以得到flag

28.神秘的文件

下载得到一个压缩包,解压出来是为两个文件,一个压缩包,一个图片



打开flag.zip发现,里面文件有加密,并且也有一张名为logo.png的图片



很明显的明文攻击了,我们使用ARCHPR明文攻击破解



我尝试了好久的时间,怎么都爆破不出来,去百度翻了翻,可能是我版本的问题,所以我就用别人爆出来的密码解压

密码为:q1w2e3r4

解压出来有一个docx的文档,打开得到一张滑稽图片



ctrl+a全选后复制出来得到了一个假的flag



然后用binwalk能看到有很多的文件



把它改成zip后缀后直接打开,在docProps目录下有一个flag.txt打开里面是一串base64加密



拿去解密可以得到flag

29.论剑

下载可得到一张图片



用winhex打开,看到中间有一串二进制

把它8个一组转换为16进制,然后在转换成ascii码,可以得到mynameiskey!!!hhh,肯定有用的

然后我注意到图片的宽高很不平等,猜测是宽高被修改过,遂可以修复一下

不知道怎么修复的小伙伴,可以看看第三题,我那里有讲过



得到一张图片,但是有一些地方被挡住了,我们应该还有一些线索没有找到,回到winhex,发现紧跟在二进制后面有一串我们比较熟悉的十六进制



翻了翻记录文件头的小笔记,发现这个头跟7z的文件头很像,所以就修复了一下,修复之后用binwalk看了一下,不出所料,出现了7-zip文件



我们用dd分离出来



得到一个压缩包,但是被加密了,解密的密码就是我们之前解出来的那个字符串



解压出来可以得到一张和题目一样的图片,同样修改一下它的宽高,可以得到如下图片



然后结合之前的那张图片可以得到Not flag{666c61677B6D795F6E616D655F482121487D}

中间的那串字符是一串bash16加密,解密即可得到flag

Base16编码使用16个ASCII可打印字符(数字0-9和字母A-F)对任意字节数据进行编码。

Base16先获取输入字符串每个字节的二进制值(不足8比特在高位补0),然后将其串联进来

再按照4比特一组进行切分,将每组二进制数分别转换成十进制

然后在下面找到对应的编码串接起来就是Base16编码。

编码 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

字符 0 1 2 3 4 5 6 7 8 9 A B C D E F

30.图穷匕见

下载下来得到一张图片,用winhex打开,搜索文件尾ffd9可以看到跟在文件尾后面有很多的字符串



把他们保存下载,然后用16进制转成ascii码,就有思路了



这一看就知道是坐标,以下有两种做法

第一种、可以用python写个脚本把它画出来,这里我就直接借用一下大佬的脚本了

import  matplotlib.pyplot  as plt
i=0
fig=plt.figure()
with open("text.txt") as f:
for data in f.readlines():
data=data.strip()
data=eval(data)
plt.scatter(data[0],data[1],c="255",marker=".")
i=i+1
print("\r\n[+] Has dealed",i,"lines")
plt.show()

最后可以得到一张二维码但是特别慢

第二种、在linux里面用gnuplot工具



这里需要注意的是,gnuplot一定要把括号换成空,把逗号换成空格才可以识别画图

扫描即可得到flag

31.convert

下载文件得到一长串的二进制字符串

把它们直接转换为16进制,这里我就写了个python来转换为16进制

f1=open("flag.txt","r")
print(hex(int(str(f1.read()),2)))
f1.close()



把他们复制到winhex里面



我们可以发现,他是一个rar文件,把后缀改为rar然后可以解压出来一张图片,图片的详细信息里面有一串base64加密



解密即可得到flag

32.听首音乐

下载可以得到一个音频文件,题目没有任何提示,我们把它放进Audacity分析一下



上面那段音频,有短有长有空格,很容易让人联想到摩斯密码,把它们按照顺序一个一个打出来可以得到如下密码:

..... -... -.-. ----. ..--- ..... -.... ....- ----. -.-. -... ----- .---- ---.. ---.. ..-. ..... ..--- . -.... .---- --... -.. --... ----- ----. ..--- ----. .---- ----. .---- -.-.

然后去一个莫斯密码解密的网站解密即可得到flag

33.好多数组

下载下来得到一堆的数独,自己解出来也没啥用,也没啥思路,这里解直接借用一位大佬的wrtieup了,因为他写的比较详细,链接如下:乔悟空

zip没有后缀,winhex打开,发现确实是zip,修改后缀,解压得到一堆图片,内容是数独

非常壮观,出题人也是费劲了,这个就是二维码分成了25部分,把有数字的涂黑,拼到一起就能组成一个二维码,思路是看来的,但是怎么才能快速完成这一系列的工作呢,怎么能快速获取黑点呢,全点一遍有点呆吧……

每一个有九行,如果能选某一行的像素点遍历,估计就可以实现了,go,

(n years later……)

他终于来了,全网独家脚本,哈哈哈哈哈哈,可能没人和我这么闲吧哈哈哈哈

我们知道,每个数独有九行,我们要得到的是有哪几行填充了数字,我的思路就是扫描每一格中间的像素,如果是黑色,那就是填充了数字,白色反之

此时文件结构是这样的:

## 此脚本用于从数独图片获取密码,有值为1,无值为0
import os
import cv2
import numpy as np
from PIL import Image black = (0,0,0) ## 黑色RGB
white = (255,255,255) ## 白色RGB ## 获取给定路径图片的结果数组
def getBin(picPath):
image = cv2.imread(picPath)
height = image.shape[0] ## 图片宽度
wide = image.shape[1] ## 图片高度
formWide = (wide-6)/9 ## 每一格宽度
res = [] ## 结果数组
tem = '' ## 暂存数组
for i in range(9):
for j in range(wide-6):
px = image[int(i*(formWide-1)+(formWide/2)), j+3]
if (px == white).all() and (j+3)%formWide > (formWide*3/4) and (j+3)/formWide > len(tem):
tem += '0'
if (px == black).all() and (j+3) % formWide > (formWide/4) and (j+3) % formWide < (3*formWide/4) and (j+3)/formWide > len(tem):
tem += '1'
res.append(tem)
tem = ''
return res ## 获取整合25张图片,获取最终结果
def getRes():
tem = [] ## 临时存储返回值
res = [] ## 存储结果数组
for i in range(5):
for j in range(5):
picPath = 'zip/' + str(i*5+j+1) + '.png' ## 构造文件名
tem = getBin(picPath)
if len(res)==0:
res = tem
else:
if len(res)==(i+1)*9:
for x in range(len(tem)):
res[(i*9)+x] += tem[x]
else:
for x in range(len(tem)):
res.append(tem[x])
return res resList = getRes()
resImg = Image.new('RGB',(45,45))
## 绘制图片
for x in range(45):
for y in range(45):
if resList[x][y] == '0':
resImg.putpixel((x,y),white)
else:
resImg.putpixel((x,y),black)
resImg.save('res.png')

脚本获取的图片还是有一些偏差,因为题目给的图片不规范(不管我的事),我微调脚本之后,得到下图,QR Search竟然扫不出来,但是腾讯QQ可以,我只能说一句马老板哈哈哈哈哈,扫码结果:Vm0xd1NtUXlWa1pPVldoVFlUSlNjRlJVVGtOamJGWnlWMjFHVlUxV1ZqTldNakZIWVcxS1IxTnNhRmhoTVZweVdWUkdXbVZHWkhOWGJGcHBWa1paZWxaclpEUmhNVXBYVW14V2FHVnFRVGs9

base64解码七次后结果:flag{y0ud1any1s1}

34.PEN_AND_APPLE

下载得到一个mp4文件,然后这是一个NTFS的隐写,但我做不出来hhhh,这道题先留着,等我之后会了我再来补上,对不起啦(>人<;)

35.color

下载下来得到一组图片,用StegSolve依次打开查看,可以发现一些英文字母















连起来可以组成一句话:Make me tall,意思就是让他变高,那我们可以把他们放到winhex里面去修改他们的高度



之后可以看到有黑白块在图片的底部



把他们以颜色转换为二进制,白色转为0,黑色转为1,我们可以拿到七串字符串



发现横向解密解密不出来,所以就尝试了一下纵向解密,发现当纵向排列的时候,1100110能解出来为f

那我们可以写一个脚本来解密

f1 = '11111111010111101111'
f2 = '11111011111110111111'
f3 = '00001100101010110001'
f4 = '01001010010000001101'
f5 = '11010011011101010111'
f6 = '10011011011010110110'
f7 = '00111001101101111101' flag = '' for i in range(0,20):
f = f1[i]+f2[i]+f3[i]+f4[i]+f5[i]+f6[i]+f7[i]
flag += chr(int(f,2)) print flag

运行即可得到flag

36.怀疑人生

下载下来是一个名为zip的文件,把它改后缀为zip打开,能解压出来三个文件

线索一、cfg1.zip

发现zip文件有加密,尝试了一下,发现不是伪加密,看了看题目,并没有给什么提示,所以就直接用字典暴力破解了,我用的字典是archpr自带的字典



得到解压密码后,解压可以得到一串base64的字符串



把它拿去解密后,可以得到一串16进制



再拿去解密,可以得到一个

线索二、ctf2.jpg

用winhex打开,可以发现最后面有一个zip的文件



把图片后缀改为zip,打开发现需要密码,输入上一个密码发现不行,爆破软件说不是一个加密过的zip,猜测是伪加密,丢进winhex查看,的确是伪加密,把红框里面的01改为00即可



解压出来是一串我看不懂的东西



百度查了一下,发现是ook加密,解密可得到第二段的flag(这里的字符串是ook省略没写,可以看出来是ook加密)

线索三、ctf3.jpg

是一张图片,看起来像一张二维码,但我又觉得不是,看起来太奇怪了,想着怎么修复这张二维码,但是一点办法,一点头绪都没有,就抱着试一试的心态,拿出QQ,扫描二维码,神器的就来了



wc,它居然扫出来了,不得不说,QQ还是nb的

最后把他们三段拼接起来就是flag了

flag{hackermisc12580}

37.红绿灯

下载下来得到一个GIF的图片,然后用分离工具把他们全部分离出来,能分离出来1168张图片

观察一下,发现黄灯闪的是最少的,每一个黄灯之前都有8个灯在亮,所以可以联想到二进制

我们可以推测红色和绿色对应二进制0和1,黄色作为分隔,那么久只有两种结果

01100110或10011001,这两种都拿去转换为ASCII码,发现01100110对应为f



就可以确定绿灯对应0,红灯对应1,把他们全部转换一遍,可以手动转换,也可以写一个python的脚本

这里我就直接搬运这位大佬的脚本了

# -*- coding: cp936 -*-
from PIL import Image savepath='D:\\gif\\'
im=Image.open('D:\\Traffic_Light.gif')
try:
#tell是帧数,而seek是取当前帧数的图片。
im.save(savepath+'light{0}.png'.format(im.tell()))
while True:
im.seek(im.tell()+1)
im.save(savepath+'light{0}.png'.format(im.tell()))
except:
pass flag=""
for i in range(1168):
image=Image.open(savepath+'light'+str(i)+'.png')
#print image.getpixel((115,55))#输出颜色值
#print image.getpixel((115,145))
if image.getpixel((115,55))==251:
flag+=str(1)
elif image.getpixel((115,145))==186:
flag+=str(0)
flag= hex(int(flag,2))[2:-1].decode('hex')#二进制转字符串
print flag

然后即可得到flag

38.不简单的压缩包

下载下来得到一个加密过的zip文件,里面有一个加密过的swf文件,然而并不知道密码,放进winhex里面去看看



可以发现最后面有个压缩包,把它手动分离出来,发现分离出来的还是有加密,我以为是伪加密,试了一下,好家伙,直接报错了



然后去看了看题干,发现并没有什么提示,那就直接爆破呗,爆破出来显示密码是0



用这个密码解压可以得到一个文档,里面写着一串日文,拿去翻译可以得到提示



emmmm,这是要爆破死我=-=,没办法咯,那就直接爆破,一下子就爆破出来了,密码是50个a



用这个密码解压可以得到一个小游戏,可能是我比较菜,玩不通关,然后就去百度怎么破解swf的文件,让我找到了一个工具



把游戏放进去,可以看到游戏的源码,然后找了一下,在脚本里面能看到一串奇怪的字符串



把它转为字符串就可以得到flag了



提交的时候记得把?!符号去掉哦

39.一枝独秀

下载下来得到一个压缩包,然后解压出来是一个jpg文件,但是并打不开,然后用winhex分析,发现它是一个zip文件



把它后缀改为zip就可以打开了需要注意的是,文件上面有一段没用的文件头需要删除



删除之后打开,说需要密码,然后就直接爆破密码



爆破出来密码是12345678,不知道为什么我的爆破不了



然后解压出来可以看到很多的花的图片,观察了一下,发现就这张图片的大小和别的图片不一样



发现了一个很像二维码,但又不是二维码的东西



做到这里我就不会了,就去翻了翻大佬们的博客,发现需要JPHS这个工具

打开工具-open JPEG-打开刚才标记的81号

Seek–发现需要密码,于是继续观察81号



右键查看属性得到了主题flowers,可能是密码,填上试试,发现对了,把文件保存下载

然后用winhex打开,能看出来这是一个zip文件



改zip后缀解压出来能得到一个文档,里面有些文字



下面那个加密很常见了,是与佛论禅加密,解密一下能得到



然后再根据题目的提示,拿去栅栏密码解密



能得到一个HINT,这个明显是一个base64的加密,再拿去解密就能得到flag了

BugKu-杂项(Misc)的部分Writeup(持续更新)的更多相关文章

  1. vulnhub writeup - 持续更新

    目录 wakanda: 1 0. Description 1. flag1.txt 2. flag2.txt 3. flag3.txt Finished Tips Basic Pentesting: ...

  2. 南京邮电大学网络攻防平台——WriteUp(持续更新)

    1.签到题 右键查看源代码直接获得flag 2.MD5collision(MD5碰撞) 观察源码发现md51等于QNKCDZO通过MD5加密的结果,使用在线解密发现结果为 0e830400451993 ...

  3. bugkuct部分writeup 持续更新

    6307 校赛被打击到自闭,决心好好学习. web部分题目. 1.web2 地址 http://123.206.87.240:8002/web2/ 既然是第一个题我们应该采取查看源码的方式进行,右键之 ...

  4. MongoDB学习——持续更新

    參考MongoDB权威指南,学习阶段.大家多多交流问题.持续更新本文 MongoDB的长处 MongoDB具有丰富的数据模型,是面向文档的数据库. easy扩展.能够在多台server之间切割数据. ...

  5. 2020/1/29 PHP代码审计之进一步学习XSS【持续更新】

    0x00 上午学习了XSS漏洞,中午吃饭想了想,还是思考的太浅层了,这种老生常谈的东西对于现在的我意义不大.现在我需要的是思考.于是就有了这个随笔.在本文中,我会持续更新一些XSS的深入思考,payl ...

  6. 神技!微信小程序(应用号)抢先入门教程(附最新案例DEMO-豆瓣电影)持续更新

    微信小程序 Demo(豆瓣电影) 由于时间的关系,没有办法写一个完整的说明,后续配合一些视频资料,请持续关注 官方文档:https://mp.weixin.qq.com/debug/wxadoc/de ...

  7. iOS系列教程 目录 (持续更新...)

      前言: 听说搞iOS的都是高富帅,身边妹子无数.咱也来玩玩.哈哈. 本篇所有内容使用的是XCode工具.Swift语言进行开发. 我现在也是学习阶段,每一篇内容都是经过自己实际编写完一遍之后,发现 ...

  8. ASP.NET MVC 5 系列 学习笔记 目录 (持续更新...)

    前言: 记得当初培训的时候,学习的还是ASP.NET,现在回想一下,图片水印.统计人数.过滤器....HttpHandler是多么的经典! 不过后来接触到了MVC,便立马爱上了它.Model-View ...

  9. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  10. iOS开发系列文章(持续更新……)

    iOS开发系列的文章,内容循序渐进,包含C语言.ObjC.iOS开发以及日后要写的游戏开发和Swift编程几部分内容.文章会持续更新,希望大家多多关注,如果文章对你有帮助请点赞支持,多谢! 为了方便大 ...

随机推荐

  1. 【剑指Offer】树的子结构 解题报告(Python)

    [剑指Offer]树的子结构 解题报告(Python) 标签(空格分隔): LeetCode 题目地址:https://www.nowcoder.com/ta/coding-interviews 题目 ...

  2. DFT, DHT, DCT, DST

    目录 基本 酉变换 others Fourier-related Transforms DFT DHT DCT 与DFT的联系 DST 与DFT的联系 Gonzalez R. C. and Woods ...

  3. Adversarial Self-Supervised Contrastive Learning

    目录 概 主要内容 Linear Part 代码 Kim M., Tack J. & Hwang S. Adversarial Self-Supervised Contrastive Lear ...

  4. Elasticsearch集群安装Version6.2.2

    Elasticsearch集群安装, 基于Elasticsearch6.2.2版本, 在Linux上安装Elasticsearch集群. 1.安装规划 IP HostName Service Mast ...

  5. 『无为则无心』Python函数 — 29、Python变量和参数传递

    目录 1.Python的变量 (1)Python变量不能独立存在 (2)变量是内存中数据的引用 (3)注意点 2.了解变量的引用 3.Python的参数传递(重点) (1)示例 (2)结论 (3)总结 ...

  6. 深入 Laravel 内核之工厂模式

    英雄与行为,依赖的诞生 首先定义一个英雄,英雄具有一些行为: class Hero { protected $behavior = []; public function show() { var_d ...

  7. CSS基础 实战案例 模拟小米官方导航栏

    效果图 html结构 <ul> <li><a href="#">Xiaomi手机</a></li> <li> ...

  8. [ unittest ] 文档粗读

    参考: https://blog.csdn.net/ljl6158999/article/details/80994979 1.概念提出 unittest最初灵感来自于Junit,它有着和其他单元测试 ...

  9. PowerShell 管道符之Select的使用方法【二】

    这次讲解Select中的第二个方法:String 在我们的ISE编辑器中输入如下命令 Select-String - 可以了解到,原来这是正则表达式,它提供了一些额外的正则方法.具体如何使用,可以自行 ...

  10. ubuntu的一些常用操作

    查看当前正在运行的操作系统版本 $ cat /etc/issue 查看操作系统详细信息 $ sudo lsb_release -a 查看内核版本号 $ uname -r 卸载软件(不保留配置文件) $ ...