OSINTメインのコンテストは初めてだったのですが、結構楽しかったです。
リヴァイ 銅像
で検索。すると以下の記事が出てくる。
https://shingeki-hita.com/spot/016.html
TsukuCTF22{8770013}
お金 投げる 仏像
で画像検索。すると以下の記事が出てくる。
https://jp.123rf.com/photo_62960147_%E4%BB%8F%E5%83%8F%E5%9C%B0%E8%94%B5%E7%9F%B3%E5%BD%AB%E5%83%8F%E3%81%A8%E9%87%91%E9%96%A3%E5%AF%BA-%E9%87%91%E9%96%A3%E5%AF%BA-%E3%80%81%E4%BA%AC%E9%83%BD%E3%81%A7%E3%81%AE%E9%81%8B%E3%81%AE%E8%A8%AA%E5%95%8F%E8%80%85%E3%81%AE%E6%8A%95%E3%81%92%E6%97%A5%E6%9C%AC%E5%86%86%E7%A1%AC%E8%B2%A8%E3%80%82.html
ここから金閣寺であることが分かる。
TsukuCTF22{6038361}
反射で映ってるTAKENOYAから、たけのや 空港
で調べると福岡空港がヒットする。
TsukuCTF22{福岡}
犬山市 抹茶
を検索すると、それっぽいスイーツの画像が出てる犬山よあけや
がある。
それで検索するとホームページにヒットするのでメニューを見る。
TsukuCTF22{和チーズケーキ ver.煎茶パウダー}
座席に書いてあるCentXの広告から名鉄と分かる。
名鉄の特急でskyと関係するものを調べるとミュースカイが出てくる。
後は停車駅をフラグに入れていって試していく。
TsukuCTF22{名鉄名古屋}
東豊線と見えるので札幌地下鉄。停車駅の丁目などから東西線と分かるので遡っていくと西11丁目。
TsukuCTF22{西11丁目}
うっすら見える文字からよいほモールを当てる。
google mapを探索して道路の線などをヒントにして正しい形のタイルを当てる。
TsukuCTF22{34.5762_136.5313}
SHIBUYA SCRAMBLE SQUAREと見えるので渋谷。google earthなどから位置推定して渋谷PARCOだと分かる。
TsukuCTF22{1973/06/14}
和風 内装 観光バス
で画像検索すると熱海の湯~遊~バス。がヒットする。
https://www.ataminews.gr.jp/s/spot/174/
バスの駅を改めてみると次の停車駅が銀座であることが分かる。そこでサンビーチ駅と銀座駅の間にある交差点を調べる。
TsukuCTF22{東海岸街}
黄色い電車
と画像検索して長崎の島原鉄道と分かる。
そこから長崎の南の方でパチンコ屋を検索するとJコーストがヒット。
これは写真に見える看板と一致するのでビンゴ。
TsukuCTF22{32.7691_130.3706}
デスクの上の観光案内から南城市と分かるので郵便番号を全探索。
TsukuCTF22{9011511}
左下の変な建物を画像検索するとNSW株式会社と分かる。そこから地図を見ると渋谷ソラスタが分かる。
TsukuCTF22{2019/03/29}
新聞 ジャック ゲーム
で検索してFGOコラボと分かる。そのファミ通の記事などから和歌山の道成寺と分かる。
TsukuCTF22{6491331}
画像検索で頑張るとグアムのデデド朝市(The Guam Farmers Market)のトイレがヒットする。
https://www.lealea-guam-jp.info/feature/wallart/
TsukuCTF22{13.5210_144.8286}
TsukuCTFのTwitterアカウントのフォロワーを見て同じ画像の人を発見。
そこからはtwitter 登録日
と調べて出たサイトに張り付ける。
TsukuCTF22{2021/11/29}
Baiduで大学生創新能力培養基地を簡体字で検索。
すると華南理工大学がヒットするのでその英語名を入れる。
TsukuCTF22{South China University of Technology}
中をバイナリエディタで見るとapa-316-2428という単語が見える。
apa no316
で調べたらNo.316 アパホテル&リゾート〈両国駅タワー〉と出て2428が部屋番号と推測する。
TsukuCTF22{アパホテル&リゾート〈両国駅タワー〉_2428}
タクシーのナンバーとバスの表示から京都と分かる。
写真からクロネコヤマトの営業所が見えるので、営業所のうち道路の右手にあるものを調べてBruteForce。
TsukuCTF22{千本今出川}
先のアカウントのリンク切れしてる引リツのリンク先をweb archiveで見るとgoogle driveのアドレス付きのツイートが出てくる。
https://web.archive.org/web/20220917230409/https://twitter.com/yJRXaCh4M5aRTk0/status/1571273659335184384
https://drive.google.com/drive/folders/1sal6kj0OrsO7Xu-gQZeBFjYOm-kAtuns
メアドを若干明かしているツイートをしているのでbyが含まれるメアドを調べる。すると田川ヒロシさんがヒットする。
TsukuCTF22{1980/01/10}
画像の端っこに京都と書かれた看板がある。
そこで京都 月 観光
で渡月橋が出てくるので、その周辺を調べてみる。
TsukuCTF22{35.0120_135.6778}
xnツイートからpunycodeのURLであることが推測できる。
仕様を見てxn--ctf-073b6d.comを当てる。が、このままではNever Gonna Give You Upに転送される。
このURLは後ろに何か付けても転送されるが、適当なサブドメインを付けると404が出るため、何らかのサブドメインに隠されていると推測できる。
そこでcrt.shでサーバ証明書を検索するとthis-is-flag-siteというサブドメイン付きのものが出てくる。
そこにはBase64でフラグが書かれている
VHN1a3VDVEYyMnt3aDQ3XzE1XzRfcHVuMWMwZDM/fQo=
これを解読すると出る。
TsukuCTF22{wh47_15_4_pun1c0d3?}
RFC9116というタグ名から調べて、/.well-known/security.txt
をURLのドメイン名の後ろに付けるとよいことが分かる。
TsukuCTF22{y0u_c4n_c47ch_bu65_4ll_y34r_r0und_1n_7h3_1n73rn37}
pythonの文字列に変数を埋め込む方法を調べて
https://docs.python.org/ja/3.7/reference/lexical_analysis.html#f-strings
を見ると、f"{flag!r}"
とあるので使う。
TsukuCTF22{wh4ts_new_1n_pyth0n_3X}
ReDoSで条件分岐。時間がかかるような正規表現を作り、
正規表現|(([{}_0-9a-zA-Z]+)+)+e$
で真なら前半の正規表現でマッチして短時間で終了するが、偽ならマッチに長いこと時間がかかる。
後は二分探索などでゆっくりフラグを絞っていく。
TsukuCTF22{4_w47ch3d_p07_n3v3r_b01l5}
なでしこ3 脆弱性
で調べると、どうやら圧縮解凍に脆弱性(CVE-2022-41642)があることが分かる。
そこで、ドキュメントを調べると圧縮解凍ツールパス変更
で引数は変えられないものの任意の実行ファイルを走らせられることが分かる。
そこで、flag.txtをシェルコードとして実行して実行失敗させられないか考えて以下のコードとなった。
「/home/ctf/nako3ndbox/FLAG.txt」を小文字変換してaに代入。aに圧縮解凍ツールパス変更。aをaに解凍。
するとエラー文にフラグのテキストが実行できないよ!というのが出る。
TsukuCTF22{y0u_jump3d_0u7_0f_j4p4n353}
1と2はシミュレータで動かしてみると分かる。それぞれ4と4が正解。
3はKiCadのガーバービュアーで開いてみると他の選択肢ではBombにつながってるNANDが切れないので74HC00のVCCを切る2が正解。
TsukuCTF22{442}
file a.out
でPDP11と分かるので、PDP11でディスアセンブル。
;
; pdp11dasm version 0.0.3
; disassembly of ../pdp7-unix/a.out
;
000000: 000405 br 14 ; ..
;
000002: 000064 invalid opcode ; 4.
000004: 000000 halt ; ..
000006: 000000 halt ; ..
000010: 000000 halt ; ..
000012: 000000 halt ; ..
;
000014: 005001 clr r1 ; ..
000016: 005002 clr r2 ; ..
000020: 005201 inc r1 ; ..
000022: 005202 inc r2 ; ..
000024: 006301 asl r1 ; A.
000026: 006301 asl r1 ; A.
000030: 006301 asl r1 ; A.
000032: 006301 asl r1 ; A.
000034: 006302 asl r2 ; B.
000036: 060102 add r1,r2 ; B`
000040: 000777 br 40 ; ..
;
000042: 060560 071563 add r5,71563(r0) ; pass
000046: 062167 064440 add (r1)+,64512 ; wd i
000052: 020163 067151 cmp r1,67151(r3) ; s in
000056: 051040 bis (r0),-(r0) ; R
000060: 020062 005000 cmp r0,5000(r2) ; 2 ..
1を4回左シフトしたものと2回左シフトしたものを足して18。
TsukuCTF22{18}
やるだけ。
TsukuCTF22{Welcome_to_TsukuCTF_2022!!!!}