zoukankan      html  css  js  c++  java
  • 【WP】攻防世界-杂项-Misc

    长期更新一波 攻防世界 的杂项题解

    这东西主要靠积累吧

    攻防世界:https://adworld.xctf.org.cn

    因为攻防世界的题目顺序经常变化,我也不改序号了,顺着之前写的位置往下写,推荐使用 ctrl+F 搜索题目名字来定位

    在语雀上建立了一个杂项知识库,收集杂项的知识点:https://www.yuque.com/hxfqg9/tx8y1v/uew75k

    新手练习区

    1、this_is_flag

    题目直接给出了 flag

    2、ext3

    主要考察 linux 下光盘的挂载

    strings 文件名 | grep flag

    搜索文件中的可打印字符 grep:全面搜索正则表达式并把行打印出来

    使用命令:mount linux ./linux_cd

    将 linux(文件名) 挂载到 linux_cd 目录下,正常访问 O7avZhikgKgbF 文件夹即可看到 flag 文件,再经过 base64 解码得到最终 flag

    3、give_you_flag

    动态图,一帧一帧看(我用的是爱奇艺万能播放器),在第50帧有个二维码,但是少了三个定位图案,用 PS 补上,扫码得到 flag

    4、pdf

    下载下来直接把编辑 PDF,把图片拿开就可以看到 flag

    5、坚持60s

    一个 java 小游戏,用 jd-gui 打开,直接搜索:flag,得到,结果需要 base64 解码

    6、如来十三掌

    打开 doc,与佛论禅编码:http://www.keyfc.net/bbs/tools/tudoucode.aspx

    解出来先 rot-13,然后 base64

    7、gif

    白为0,黑为1

    01100110011011000110000101100111011110110100011001110101010011100101111101100111011010010100011001111101

    二进制转字符串得到 flag

    8、SimpleRAR

    打开只有一个 flag.txt,但是用 winhex 打开发现应该还有一个 png 文件,

    将这里改成74

    再打开就看到了 png 文件,winhex 发现其实是个 gif 将后缀改成 gif

    分离出来(我用的是 PS),然后用 Stegsolve 查看

    把这个二维码拼起来,再把定位标志补上扫码得到 flag

    9、掀桌子

    网上师傅们给出的解密代码

    string = "c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2"
    flag = ''
    for i in range(0,len(string), 2):
        s = "0x" + string[i] + string[i+1]
        flag += chr(int(s, 16) - 128)
    print(flag)

    每两个一组,将16进制转换为10进制,减去128以后输出 ascii

    10、功夫再高也怕菜刀

    下载到一个流量包,有 foremost 分离一下

    得到一个压缩包,里面有 flag 文件,爆破就别想了(太复杂)

    分析流量包!!

    ctrl+F 搜索字符

    选择第1150个,右键,追踪流 -> TCP 流

    把这些保存下来

    从 FFD8FF 开始到 FFD9 复制出来

    打开 winhex 新建一个文件,把上面的粘贴进去,注意,选择 hex 

    可以看出是个 jpg 了

    保存后打开图片

    用这个密码打开压缩包里的 flag.txt

    11、stegano

    下载 PDF 在火狐浏览器打开,控制台输入:

    document.documentElement.textContent

    看一下内容,会有一串

    BABA BBB BA BBA ABA AB B AAB ABAA AB B AA BBB BA AAA BBAABB AABA ABAA AB BBA BBBAAA ABBBB BA AAAB ABBBB AAAAA ABBBB BAAA ABAA AAABB BB AAABB AAAAA AAAAA AAAAB BBA AAABB

    把“A”换成“.”,把“B”换成“-”,得到:

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

    解密摩斯密码,得到:

    CONGRATULATIONSFLAG1NV151BL3M3554G3

    真正的 flag 是:flag{1NV151BL3M3554G3}

    这里因为格式不对,浪费了几个金币查看 writeup,结果 writeup 也没说格式,还是自己试出来的

      2019.8.19:

    这题 flag 格式又双叒叕改了,经过评论区的 @ConvexLens 师傅提醒现在 flag 是:1nv151bl3m3554g3

    各位提交的时候不对,大小写啥的试试

    12、base64stego

    这个题接触了一种叫 base64 隐写的类型

    python2 解密脚本:

    #coding=utf-8
    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('1.txt', 'rb') as f:
            file_lines = f.readlines()
            bin_str = ''
            for line in file_lines:
                steg_line = line.replace('
    ', '')
                norm_line = line.replace('
    ', '').decode('base64').encode('base64').replace('
    ', '')
                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()

    高手进阶区

    1、Excaliflag

    使用 Stegsolve 在蓝色通道为0的时候发现 flag

    2、签到题

     

    base64 -> 凯撒 -> 栅栏

    注意根据题目背景,是SSCTF,凯撒的时候看到 ssC 选择那一个进行栅栏

    3、Avatar

    下载图片,用 outguess 解密

    outguess -r avatar.jpg -t 1.txt

     4、What-is-this

    解压出来的文件直接 foremost 看看是什么

    得到两张图片

    使用 Stegsolve 打开一张图片,然后选择 Analyse => Imgae Combiner 选择另一张,会得到如图所示效果

     

     5、Training-Stegano-1

    图片直接用文本编辑器打开就看到了。。。

     

    6、easycap

    用 wireshark 打开,ctrl + F 搜索字符串,随便定位一个 右键 => 追踪流 => TCP 就能看到 flag

      flag 是直接复制提交上去

     7、Test-flag-please-ignore

    这道题。。。难道不应该在新手区嘛?

     

     8、Get-the-key.txt

    下载的文件解压出来,用文本编辑器打开,随便一拖发现疑似 flag 的东西

     找了所有的,试了很多都不对,网上搜了一下,然后 binwalk -e 超级多东西,但是第一个 txt 的第一句就是

    9、glance-50

    一个 GIF,巧的是之前在 freebuf 上看 python 操作图片的时候这就是一道例题

    先用这个代码把每一张图片都保存在 yichen 文件夹(文件夹要提前创建好)

    from PIL import Image
    
    savepath = "yichen\"
    path = '.\'
    
    im = Image.open('2.gif')
    try:
        im.save(savepath+'2{:d}.png'.format(im.tell()))
        while True:
            im.seek(im.tell()+1)
            im.save(savepath+'2{:d}.png'.format(im.tell()))
    except:
        pass

     在用这个代码把保存的图片拼接起来成为 yichen.png,并打开展示出来

    # coding:utf-8
    # author:Reborn
    from PIL import Image
    path = "yichen\"
    save_path = '.\'
    
    im = Image.new('RGBA',(2*201,600))
    
    imagefile = []
    width = 0    
    for i in range(201):
        imagefile.append(Image.open(path+'2'+str(i)+'.png'))
    
    for image in imagefile:
        im.paste(image,(width,0,2+width,600))
        width = width +2
    im.save(save_path+'yichen.png')
    im.show()

    省得你再去敲了:TWCTF{Bliss by Charles O'Rear}

     

     10、4-2

    字频分析,在线解密网站:https://quipqiup.com/

     

    11、misc1

    跟之前新手区那个 掀桌子 没啥区别

     12、embarrass

    在 linux 下直接 strings 命令

    strings misc_02.pcaong | grep flag

     

    13、肥宅快乐题

    使用软件:PotPlayer 查看 swf 文件,拖到后面,大概这个位置

    与 NPC 对话,得到一串东西,其实是 base64 解码出来:SYC{F3iZhai_ku4ile_T111}

    14、小小的PDF

    直接 foremost,图片就分离出来了,气死我了 WPS 不充钱不让图片另存为,简直是钻钱眼里了

    15、hit-the-core

    长记性了,以后用 strings 命令不要总是跟着 | grep flag,不然很多东西会被忽略掉

    发现下面这一串字符串,发现前面几个大写字母组成的是 ALEXCTF,根据这个规律,写出脚本

    flag0='cvqAeqacLtqazEigwiXobxrCrtuiTzahfFreqc{bnjrKwgk83kgd43j85ePgb_e_rwqr7fvbmHjklo3tews_hmkogooyf0vbnk0ii87Drfgh_n kiwutfb0ghk9ro987k5tfb_hjiouo087ptfcv}'
    flag=""
    for i in range(3,len(flag0),5):
        flag+=flag0[i]
    print(flag)
    #参考:https://blog.csdn.net/zz_Caleb/article/details/89533039

    16、Cephalopod

    用 strings 发现 flag.png

     

    追踪TCP流,把数据按照原始数据复制出来

     

    粘贴到 winhex 里面,按照 ASCII Hex 的形式

    把前面没用的都删掉,留到 png 文件头

    打开图片发现 flag

    HITB{95700d8aefdc1648b90a92f3a8460a2c}

    17、pure_color

    用 Stegsolve 打开,在 blue = 0 的时候看到 flag

    flag{true_steganographers_doesnt_need_any_tools}

    18、2-1

    打开图片会发现提示格式错误,修改文件头以后还是打不开,根据大佬的说法:CRC32校验错误了,写脚本跑出来

    把宽度那个地方改成这样

     base64÷4

    base64÷4=base16,直接 16 进制转字符串就可以

    can_has_stdio?

    打开是一个五角星,但是很明显是 brainfuck 把空格和换行去掉之后转换一下就可以

    János-the-Ripper

    解压出来,后缀改成 .zip 暴力破解得到 fish,打开得到 flag

    Banmabanma

    在线扫条形码 https://online-barcode-reader.inliteresearch.com/

    Hear-with-your-Eyes 

    用 AUdacity 打开,看一下频谱图 e5353bb7b57578bd4da1c898a8e2d767

    神奇的Modbus

    输入 modbus 过滤一下,随便选一个追踪 TCP 流

    快乐游戏题

     把小猫围起来,围一个大点的圈就行

     MISCall

     按照压缩包打开

     

    然后 git 操作一下

    Reverse-it

    用脚本:https://blog.csdn.net/YUK_103/article/details/103842782

    Aesop_secret

    ps 把 gif 每一帧拼接起来是:iscc

    在 gif 末尾看到疑似 base64,实际是 AES,密码是 ISCC,两次解密出结果

    https://www.sojson.com/encrypt_aes.html

    倒立屋

    zsteg 牛逼!!

    另外因为是倒立屋,所以内容要反过来 flag{9102_cCsI}

     a_good_idea

     用 foremost 分离一下出来个压缩包,里面有两张图

    Beyond_Compare 图片比较一下

     

     2017_Dating_in_Singapore

    把给的数字用短线分割

    然后画出来,额根据比赛名可以知道第四个是 B

     

     simple_transfer

    直接 foremost 分理出 pdf,然后软件打开挪一下黑色的底色就能看出来了

     Erik-Baleog-and-Olaf

     winhex 打开之后,最下面藏了个网址,访问拿到一张图片。额好吧,走偏了

    未完待续...

  • 相关阅读:
    [LeetCode] Construct Binary Tree from Inorder and Pretorder Traversal
    [LeetCode] Construct Binary Tree from Inorder and Postorder Traversal
    [LeetCode] Candy
    [LeetCode] Next Permutation
    [LeetCode] Permutation Sequence
    [LeetCode] Permutations II
    【转载pku】三十分钟掌握STL
    [LeetCode] Permutations
    【附论文】Facebook推面部识别软件 精准度高达97.25%
    【转载】limits.h
  • 原文地址:https://www.cnblogs.com/yichen115/p/11315696.html
Copyright © 2011-2022 走看看