Swing'Blog 浮生若梦 Swing'Blog 浮生若梦
  • Home
  • |
  • About
  • |
  • Articles
  • |
  • RSS
  • |
  • Categories
  • |
  • Links

酱油之旅--CCTF

2016-04-25 Updated on 2020-06-23 Writeup

Table of Contents

  1. MIsc
    1. misc100_1
    2. Reverse_100T1
    3. Reverse_100T2
    4. Reverse_100T3
  • Misc
    1. True or False?
  • Base 安码

    MIsc

    misc100_1

    后面将附上打包好的文件

    用winhex打开图片发现奇怪的代码

    Y3Rme3dlMWMwbWUgdDAgYW5tYWN0ZiF9

    Base64解密即得flag
    ###misc100_2

    这是一题流量包分析 还好数据不大可以取巧
    想到当初在某篇writeup看到神奇的命令 strings

    解码就得到了flag

    ![](https://blog-1252049492.cos.ap-hongkong.myqcloud.com/img/cctf_misc100 2.jpg)

    ##Reverse

    Reverse_100T1

    这个很简单 其实打开就看到了flag,问题脑洞大我以为这是md5加密并没有直接提交 谁知道….

    Reverse_100T2

    这题让我知道有时候是需要监听的 还有第一次使用IL spy好紧张

    需要监听 本地 31337端口
    nc -l -p 31337

    然后你就看到flag CTF{7eb67b0bb4427e0b43b40b6042670b55}

    Reverse_100T3

    这题告诉我要静下心来 看看是不是有算法

    然后直接上龙哥的图了 龙哥的注释杠杠的

    这里需要字符串拼接 拼接结果是 4 2 3 1


    Misc

    ##Best_Easy_Misc

    我不服!!!为什么他们都能直接解压缩而我不行呢
    不知为什么我解压不出来 但是右键属性看到了加密 于是我去百度了一下伪加密,发现可以用手机解压。。。。我还是不服~~~

    解压出来是一个txt文件
    打开一串的-.-.-

    如图

    这时候怎么办 刚开始觉得有点像莫尔斯密码 然后又和马师傅一起说出了培根…其实都无所谓的…
    解法1
    把”-“ 换成1 把”.”换成0 仔细看了看发现是1024个字符,刚好是32的次方,于是排列成排一个方格,然后就看了flag

    解法2
    ​ 用脚本跑吧
    这是我从别人那copy过来的..

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    # -*- coding: utf8 -*-
    #author:pcat
    #必须先安装Image模块
    import Image

    dct={
    'A':'.-','B':'-...','C':'-.-.','D':'-..','E':'.','F':'..-.','G':'--.',
    'H':'....','I':'..','J':'.---','K':'-.-','L':'.-..','M':'--','N':'-.',
    'O':'---','P':'.--.','Q':'--.-','R':'.-.','S':'...','T':'-','U':'..-',
    'V':'...-','W':'.--','X':'-..-','Y':'-.--','Z':'--..',
    '0':'-----','1':'.----','2':'..---','3':'...--','4':'....-',
    '5':'.....','6':'-....','7':'--...','8':'---..','9':'----.',
    '.':'.-.-.-',':':'---...',',':'--..--',';':'-.-.-.','?':'..--..',
    '=':'-...-',"'":'.----.','/':'-..-.','!':'-.-.--','-':'-....-',
    '_':'..--.-','"':'.-..-.','(':'-.--.',')':'-.--.-','$':'...-..-',
    '&':'.-...','@':'.--.-.','+':'.-.-.'
    }

    def readRe():
    f=open('reverse','rb').read().strip()
    lst=f.split(' ')
    #键值交换
    dct2={v:k for k,v in dct.items()}
    #摩斯密码解密
    for i in xrange(len(lst)):
    lst[i]=dct2[lst[i]]
    return "".join(lst)

    def foo():
    #读取reverse文件
    s=readRe()
    #绘制图
    n=32
    width,height=n,n
    bgcolor=(255,255,255)
    im= Image.new('RGB',(width,height),bgcolor)
    pix=im.load()
    i=0
    for x in xrange(0,height):
    for y in xrange(0,width):
    if s[i]=='9':
    pix[x,y]=(0,0,0)
    i+=1
    #图像旋转180度
    out=im.rotate(180)
    out.show()
    pass

    if __name__ == '__main__':
    foo()
    print 'ok'

    接着据生成了我要的falg

    True or False?

    这题马师傅吓死我了 居然过来问我有没有思路 受宠若惊 受宠若惊

    hint说了他是一个压缩文件 然而尝试了各种压缩果断放弃…
    之后又放出hint Bz2 果断百度豁然开朗~~~
    然后又傻逼了一回,没有加文件头难怪死活解压不出来
    用winhex打开

    百度一下BZ2压缩文件的文件头加上

    1
    tar   -jxvf    aaaa.tar.bz2

    命令解压缩…
    得到两个Bin文件

    稍微逆向看一下
    因为IDA不是很熟悉 在这里我学习到了IDA不仅仅有F5这个功能还有R键….这里上龙师傅的图

    OK 按顺序拼接就得到falg了


    然后酱油就打到这里了~

    酱油党要睡觉了…

    明天看完WP有想法再来更新….

    文件

    分类: Writeup
    标签: cctf
    ← Prev Phrack--CTF 整理
    Next → Hexo 使用

    Comments

    © 2015 - 2026 Swing
    Powered by Hexo Hexo Theme Bloom