BUUCTF misc第二页WP

目录

梅花香之苦寒来

just_a_rar

鸡你太美

神奇的二维码

一叶障目

穿越时空的思念

纳尼

outguess

我有一只马里奥

谁赢了比赛?

来题中等的吧

gakki

find_me

base64隐写

伟大的侦探

KO

黑客帝国

你能看懂音符吗

ezmisc

sqltest

你有没有好好看网课?


梅花香之苦寒来

拿到图片后binwalk啥也没有,拖进010看16进制

文件结构很完整,但是FFD9后面跟着一大串数字字母,而且貌似还有一定规律。 把这些字符复制出来,将十六进制转为字符 。

有情况得到了一堆坐标,那不就明白咋回事了吗,类似坐标, 利用python中的matplotlib模块对该段坐标进行绘图得到二维码

1.txt文本文档要写成这种格式:

 

扫码得到flag `flag{40fc0a979f759c8892f4dc045e28b820`

ps: 这些库的安装方法可以参考这篇文章:Python学习-windows安装Python以及matplotlib.pyplot包_xiaopihaierletian的博客-CSDN博客

just_a_rar

题目说just a rar,总感觉不仅仅是一个rar,binwalk分离无果,看看16进制啥也没有。

那既然文件名是“4位数.rar”,感觉就是个4位数的暴力破解呀,果然出密码了。

拿到flag.jpg

看16进制,开头就看到Exif,,emmm,好熟悉的名字

扔进Exif元数据编辑器,得到flag flag{Wadf_123}

鸡你太美

题目名字好评

有两个gif文件,放进010里查看,第一个好像没啥问题,第二个是坏的,缺少文件头

把文件头补上保存,就得到了第二只完整的坤坤,flag就在里面

flag{zhi_yin_you_are_beautiful}

神奇的二维码

得到一个二维码,扫码支付?付个P

binwalk分离出4个rar

分别解压:

  • 得到一串base64,YXNkZmdoamtsMTIzNDU2Nzg5MA==,解码得到asdfghjkl1234567890

  • 一个rar里有音乐,但是加密了

  • 一个rar里面有照片+压缩包,试了试发现第一个base解码是这个压缩包包含的压缩包的密码

解压出来发现鸟都没有

  • 一个里面有一个word文件,里面有非常长的base64编码,自己试着解码了几次都没啥效果,看别人的wp知道这么长肯定编码了很多次,直接脚本跑:

    import base64
    ​
    def decode(f):
        n = 0;
        while True:
            try:
                f = base64.b64decode(f)
                n += 1
            except:
                print('[+]Base64共decode了{0}次,最终解码结果如下:'.format(n))
                print(str(f,'utf-8'))
                break
    ​
    if __name__ == '__main__':
        f = open('./base64.txt','r').read()
        decode(f)
    [+]Base64共decode了20次,最终解码结果如下:
    comEON_YOuAreSOSoS0great

    用这段解出来的码去破解音乐的那个压缩包,解压成功

把mp3文件拖进audacity,看到这一短一长的波形图,dna动了,我猜它是摩斯密码。

解码如下:

得到最终结果:flag{morseisveryveryeasy}

一叶障目

给了一个很模糊的照片,盲猜大小被改过,需要通过crc值爆出真正的宽高

扔进010,crc不匹配报错 ,图片能打开,但是出现CRC匹配错误一般是修改了宽高

这是一个修复crc错误的脚本,大佬的世界咱也不懂

#coding=utf-8
import zlib
import struct
#读文件
file = '1.png'  #注意,1.png图片要和脚本在同一个文件夹下哦~
fr = open(file,'rb').read()
data = bytearray(fr[12:29])
crc32key = eval(str(fr[29:33]).replace('\\x','').replace("b'",'0x').replace("'",''))
#crc32key = 0xCBD6DF8A #补上0x,copy hex value
#data = bytearray(b'\x49\x48\x44\x52\x00\x00\x01\xF4\x00\x00\x01\xF1\x08\x06\x00\x00\x00')  #hex下copy grep hex
n = 4095 #理论上0xffffffff,但考虑到屏幕实际,0x0fff就差不多了
for w in range(n):#高和宽一起爆破
    width = bytearray(struct.pack('>i', w))#q为8字节,i为4字节,h为2字节
    for h in range(n):
        height = bytearray(struct.pack('>i', h))
        for x in range(4):
            data[x+4] = width[x]
            data[x+8] = height[x]
            #print(data)
        crc32result = zlib.crc32(data)
        if crc32result == crc32key:
            print(width,height)
            #写文件
            newpic = bytearray(fr)
            for x in range(4):
                newpic[x+16] = width[x]
                newpic[x+20] = height[x]
            fw = open(file+'.png','wb')#保存副本
            fw.write(newpic)
            fw.close

