攻防世界misc高手进阶篇教程(3)

Miscmisc

用010editor打开图片,然后看到jpg图片,把后缀修改成zip

攻防世界misc高手进阶篇教程(3)_第1张图片

有个压缩包是加密过的,还有张图片,我们看看图片

攻防世界misc高手进阶篇教程(3)_第2张图片

看到了flag.txt,再次把图片后缀修改成zip

攻防世界misc高手进阶篇教程(3)_第3张图片

发现可以解压,得到一个 flag.txt 文件,咦,,,,,刚才解压chayidian.zip文件时,目录下也有一个flag.txt 文件,很明显这是一个明文攻击,又已知

是.zip加密,上工具 Advanced Zip Password Recover。

在这里我跑出密码 z$^58a4w

Fial.zip里面的文件

攻防世界misc高手进阶篇教程(3)_第4张图片

打开whoami.zip文件,发现有个加密文本,需要密码,猜想flag就在里面。

说就差一点点了

打开 world/media/task/writeup/cn/miscmisc/1.png图片

攻防世界misc高手进阶篇教程(3)_第5张图片

根据提示 pass in world 猜想 world.doc 文件里不可能那么简单 可能还会有隐藏文字,ctrl+A 全选,右击—字体—取消勾选隐藏。发现了隐藏字符。

最后的密码是 pass内容+world里每行字符串的最后一个字符

解压后就得到flag{12sad7eaf46a84fe9q4fasf48e6q4f6as4f864q9e48f9q4fa6sf6f48}

flag_universe

数据里面有一些图片

攻防世界misc高手进阶篇教程(3)_第6张图片

复制原始数据存到一个txt文档中,用010编辑器导入十六进制在存为png图片即可

把图片都dump下来后有一张图片lsb隐写,得到flag

Get-the-key.txt

看到txt文件,把后缀修改成zip

攻防世界misc高手进阶篇教程(3)_第7张图片

我这里把1解压出来

攻防世界misc高手进阶篇教程(3)_第8张图片

又看到了.txt文件,再次把1修改后缀

攻防世界misc高手进阶篇教程(3)_第9张图片

里面就是flag了

攻防世界misc高手进阶篇教程(3)_第10张图片

奇怪的TTL字段

把每个TTL值二进制码的高两位拿下来,每4个TTL值凑出一个字节的二进制数来

用脚本实现

with open('ttl.txt') as f:
    lines = f.readlines()
n_num = []#分析出所有的数for i in lines:
    if i!='\n':
        n_num.append(int(i.replace('TTL=','')))#拿到每个TTL值的高位
rlt = ''for i in range(0,len(lines)):
    tmp = bin(n_num[i])[2:]
    tmp = '0'*(8-len(tmp)) + tmp
    rlt += tmp[0:2]#得到最终的结果并存到文件中
rlt2 = ''for i in range(0,len(rlt),8):
    rlt2 += chr(int(rlt[i:i+8],2))with open('fi.txt','w') as f:
f.write(rlt2.rstrip())

得到文件

攻防世界misc高手进阶篇教程(3)_第11张图片

以FFD8开头,FFD9结束。所以,是jpeg格式的图片无疑了

把这些16进制字符粘贴到winhex里并保存为jpeg格式的图片,得到了一张残缺二维码。于是就搜了下FFD8和FFD9的数量,正好6对

可以用替换搜索,这样可以计数

攻防世界misc高手进阶篇教程(3)_第12张图片

接着就是把图片拆出来了,使用binwalk,会分出6张二维码图片,用PPT的插图和对齐的功能拼接一下,得到一个二维码

攻防世界misc高手进阶篇教程(3)_第13张图片

使用autokey解开密文

http://www.practicalcryptography.com/ciphers/classical-era/autokey

flag{2028ab39927df1d96e6a12b03e58002e}

2-1

打开发现图片损坏了,用010editor打开

攻防世界misc高手进阶篇教程(3)_第14张图片

