CTF題目記錄7

Questionnaire

您有一份調查問卷請查收~ https://forms.gle/Vmzt99LazrtXsRLM9

這題要翻牆= =所以我瞟一下源碼好了 沒見過的f12題 拼成flag

null,null,null,null,[["1vV5T8FOS13NOQDji-xYIynLwsUMXcV8aatxUWP6ljvfz-w",null,[740,416,0]
]
]
]
,[603160739,"What is the name of the store?",null,0,[[539054317,null,0,null,[[4,302,["Haolinju|haolinju"]
,"8cd9"]
]
]
]
,null,null,null,null,[["1x4dT2M6J3EbaiVZ37ssMVunsnsB2UMCM6g4LCHyhlHJu-Q",null,[740,416,0]
]
]
]
,[488094967," What BRAND is this food?",null,0,[[1465781074,null,0,null,[[4,302,["Daoxiangcun|daoxiangcun"]
,"8f00b2"]
]
]
]
,null,null,null,null,[["1lH3bwgs28QoVKcUYhtzoqAcacmh4n4CHyWjGQen4RiE3Jw",null,[375,458,1]
]
]
]
,[1097246628,"Which RESTAURANT are the ducks coming from? ",null,0,[[353762320,null,0,null,[[4,302,["Jingweizhai|jingweizhai"]
,"04e9"]
]
]
]
,null,null,null,null,[["11ym4QgB0WEymoJXlmFy7FTC5Eyd5rV1adBbw6vWN5PmXvw",null,[740,555,0]
]
]
]
,[1916058196,"Which PARK is this?",null,0,[[901636349,null,0,null,[[4,302,["Jingshan|jingshan"]
,"8009"]
]
]
]
,null,null,null,null,[["16pfH3k5-5kDo-Rb9BxeKRvx0S-Qy4IgUdlX8iJ0AUOBIwQ",null,[740,554,0]
]
]
]
,[1044111735,"Which DISTRICT is the No.3 of Beijing?","The restaurant in question4 is in this Distric",0,[[1620980704,null,0,null,[[4,302,["Chaoyang|chaoyang"]
,"98ecf8"]
]
]
]
,null,null,null,null,[["1VbfGqSSHlM9D_HY1TsENa6rle3axBYbtKdyHS_klYDLG5g",null,[740,371,0]
]
]
]
,[1877231084,"Which part of the Great Wall is this?","In Huairou Distric",0,[[1337434564,null,0,null,[[4,302,["Hefangkou|hefangkou"]
,"427e"]

8cd98f00b204e9800998ecf8427e

babyweb

(寬字節隱寫)此處轉自某師傅的博客 然後F12發現
在這裏插入圖片描述

於是想到可能是寬字節隱寫,然後找到在線工具網站解密,得到zerowidthcharactersinvisible,解壓後得到一張倒序圖

a = open('f14g.png','rb').read()
f = a[::-1]
b = open('flag.png','wb').write(f)

以下兩題感謝蓋樂希 Galaxy的wp

NPU老千層餅

copy file1 file2
利用copy命令+binwalk -e
一頓操作猛如虎 獲得一張圖片和一個hint 吧
(主要是懶得找原始文件了) 當時就沒學LSB隱寫,也就卡在圖片上了 不知道圖片怎麼搞;也沒有發現標題要反過來讀,然後呆了


這是一通亂操作後拿到的文件和hint 看名字看名字!!!
在這裏插入圖片描述
在這裏插入圖片描述
ok文件標題顯然是個bv號
hint是一個二維碼 那大概就是圖片中要操作出一個二維碼來 其實觀察winhex 發現圖片裏還藏着txt
那個txt文件的標題。。我也是醉了,要倒着看,實際上暗示的是cyberchef_recipe 這是一個工具 (事實上正着寫我也很難意識到,但我可以面向百度啊!)
在這裏插入圖片描述
txt文件裏面是base64 我已經解碼
按照提示把不需要的移除:但是我當時想的是remove_this是不是坑啊。。。。難道他讓我remove我要remove嗎 ,難過。

{'option':'Hex','string':'this'},'CBC','Hex','Raw',{'option':'Hex','string':''})
Vigenère_Decode('keepthis')
From_Base64('A-Za-z0-9+/=',true)
DES_Decrypt({'option':'Hex','string':'av?'},{'option':'UTF8','string':'keepthis'},'CBC','Hex','Hex')

硬解也可以吧,但是本意是使用cyberchef的recipe模塊
這個工具吃下安利了,but還不太會用

在這裏插入圖片描述
在這裏插入圖片描述
這邊要把bv->av 並改選項
在這裏插入圖片描述
input裏面要填二維碼decode出來的一串base64
我個人認爲最難的一定是拿這個二維碼了,so放在最後
在這裏插入圖片描述
alpha0通道發現不明小黑點
其他通道都是全白的
至於該怎麼發現,根據LSB 這裏一定要好好看各個通道最後兩位的異常,其他就是做題要增加經驗了 往往信息藏在邊緣(詳見雙圖題)
腳本提取數據 (感謝FzWjScJ師傅提供的腳本)圖片方面的真不會寫,只能先偷摸一下了

from PIL import Image

p = Image.open('1.png')
a,b = p.size
i = ''
count = 0
for y in range(b):
    for x in range(a):
        data = p.getpixel((x,y))[3]
        if data == 255:
            i+='1'
        else:
            i+='0'
a = open('all.txt','w')
a.write(i)
a.close()

data = open('all.txt','r').read()
block1 = Image.new('L',(10,10),0)
block2 = Image.new('L',(10,10),255)
res = Image.new('L',(330,330),0)
for i in range(33):
    for j in range(33):
        if data[j+33*i] == '1':
            res.paste(block1,(i*10,j*10))
        else:
            res.paste(block2, (i * 10, j * 10))
res.show()

接下來都是基操了
掃碼獲得GvgQE86nZKJdFzN2Z9x2Y3OnZyvnYNQEbG282GRtSL0=

這串扔進input就得到flag了

NPU碰上彩虹 吃定彩虹

主要是因爲涉及到了寬字節隱寫,因此與上面這題一起說(復現)
瓜大ctf之misc 這題纔是真的套娃啊啊(題目名怎麼都那麼鬼畜啊啊啊啊)
個人認爲這題比下面那題更加千層餅,只要其中一步不知道就拿不到flag了,所以這題我記得當時通過率巨低。。。有點要腦洞,但是可以學的東西還是很多的。有時候看wp發現每一步都知道,但是真做題了就卡殼在某步了…題目在第10層,而我還在第1層。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章