脚本直接给跑出来了

flag{66666}

尝试去搞懂原理,发现crc这玩意和计算机组成原理相关,大数据专业竟然不学这玩意?!突然意识到一个大问题

那就先学会看crc的值吧,推荐一个文章

png图片CRC爆破原理的学习 - 云千 - 博客园

穿越时空的思念

给了个mp3文件,试听了一下,全损音质,肯定被动过手脚

看波形图,这意思又是摩斯电码?

它分成两部分,两部分分别解码

试了半天在线解码工具,都不大行,最后还是用jocker的转码工具,得到:

  • F029BD6F551139EEDEB8E45A175B0786

  • F029BD6F5

flag{f029bd6f551139eedeb8e45a175b0786}

纳尼

给了个打不开的gif,拖进010分析,这不是少文件头么

GIF (gif),文件头:47494638

补全文件头就打开了,貌似是base64编码的轮播,再拖进stegsolve把编码记下来解码就好了

点这个:

base:Q1RGe3dhbmdfYmFvX3FpYW5nX2lzX3NhZH0=

解码:CTF{wang_bao_qiang_is_sad} 王宝强is sad, 哈哈哈哈哈哈哈哈哈哈哈哈

outguess

给了一堆乱七八糟的

小猫图片的16进制出现了Exif,拖进Exif元数据查看器发现社会主义核心价值观编码

解码结果:

就给了个abc,试了也不是密码,把我整懵了,看了别的师傅的博客,才知道outguess是一个linux命令

outguess安装:

Kail终端命令输入git clone https://github.com/crorvick/outguess

安装包随即下载到文件夹。双击打开文件夹,右键点击空白区域选终端打开。

随后输入以下命令./configure && make && make install进行安装

结合题目名字,对这张图片进行使用outguess导出隐写内容

outguess -k 'abc' -r mmm.jpg flag.txt 

我有一只马里奥

给了一个自解压的exe,自动解压出1.txt。学了一下自己解压命令,就是那个silent

Silent=参数

参数 可以是 1 或 2。如果 参数 是 1,开始解压对话框会完全隐藏,包含进程指示和文件名。如果 参数 是 2,则跳过开始解压的确认,但用户仍然可以看到压缩文件的解压进程。

改成2保存,但是也没啥用

作用就是不自动解压了,马里奥的图标出来了

NTFS交换数据流(Alternate Data Streams,简称ADS)是NTFS磁盘格式的一个特性。在NTFS文件系统下,每个文件都可以存在多个数据流,意思是除了主文件流之外还可以有许多非主文件流寄宿在主文件流中,这些利用NTFS数据流寄宿并隐藏在系统中的非主文件流我们称之为ADS流文件。虽然我们无法看到ADS流文件,但它们却是真实存在。

NTFS流隐藏文件,使用工具NtfsStreamsEditor

下载地址:【NtfsStreamsEditor】NtfsStreamsEditor V2.0官方免费下载_正式版下载-多特软件站

文件系统的官方文档:FAT、HPFS 和 NTFS 文件系统概述 - Windows Client | Microsoft Docs

flag{ddg_is_cute}

谁赢了比赛?

给了个图片,我也不懂围棋

但是这个缩略图好TM像二维码啊,没思路,Binwalk一下

binwalk分离出了一个压缩包,gif有加密,尝试爆破

发现有一帧有异样,保存这一帧,再打开查看,在Red plane 0处发现有二维码

果然还是二维码

flag{shanxiajingwu_won_the_game}

来题中等的吧

给了个神似条形码的图片,在stegsolve试了好久,没啥结果

这图片也有点像摩斯电码.- .-.. .--. .... .- .-.. .- -...

转码得:

ALPHALAB

flag{alphalab}

gakki

oh,girl

binwalk出了一个rar文件,试试暴力破解

easy

什么玩意

到这里看别人wp,知道得做词频统计,脚本如下:

# -*- coding:utf-8 -*-
#Author: mochu7
alphabet = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*()_+- =\\{\\}[]"
strings = open('./flag.txt').read()
​
result = {}
for i in alphabet:
    counts = strings.count(i)
    i = '{0}'.format(i)
    result[i] = counts
