TsukuCTF にひとりチーム(syake)として参加し、16位でした。
他の方のwriteupを読むまで、Googleレンズというものを知りませんでした………。OSINT初心者のwriteupです。
TsukuCTF公式Twitterのアカウント名がそのままFlagとなっている
TsukuCTF{2021}
配布されたログを見る
XXX.XXX.XXX.XXX - - [11/Sep/2021 12:00:00] "POST / HTTP/1.1" 401 -
XXX.XXX.XXX.XXX - - [11/Sep/2021 12:00:00] "POST / HTTP/1.1" 401 -
XXX.XXX.XXX.XXX - - [11/Sep/2021 12:00:00] "POST / HTTP/1.1" 401 -
XXX.XXX.XXX.XXX - - [11/Sep/2021 12:00:00] "POST / HTTP/1.1" 401 -
と続いたのち、214154行目に
XXX.XXX.XXX.XXX - - [11/Sep/2021 12:00:01] "POST / HTTP/1.1" 200 -
とある。また、問題文中に
Kali Linuxの中のツールとファイルを使ったら
とあるので、rockyou.txtだろうと考える。rockyou.txtの214154行目がFlag
TsukuCTF{qwertyuiop[]\\}
ラーメンの画像が渡される。見た感じ、ポタージュっぽいスープと、ヤングコーンが乗っているのが特徴。
Googleで ラーメン ヤングコーン ポタージュで検索すると銀座 篝というお店の似たラーメンの画像が結構出てくる。このお店ぽい。このお店のInstagram IDがFlag
TsukuCTF{kagari_honten}
11秒の動画が渡される。0-3秒くらいはイオンモールの外観で、9-11秒くらいは車道。
11秒ごろに走ってきた車のナンバープレートを見ると「滋賀」と書いてある。たしかに背景は琵琶湖かもしれない。
滋賀のイオンモールを探すと、イオンモール草津がヒットする。ストリートビューでイオンモール草津の外観を確認すると、確かに0-3秒の映像と一致する。
TsukuCTF{イオンモール草津}
駅のホームっぽい画像が渡される。6番線が京浜東北線で5番線が山手線。
京浜東北線と山手線の並走区間で、少なくとも3路線は通っている駅だろう、と絞り込める。
あとはJR東日本のサイトで駅構内図が見れるので、確定できる。
新橋駅の駅構内図を見ると6番線が京浜東北線(東京上野大宮方面)、5番線が山手線(東京上野池袋方面)、そして北改札方面の張り紙があることから一致する。
TsukuCTF{Shimbashi}
動画が渡される。「無限」と書いてあるSLで、側面には「58654」と書いてある。
58654で検索すると、国鉄8620形蒸気機関車58654号機がヒットする。九州っぽい。
九州 無限 SLで検索すると、SL鬼滅の刃というコラボイベント列車のようだ。鹿児島本線の、熊本-久留米-鳥栖-博多の経路で走行したらしい。
10-14秒くらいの動画を見ると、上に高架があるっぽい。これは新幹線の高架?
googleマップで鹿児島本線と九州新幹線の並走区間を調べると、博多-竹下間のようだ。
ストリートビューで竹下周辺に降り立つと、確かに特徴的な黄色い四角めの建物が見える。
TsukuCTF{Takeshita}
2枚の画像が渡される。2枚目のCのような形状のオブジェが特徴的だ。
海辺 C オブジェで検索すると茅ヶ崎サザンビーチが出てくる。
TsukuCTF{Chigasaki}
画像には「ČSOB」と書いてある建物が光っている。調べてみるとチェコスロバキア貿易銀行というらしい。
また、路面電車は少し丸みをおびたフォルムで、白と赤い帯である。プラハ市電だ。
プラハ市電5系統のルート中の駅かつ交差点の角に存在するチェコスロバキア貿易銀行を1つずつ画像検索で見ていく。
すると、Lidická 66/43, 15000 Praha, SmíchovにあるČSOBに絞れる。最寄駅はAnděl
TsukuCTF{Anděl}
ルールページにお問い合わせのメールアドレスが載っている。Gmailのメールボックスを開いて入力すると、アイコンが表示される。アイコンにFlagが書いてある
TsukuCTF{Google_kingdom}
Tsukushi_no_email1で使用したメールアドレスをGoogle カレンダーに追加すると予定が見える。Flagという予定が入っている
TsukuCTF{Horsetail_is_delicious}
該当アカウントのメディア欄をざーーっと見ていくとキャストさんとのツーショットがある。
キャストさんのポケットには「No.1メイドカフェグループ」と書いてあるので、 Googleにて No.1 メイドカフェグループで検索。めいどりーみんであることを特定。
店舗情報から各店舗の背景を見ると、水色の空が壁紙となっているのは秋葉原中央通り店である。
よって https://maidreamin.com/shop/detail.html?id=5 が答えである
TsukuCTF{https://maidreamin.com/shop/detail.html?id=5}
渡された画像の奥に踏切が見える。小さくて文字は読みづらいが、「出町柳9号」の踏切っぽい。
念のため出町柳 9号 踏切で検索すると、該当踏切の別ポジションから撮ったであろう画像が出てくる。また、その場所のマップも出てくる。近くに元田中駅があることがわかる。
TsukuCTF{元田中}
渡された画像にはソーシャルディスタンス呼びかけの赤い旗がある。2m離れてねってことっぽい。
Twitterでソーシャルディスタンス 釣り 2mで検索。すると似たような場所のツイートが出てくる。
該当ツイートには若洲海釣り公園と書いているが、正式名称は若洲海浜公園(の中の、海釣施設?)っぽい。ストリートビューで降り立つと、配布された画像と一致する。特徴的な時計も橋もある。
TsukuCTF{若洲海浜公園}
奥に特徴的な橋が写っている。貯水池 赤い橋で検索すると、似た橋の画像が出てくる。
河内貯水池という貯水池にかかる橋のようだ。
TsukuCTF{河内貯水池}
SecHack365 非公式とかでググるとそれっぽいページが出てくる。
DevToolsを開き、†締切駆動コース†といういかにも問題文と一致してそうな状況のページを開くと、consoleにPlease decode! → VHN1a3VDVEZ7aHR0cHM6Ly9zZWNoYWNrMzY1Lm5pY3QuZ28uanB9と出力されている。
Base64デコードするとFlagが出てくる
TsukuCTF{https://sechack365.nict.go.jp}
3つの文字列ともbafybeiで始まっている。なんだろうと思いつつ、bafybeiで検索するとIPFSについてのスライドが出てくる。
試しにブラウザから
https://ipfs.io/ipfs/bafybeieozcigchzmmpjzlct5eti4xhqexjnolpuehsnk2ckeaiqfqfqilu
にアクセスすると、TsukuCTF{IPFS_と出てくる。引き続き、
https://ipfs.io/ipfs/bafybeifvtvmitvebs6ktbaqqhort2h76xfen4zj65bujq7xos2zzxdvwga
にアクセスすると、_is_the_が
https://ipfs.io/ipfs/bafybeidtzxolknnds6k2ny6s6rgvbm7t7gopwyfgvyblfjdw6m6og2vsxm
にアクセスすると、future}が出てくる。
TsukuCTF{IPFS__is_the_future}
配布されたzipにはパスワードがかかっている。
問題文を読むと.
解析にあたってマズイことをしてしまいました。彼は感染したことをほかの人に知られたくないようです。バレますかね?
と書いてある。おそらくVirusTotalにでも上げたのだろう、と予想する。
であればパスワードは気にしなくてよいのだろうと考え、とりあえずfile hashでも取ってみる。
$ shasum -a 256 Virus.zip
8fa168f38e54fb0f63e6674a4f463ef3a0971f71546e6f4ed1b69c121d1de1f3 Virus.zip
これでVirusTotalで検索すると、ヒットする。 RELATIONSタブからBundled Fileへと飛べる。ここにFlagが書いてある
TsukuCTF{Careless_uploading_is_dangerous}
エディタの検索置換機能を使って何度もTSUKUSHIを消すだけ。
一瞬スクリプト書いてもいいかなと思ったが、エディタの検索置換機能を連打するほうが早い気がした
ありがとうVSCode
TsukuCTF{Would_you_like_some_fresh-baked_Tsukushi?}
スプレッドシート開く。真ん中のセルが空白のように見える(が値は入っている)ので、それをみるだけ
TsukuCTF{yak1n1ku_ta6eta1}
まずは元となったポスターの文章を見つける。
せっかくレシピを提示してくれているので、どのあたりで区切るといい感じに正解っぽいのが出てくるか、試行してみる。
from transformers import T5Tokenizer, AutoModelForCausalLM
tokenizer = T5Tokenizer.from_pretrained("rinna/japanese-gpt2-medium")
model = AutoModelForCausalLM.from_pretrained("rinna/japanese-gpt2-medium")
input = tokenizer.encode("握るだけで解錠できるスマートドアハンドルを開発した。静脈認証が外側のドアハンドルに埋め込まれている。静脈認証は、身体の内部にある静脈パターンを",return_tensors="pt")
output = model.generate(input, do_sample=False, max_length=158)
print(tokenizer.batch_decode(output))
パターンを、までで区切るとそれっぽいのが出てくるようになった
['握るだけで解錠できるスマートドアハンドルを開発した。静脈認証が外側のドアハンドルに埋め込まれている。静脈認証は、身体の内部にある静脈パターンを</s> 読み取り、そのパターンに合致するドアハンドルを自動的に開く。 スマートドアハンドルは、ドアハンドルの内側に内蔵されたセンサーが、ドアハンドルの開閉を検知して、自動的に開閉する。 スマートドアハンドルは、ドアハンドルの内側に内蔵されたセンサーが、ドアハンドルの開閉を検知して、自動的に開閉する。 スマートドアハンドルは、ドアハンドルの内側に内蔵されたセンサーが、ドアハンドルの開閉を検知して、自動的に開閉する。 スマートドアハンドルは、ドアハンドルの内側に内蔵されたセンサーが、ドアハンドルの開閉を検知して、自動的に']
TsukuCTF{パターンを}
Macならダブルクリックするだけで開ける。ドラッグしてぐるぐる回すと背面に文字が彫ってある
TsukuCTF{ILIK3B3ar}
配布されたソースコードを見ると、
void blinking(){
digitalWrite(LED_BUILTIN, HIGH);
delay(500);
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(300); // wait for a second
}
void lit(){
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(2000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(300); // wait for a second
}
上記からblinkingが短点、litが長点のように振る舞うことがわかる。
loop内は明らかに欧文モールスなので、あとは普通に変換する。スクリプトを書いてもいい気がしたが、短いので目視で変換した。
TsukuCTF{ENJ0YHARDWARE!}
手持ちのgerbviewで見るだけ。
あとは星座 一覧とかでググって似た形をしている星座を見つける。白鳥座らしい。
TsukuCTF{CYGNUS}