发现头部和宽度都不对

攻防世界misc高手进阶篇教程(3)_第15张图片

恢复png头为 89 50 4e 47 0d 0a 1a 0a

宽度通过pyhton跑出来

import os 
import binascii 
import struct

misc = open("12.png","rb").read()

for i in range(1024): 
    data = misc[12:16] + struct.pack('>i',i)+ misc[20:29]
    crc32 = binascii.crc32(data) & 0xffffffff 
    if crc32 == 0x932f8a6b: 
        print (i)

得到709,十六进制转换后得到,0x2c5。

攻防世界misc高手进阶篇教程(3)_第16张图片

攻防世界misc高手进阶篇教程(3)_第17张图片

互相伤害!!!

从wireshark打开,导出图片,发现一二维码,图片说了AES加密密码CTF,我们解密出来

攻防世界misc高手进阶篇教程(3)_第18张图片

攻防世界misc高手进阶篇教程(3)_第19张图片

668b13e0b0fc0944daf4c223b9831e49

接着发现这张图有密码,把后缀改成zip,输入密码

攻防世界misc高手进阶篇教程(3)_第20张图片

攻防世界misc高手进阶篇教程(3)_第21张图片

攻防世界misc高手进阶篇教程(3)_第22张图片

扫描里面的二维码即可

97d1-0867-2dc1-8926-144c-bc8a-4d4a-3758

我们的秘密是绿色的

我们用oursecret分解出压缩包,密码是图片的绿色的数字

攻防世界misc高手进阶篇教程(3)_第23张图片

根据提示生日,爆破压缩包,密码19950822

发现txt文件和flag.zip压缩包里的txt文件CRC32一样即可用明文爆破

攻防世界misc高手进阶篇教程(3)_第24张图片

攻防世界misc高手进阶篇教程(3)_第25张图片

发现里面有flag.txt,这里用的是伪加密,在PK处把01修改成00即可

攻防世界misc高手进阶篇教程(3)_第26张图片

攻防世界misc高手进阶篇教程(3)_第27张图片

爆破栅栏密码

攻防世界misc高手进阶篇教程(3)_第28张图片

爆破凯撒密码

攻防世界misc高手进阶篇教程(3)_第29张图片

flag{ssctf_@seclover%coffee_*}

倒立屋

用Stegsolve打开图片,相应操作,然后第一串就是,根据题目所说是倒写的

攻防世界misc高手进阶篇教程(3)_第30张图片

flag{9102_cCsI}

隐藏的信息

首先8进制转换ascii码,然后base64转换即可

攻防世界misc高手进阶篇教程(3)_第31张图片

Become_a_Rockstar

首先安装rockstar

pip3 install rockstar-py

然后获取python代码。跑一下即可

Leonard_Adleman = "star"
Problem_Makers = 76
Problem_Makers = "NCTF{"
def God(World):
    a_boy = "flag"
    the_boy = 3
def Evil(your_mind):
    a_girl = "no flag"
    the_girl = 5
Truths = 3694
Bob = "ar"
Adi_Shamir = "rock"
def Love(Alice, Bob):
    Mallory = 13
    Mallory = 24
Everything = 114514
Alice = "you"
def Reality(God, Evil):
    God = 26
    Evil = 235
Ron_Rivest = "nice"
def You_Want_To(Alice, Love, Anything):
    You = 5.75428
your_heart = input()
You = 5
your_mind = input()
Nothing = 31
if Truths * Nothing == Everything:
    RSA = Ron_Rivest + Adi_Shamir + Leonard_Adleman
if Everything / Nothing == Truths:
    Problem_Makers = Problem_Makers + Alice + Bob
print(Problem_Makers)
the_flag = 245
the_confusion = 244
print(RSA)
Mysterious_One = "}"
print(Mysterious_One)
This = 4
This = 35
This = 7
This = 3
This = 3
This = 37

NCTF{youarnicerockstar}