​
res = sorted(result.items(),key=lambda item:item[1],reverse=True)
for data in res:
    print(data)
​
for i in res:
    flag = str(i[0])
    print(flag[0],end="")

GXY{gaki_IsMyw1fe}

find_me

备注里有东西,感觉像盲文,查了对照表,发现人家盲文每列3个点,这是4个点啊

随便找了个解密网站,它又能解出来

wctf2020{y$0$u_f$1$n$d$_M$e$e$e$e$e},就出来了

base64隐写

那个txt是每行都经过两次base64加密的C语言,那个jpg是公众号

def get_base64_diff_value(s1, s2):
    base64chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
    res = 0
    for i in xrange(len(s2)):
        if s1[i] != s2[i]:
            return abs(base64chars.index(s1[i]) - base64chars.index(s2[i]))
    return res
​
​
def solve_stego():
    with open('ComeOn!.txt', 'rb') as f:
        file_lines = f.readlines()
        bin_str = ''
        for line in file_lines:
            steg_line = line.replace('\n', '')
            norm_line = line.replace('\n', '').decode('base64').encode('base64').replace('\n', '')
            diff = get_base64_diff_value(steg_line, norm_line)
            print diff
            pads_num = steg_line.count('=')
            if diff:
                bin_str += bin(diff)[2:].zfill(pads_num * 2)
            else:
                bin_str += '0' * pads_num * 2
            print goflag(bin_str)
​
​
def goflag(bin_str):
    res_str = ''
    for i in xrange(0, len(bin_str), 8):
        res_str += chr(int(bin_str[i:i + 8], 2))
    return res_str
​
​
if __name__ == '__main__':
    solve_stego()
 

命令:python 1.py

flag{6aseb4_f33!}

伟大的侦探

这个压缩包密码看起来像乱码

 福尔摩斯小人密码

flag{iloveholmesandwllm}

KO

不就oOk编码么,怎么越做越简单了,解码出来就是flag

贴一下解码网站:Brainfuck/Ook! Obfuscation/Encoding [splitbrain.org]

黑客帝国

给了很长很长的字符串,看着像16进制,尝试把开头的一部分转字符串,发现Rar

以原始文件流保存文件:

s=''
import binascii
out=open('2.rar','wb')
out.write(binascii.unhexlify(s))
out.close()

s那个后面复制黏贴那些16进制,得到加密的rar,四位数暴力破解

解压出一张打不开的图片

它只有一个PNG的文件头

末尾是FFD9,是jpg的文件尾,把文件头改成FFD8就可以正常查看了

你能看懂音符吗

给了个rar打不开,发现文件头写错了,把6152改成5261就好了

得到一个word文件,感觉像某种隐写

中间还有一个小插曲,就是我的word已经开了隐藏文字显示,那些音符好像是隐藏了的,还有就是隐藏了的文字好像没法直接往外复制?可以选中文字右键点击“链接”选项,他就会给你显示出来,弹出的新对话框的音符可以复制出去。

ezmisc

使用010 Editor打开出现CRC校验出错

上脚本爆宽高

import zlib
import struct
​
# 同时爆破宽度和高度
filename = "flag.png"
with open(filename, 'rb') as f:
    all_b = f.read()
    data = bytearray(all_b[12:29])
    n = 4095
    for w in range(n):
        width = bytearray(struct.pack('>i', w))
        for h in range(n):
            height = bytearray(struct.pack('>i', h))
            for x in range(4):
                data[x+4] = width[x]
                data[x+8] = height[x]
            crc32result = zlib.crc32(data)
            #替换成图片的crc
            if crc32result == 0x370c8f0b:
                print("宽为:", end = '')
                print(width, end = ' ')
                print(int.from_bytes(width, byteorder='big'))
                print("高为:", end = '')
                print(height, end = ' ')
                print(int.from_bytes(height, byteorder='big'))

结果:

宽为:bytearray(b'\x00\x00\x01\xf4') 500
高为:bytearray(b'\x00\x00\x01\xc8') 456

修改高度就好

flag{1ts_vEryyyyyy_ez!}

sqltest

考察盲注相关的流量包,如下操作:

文件>>>导出对象>>>http

给各位避个坑,到保存的页面分析就好了,别导出,尤其别导出到桌面上,我的电脑差点炸了

sql语句

