• 2022DASCTF MAY 出题人挑战赛 misc


    Misc

    不懂PCB的厨师不是好黑客

    签到题,一开始在做其他的突然这个题很快就出了,于是下载下来搜DASCTF的base64编码无果,直接搜DASCTF出flag

    notepad++,请

    在这里插入图片描述

    DASCTF{77e64b28-3e93-42ed-a576-b2e1ab718be6}
    
    • 1

    卡比

    在这里插入图片描述

    google搜kirby language

    在这里插入图片描述

    PTRH{GWDVSWVQBFISZSZ}
    尝试rot无果,猜一手维吉尼亚,反过来测试key发现正好是kirb,于是猜测完整的key为题目名字kirby

    因此维吉尼亚,key就用kirby
    在这里插入图片描述

    内容小写,FLAG改DASCTF

    DASCTF{imverylikekirby}
    
    • 1

    rootme

    suid提权,首先一手find / -perm -u=s -type f 2>/dev/null

    在这里插入图片描述

    发现有date

    在这里插入图片描述

    再根据提示,名字是flag.txt

    date -f /root/flag.txt

    在这里插入图片描述

    神必流量

    第一波题目居然被下了,但是知道有个压缩包(zip),于是先直接在010里搜zip、rar、7z,发现存在一个7z

    在这里插入图片描述

    as a hex stream提出来,用notepad++转一下

    在这里插入图片描述

    打开7z后发现有密码,这里有个123456,当密码成功解开,打开得到https://drive.google.com/file/d/140MxBVh-OGvQUuk8tmOw4Xm8it9utIzo/view

    仍然123456

    在这里插入图片描述

    然后直接看的out.txt,与DASCTF{做加减和异或操作发现规律,于是写出脚本也正好跑出来

    key = '6603'
    f = open('out.txt','rb').read()
    for i in range(len(f)):
        print(chr(ord(key[i%4])^f[i]),end='')
    
    • 1
    • 2
    • 3
    • 4
    DASCTF{6f938f4c-f850-4f04-b489-009c2ed1c4fd}
    
    • 1

    噪音

    打开010,看data

    在这里插入图片描述

    很有规律,把其他的删了只留data,脚本看一下

    f = open('fla.wav','rb').read()
    vals = []
    for i in range(len(f)//2):
    	val = int.from_bytes(f[i*2:i*2+2], byteorder='little')
    	vals.append(val)
    vals = list(set(vals))
    vals.sort()
    print(vals)
    print(len(vals))
    
    #[999, 1499, 1998, 2498, 2998, 3497, 3997, 4497, 4997, 5496, 5996, 6496, 6995, 7495, 7995, 8495]
    #16
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    这很16进制

    f = open('fla.wav','rb').read()
    vals = []
    for i in range(len(f)//2):
    	val = int.from_bytes(f[i*2:i*2+2], byteorder='little')
    	vals.append(val)
    vals = list(set(vals))
    vals.sort()
    print(vals)
    print(len(vals))
    table = '0123456789abcdef'
    flag = ''
    for i in range(len(f)//2):
    	val = int.from_bytes(f[i*2:i*2+2], byteorder='little')
    	ind = vals.index(val)
    	flag += table[ind]
    print(bytes.fromhex(flag))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    在这里插入图片描述

    DASCTF{muisc_noise_can_hide_Flaaaag}
    
    • 1
  • 相关阅读:
    行业追踪,2023-10-16
    elasticsearch+logstash+kibana整合(ELK的使用)第一课
    【甜点】URL化
    Sovit3D数字孪生平台 助力智慧海上风电场项目加速
    Leetcode刷题详解——山脉数组的峰顶索引
    全面解读 AWS Private 5G 的革新理念
    Alevel经济:供需理论的真题分析
    【C#】文件的移动
    22年牛客最新大厂Java岗面试题大合集(含答案)
    每日一题~删除二叉搜索树中的节点
  • 原文地址:https://blog.csdn.net/qq_42880719/article/details/124903071