[2021铁人赛 Day19] General Skills 16

  • 引言
    特别的一题...
    这题大家的评分不高,我想应该真的出得不好/images/emoticon/emoticon01.gif
    不过也意外让我学到这个新东西~
    话说这题的延伸题就是最後一题 General Skills 了呢。

  • General Skills / mus1c
    https://ithelp.ithome.com.tw/upload/images/20211004/20111429GLsvdSsPeU.png
    提示:
    Do you think you can master rockstar?


    这题很特别,乍看之下真的不知道要做什麽...
    题目给了一个奇怪的歌词档案,
    先将它下载下来,会得到 lyrics.txt 档案:

    Pico's a CTFFFFFFF
    my mind is waitin
    It's waitin
    
    Put my mind of Pico into This
    my flag is not found
    put This into my flag
    put my flag into Pico
    
    
    shout Pico
    shout Pico
    shout Pico
    
    My song's something
    put Pico into This
    
    Knock This down, down, down
    put This into CTF
    
    shout CTF
    my lyric is nothing
    Put This without my song into my lyric
    Knock my lyric down, down, down
    
    shout my lyric
    
    Put my lyric into This
    Put my song with This into my lyric
    Knock my lyric down
    
    shout my lyric
    
    Build my lyric up, up ,up
    
    shout my lyric
    shout Pico
    shout It
    
    Pico CTF is fun
    security is important
    Fun is fun
    Put security with fun into Pico CTF
    Build Fun up
    shout fun times Pico CTF
    put fun times Pico CTF into my song
    
    build it up
    
    shout it
    shout it
    
    build it up, up
    shout it
    shout Pico
    

    这是一段歌词的样子,
    看了几次後,可能是我看过许多不同的程序语言吧,
    总觉得这可能是一种奇妙的语言或指令。

    像是 shout 频繁出现、 xxx is yyy 、
    还有最可疑的 put xxx into yyy ,
    十足像是将某某变数放入某个值的感觉。

    但这样还是没有头绪,我们看看提示:
    Do you think you can master rockstar?

    我将 rockstar 拿来搜寻 Google ,没有什麽有用资讯,
    然後再搜寻了 master rockstar
    果不其然这次就出现了一个网站:
    rockstar:try it

    中奖了!这看起来就像是翻译机或是某种编译器,
    这次将歌词贴到上面的大框,按下 Rock 看看:

    下面的 output 出现了一串再熟悉不过的特殊数字,
    观察它们的数字都介在几十到一百多之间,
    十之八九是 ASCII code 了。

    我们将除了 Program completed in xxx ms 以外的数字复制,
    然後建立一个档案例如 code.txt ,贴到里面後存档。

    可以藉由 Python 转换 ASCII code ,
    我们直接写个 Python 程序 (ascii.py) :

    while True:
        try:
            a = chr(int(input())) # 转成 int 後 chr 成字元
            print(a, end='')
        except:
            break
    print()
    
    

    注意到我是直接用 input 读取标准输入,一般来说是键盘,
    但也可以由重新导向从档案读取:

    $ python ascii.py < code.txt
    

    也就是从 code.txt 读取那些数字,
    然後这些资料会由 input() 读取,最後转成字元印出:

    rrrocknrn0113r
    

    用 picoCTF{} 包起来:

    picoCTF{rrrocknrn0113r}
    

<<:  D-11 注入 ? autofac ? dependency injection

>>:  DAY 22-凭证颁发机构CA

Day19-JavaScript(JS)与TypeScript(TS)的函式(Function) Part1

这两天要来带大家看看JavaScript(JS)与TypeScript(TS)的函式(Functio...

端点安全防护 - 端点防护软件 EDR

又饶舌了 适用人员: 技术人员。 适用法规: 资通安全责任等级分级办法 技术面分类提要 网路架构 端...

Progressive Web App 推播协定 (26)

之前已经可以用後端的套件去实作推播的服务器,但那个套件实际上做了哪些事情? 金钥对 Applicat...

[Day24] HTB Devel

URL : https://app.hackthebox.eu/machines/3 IP : 1...

老肝哥-菜鸟Java的LeetCode历程,第九题:Palindrome Number,朝远大目标前进!

您最亲爱的老肝哥又又上线了! 至於为什麽是又又呢?因为老肝哥刚刚文章打文很开心呢,结果 忘记送出文章...