id=1 and ascii(substr(((select concat_ws(char(94),flag from db_flag limit 0,1)),1,1))>100

找出每组最后一个数字

至于为什么要这样找呢?

它有两种响应包,第二种应该是盲注为TRUE的反应,就是盲注的基础知识了,我的盲注也不大行

提取到:

102 108 97 103 123 52 55 101 100 98 56 51 48 48 101 100 53 102 57 98 50 56 102 99 53 52 98 48 100 48 57 101 99 100 101 102 55 125

f=open('./sql.txt','r').readlines()
for i in f:
    print(chr(int(i)),end="")
flag{47edb8300ed5f9b28fc54b0d09ecdef7}

你有没有好好看网课?

给了两个压缩包

flag3.zip提示了6位数字,那就先爆破它

解压

不是密码就是提示

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: NTFSStreamsEditor2是一款用于编辑NTFS文件系统中的数据流的工具。NTFS文件系统是Windows操作系统中常用的文件系统,它支持文件的压缩、加密和数据流等特性。 NTFSStreamsEditor2的主要功能是允许用户查看、编辑和删除NTFS文件中的数据流。它可以帮助用户管理文件中的多个数据流,并对数据流进行相应的操作。 使用NTFSStreamsEditor2,用户可以方便地查看文件中的所有数据流,并对它们进行编辑。用户可以通过该工具创建新的数据流,并对现有数据流进行添加、删除和重命名等操作。同时,用户还可以修改数据流的大小和属性等信息。 NTFSStreamsEditor2还提供了一些高级功能,例如可以将数据流导出为独立的文件进行备份或分析。此外,它还支持对文件夹进行批量操作,可以一次处理多个文件夹中的数据流。 总而言之,NTFSStreamsEditor2是一款强大而实用的工具,它可以让用户更方便地管理NTFS文件系统中的数据流。无论是对于普通用户还是系统管理员来说,这款软件都能提供便利,帮助用户更好地管理和处理文件。 ### 回答2: NTFSStreamsEditor2是一款用于编辑NTFS文件系统中流的工具。流是NTFS文件系统中的一种特殊数据结构,可以将额外信息附加到文件、文件夹或驱动器上。 NTFSStreamsEditor2提供了一个用户友好的界面,使用户可以轻松地浏览、创建、编辑和删除流。用户可以使用该工具来添加文本、图像、音频、视频或任何其他类型的文件作为附加流。这些流可以用于存储其他元数据,如文件版本、作者信息、文件提供者等。此外,用户还可以对已有的流进行编辑和删除操作。 NTFSStreamsEditor2还具有高度的灵活性和可定制性。用户可以选择哪些文件、文件夹或驱动器应该显示流并进行编辑。它还支持批量操作,允许用户一次对多个流进行编辑和管理。 此外,NTFSStreamsEditor2还具有一些其他有用的功能。例如,它可以提供有关流的相关信息,如流的大小、创建日期和最后修改日期等。它还可以导出流为独立的文件,以供用户方便地访问和共享。 总之,NTFSStreamsEditor2是一款功能强大且易于使用的工具,它使用户能够方便地管理和编辑NTFS文件系统中的流。无论是为了增加额外的元数据,还是为了进行其他操作,该工具都提供了一种简单而有效的方法。 ### 回答3: NTFSStreamsEditor2是一款功能强大的Windows平台上的文件流编辑工具。NTFS(New Technology File System)是Windows操作系统使用的文件系统,通过使用文件流(Alternate Data Streams)功能,可以在一个文件中嵌入多个数据流。 NTFSStreamsEditor2可以帮助用户在文件中创建、修改和删除数据流。用户可以通过简单的拖放操作将文件拖入软件界面,然后选择文件流的类型进行编辑。这个工具支持多种数据流类型,如标准数据流、隐藏数据流等。 使用NTFSStreamsEditor2,用户可以方便地创建和修改文件流。用户可以通过添加一个新的数据流来往文件中添加额外的信息,比如文件版本、作者、备注等。而对于隐藏数据流,用户可以利用这个功能在一个文件中隐藏一些敏感或不希望被他人看到的内容。 此外,NTFSStreamsEditor2还提供了查看和删除数据流的功能。用户可以通过软件界面查看文件中所有的数据流,包括隐藏数据流。而如果用户不再需要某个数据流,可以直接选择删除该数据流,从而有效地释放文件中的空间。 总之,NTFSStreamsEditor2是一款功能强大、操作简单的文件流编辑工具。它可以帮助用户创建、修改和删除文件中的数据流,提供了丰富的功能以满足用户的不同需求。无论是普通用户还是专业人士,都可以通过使用NTFSStreamsEditor2更好地管理和利用文件流功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MUNG东隅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值