小小的PDF

用binwalk发现还有图片没有显示出来

攻防世界misc高手进阶篇教程(3)_第32张图片

直接foremost分离出来

攻防世界misc高手进阶篇教程(3)_第33张图片

Cephalopod

有个flag.png图片,但是foremost分离不出来,这里我们用tcpxtract分离

攻防世界misc高手进阶篇教程(3)_第34张图片

先安装

apt-get install tcpxtract

Tcpxtract -f

分离出来,flag就出来了

攻防世界misc高手进阶篇教程(3)_第35张图片

HITB{95700d8aefdc1648b90a92f3a8460a2c}

信号不好先挂了

用stegsolver打开,发现PK头,于是分离出zip文件

攻防世界misc高手进阶篇教程(3)_第36张图片

发现一样的图片,于是利用盲水印

攻防世界misc高手进阶篇教程(3)_第37张图片

python bwm.py decode apple.png pen.png apple_pen.png

攻防世界misc高手进阶篇教程(3)_第38张图片

unctf{9d0649505b702643}

我们用工具Freemake Video Converter慢慢打开,发现两个二维码拿去扫描下

黄金六年

我们用工具Freemake Video Converter慢慢打开,发现两个二维码拿去扫描下

攻防世界misc高手进阶篇教程(3)_第39张图片

攻防世界misc高手进阶篇教程(3)_第40张图片

解密出来

key2:want

key3:play

接着我们用winhex打开发现一串base64加密的字符串

攻防世界misc高手进阶篇教程(3)_第41张图片

用python跑出压缩包

import base64a='UmFyIRoHAQAzkrXlCgEFBgAFAQGAgADh7ek5VQIDPLAABKEAIEvsUpGAAwAIZmxhZy50eHQwAQADDx43HyOdLMGWfCE9WEsBZprAJQoBSVlWkJNS9TP5du2kyJ275JzsNo29BnSZCgMC3h+UFV9p1QEfJkBPPR6MrYwXmsMCMz67DN/k5u1NYw9ga53a83/B/t2G9FkG/IITuR+9gIvr/LEdd1ZRAwUEAA=='
f=open('111.rar','wb')
f.write(base64.b64decode(a))
f.close()

根据给出的2和3的key,我们猜测1和4的key为i、ctf,构成

iwantplayctf

攻防世界misc高手进阶篇教程(3)_第42张图片

Ditf

把04后面修改成FF

攻防世界misc高手进阶篇教程(3)_第43张图片

攻防世界misc高手进阶篇教程(3)_第44张图片

把这张图片后缀修改成zip,然后用这图片下方的密码打开,导出所有的html文件

攻防世界misc高手进阶篇教程(3)_第45张图片

攻防世界misc高手进阶篇教程(3)_第46张图片

攻防世界misc高手进阶篇教程(3)_第47张图片

看到了一串base64加密的字符串

flag{Oz_4nd_Hir0_lov3_For3ver}

4-2

直接在线解密

https://quipqiup.com/

攻防世界misc高手进阶篇教程(3)_第48张图片

flag{classical-cipher_is_not_security_hs}

5-1

import os
c = open("cipher",'rb').read()
key = "GoodLuckToYou"
def xor(c,k):
    keylen = len(k)
    res = ""
    for pos,c in enumerate(c):
        res +=chr(ord(c) ^ ord(k[pos % keylen]))
        return res
print xor(c,key)

Low

运行代码即可获取二维码

import PIL.Image as Image
img = Image.open('low.bmp')
img_tmp = img.copy()
pix = img_tmp.load()
width,height = img_tmp.size
for w in range(width):
   for h in range(height):
      if pix[w,h]&1 == 0:
         pix[w,h] = 0
      else:
         pix[w,h] = 255
img_tmp.show()

攻防世界misc高手进阶篇教程(3)_第49张图片

flag{139711e8e9ed545e}

你可能感兴趣的:(ctf,攻防世界)