buuoj 5天misc计划(0x03)

[HBNIS2018]低个头

下载附件,查看里面内容

image

我低头看了半天,还是迷迷糊糊的

原来是叫我低头看键盘

image

flag{CTF}

~~低头了低头了 ~~


[SWPU2019]你有没有好好看网课?

我好好看了网课,还是卡壳了

下载解压

image

两个压缩包都有密码,还都不是伪加密

只有暴力解压一下,发现6位数字密码可以暴力破解

使用Ziperello或者ARCHPR,但是咱的ARCHPR好像是试用的,不让我试6位

image

使用密码183792解密flag3

得到一个文件和一个视频

image

打开文件

image

本列文虎克这次确实没懂怎么做,可恶

参考链接:https://blog.csdn.net/mochu7777777/article/details/109449494

根据提示,我们看一下5秒20(实际上好像是5秒63左右有个加密信息)和7秒11(7秒33左右)的视频是怎样的

image

image

第二个应该是base64编码

解码如下

image

第一个密码是敲击码

参考链接:https://www.hyluz.cn/post/44.html

image

最终flag2压缩包解压密码:wllmup_up_up

解压后是一个图片,我们使用010editor打开后发现如下一幕:
image

flag{A2e_Y0u_Ok?}

我吃三明治

这个题,疏忽了啊,直接用binwalk提取文件了,谁知道它两个文件之间还有点什么小九九

小九九如下

image

得到一串编码

MZWGCZ33GZTDCNZZG5SDIMBYGBRDEOLCGY2GIYJVHA4TONZYGA2DMM3FGMYH2

针对base16,base32,base64看加密的字符有多少个,这玩意是个base32

解密网站:http://www.atoolbox.net/Tool.php?Id=931

flag{6f1797d4080b29b64da5897780463e30}

喵喵喵

这个题难度还是不错

首先我们下载附件,发现是一只猫的图片

使用binwalk未发现有用的信息,然后使用zsteg命令发现LSB好像有什么隐藏信息

image

使用Stegsolve查看最低有效位,得到如下结果

image

保存下来,发现是一个png,但是文件头有多余的数据,修改之后可以得到半张二维码

image

很明显是修改了长高,我们使用py程序计算长高

image

image

image

得到一个完整的二维码,使用QR_Research扫描二维码,得到一个百度网盘地址:https://pan.baidu.com/s/1pLT2J4f

去网站下载内容,得到一个txt文件

image

玩我吧,说没有就没有

我还真以为没有

参考其他博客,发现又是NTFS文件流隐写

参考链接:https://blog.csdn.net/mochu7777777/article/details/109368451

针对NTFS文件流隐写,之前采用的策略是使用lads.exe扫描一边然后使用notepad命令读出来

image

image

全是乱码,使用网站反编译的时候显示错误

image

推测这种情况应该不能直接用notepad打开,得直接用.pyc后缀保存了,再次反编译应该可以

使用NtfsStreamsEditor

image

image

Python反编译网站:https://tool.lu/pyc/

得到以下python代码:

#!/usr/bin/env python
# visit https://tool.lu/pyc/ for more information
# Version: Python 2.7

import base64

def encode():
    flag = '*************'
    ciphertext = []
    for i in range(len(flag)):
        s = chr(i ^ ord(flag[i]))
        if i % 2 == 0:
            s = ord(s) + 10
        else:
            s = ord(s) - 10
        ciphertext.append(str(s))
    
    return ciphertext[::-1]

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']

很明显,解出flag就行了

解码代码如下:

def slove():
    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']
    ciphertext = ciphertext[::-1]
    res = []
    for i in range(len(ciphertext)):
        if i % 2 == 0:
            s = int(ciphertext[i])
            s-=10
        else:
            s = int(ciphertext[i])
            s+=10
        s = s ^ i
        res.append(chr(s))
    for i in res:
        print(i,end='')

if __name__ == '__main__':
    slove()

最终的flag如下:

flag{Y@e_Cl3veR_C1Ever!}
posted @ 2022-07-09 00:36  许久九  阅读(76)  评论(0)    收藏  举报