ABCTF 2016にCTF wo Suruというチームで参加しました.
スコアは3545点で,23位でしたわーい.
他メンバーのwrite up
- @ki6o4
- @No___Op
- @junk_coken
- lenia
皆さんすごくて僕が解けたのめっちゃ少ないんですが,Writeup書いてみます.
TGIF
Thank God, It's Friday.
英語力低くて問題文をなかなか理解できなかったが,日付の一覧に対してその1年後が金曜日である数を返すらしい.
194なのでABCTF{194}
がフラグ.
JS Pls
問題のコード
base64でデコードしてevalしろって言われてるのでとりあえずデコード.
process.stdin.resume(); process.stdin.setEncoding('utf8'); console.log("Give me a flag"); process.stdin.on('data',(t)=>{ t=t.trim(); if(t.length===+[[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]]){ // if statement x6 console.log("nice job!"); process.exit(); }}}}}}} console.log("nope!"); process.exit(); });
js読めないマンだけどフラグを渡せって言ってるのでif文を全部満たす文字列考えればよさそう.
ksnctfのうーにゃーと同じだろうなって思ったんだけど,あの時はFireBugが変換元のコードを表示してくれたけど今回無理そうだった.
例えばconsole.log(+[[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]]);
とかやると19
って表示されるので,ちょっとずつ置換していくアホな解き方で進める.文字列のn文字目とかsubstr
の文字がこれこれだっていうif文ばっかりなので繋ぎあわせてABCTF{node_is_w4Ck}
がフラグ.
Virtual Box
Win98のVMを与えられてのシリーズ問題.
1
デスクトップに置いてあるflag 1.doc
というWordPadファイルに書いてあるのがフラグ.
ABCTF{FREE_P0INTS}
O
じゃなくて0(ゼロ)
なのが見分けにくい.
2
flag 1.doc
1番のフラグの下に白文字で書いてある.ABCTF{H1DDEN_AWAY}
3
C:\My Documents\2016
にflagfour.xlsx
というXLSXファイルがある(なぜ4).
壊れてるっぽく文字化けしか出てこないので7-gipで展開して中を見てるとflagfour.xlsx\xl\sharedStrings.xml
にフラグが書いてある.ABCTF{FR0M_THE_FUTURE}
4
問題文What's this?
なのでWindows_98_SE
とかそういうことかと思ったけど違った.
ゴミ箱にWhats this.txt
という隠しファイルがあり,ABCTF{N0T_S0_D1ff1CULT}
とあったが違った.
ファイル検索でwhats
で調べるとC:\Program Files\Outlook Express\ABCTF{Y0U_F0UND_ME}\whats this.txt
を発見.
5
IEの履歴に,1週間前にこんな画像を見ていた履歴を発見.
フォントっぽいなってことで探してみたけど見つけられず,@ki6o4に見つけてもらった.感謝.Cindy Arrow
ABC|F?I|{rC00LrL00KINGrBACK?
(?
部分は対応フォントなし)
|
をT
,r
を_
に,?
を{
と}
に変えるとABCTF{IT{_C00L_L00KING_BACK}
結局色々試してABCTF{ITS_C00L_L00KING_BACK}
でした.
6
千鳥格子が好きだから壁紙を変えてくれ!って言われたので変えてあげる.
こんなんでいいのか,そして最後の}
はいらないのか.いらないらしい.ABCTF{I_L0VE_PATTERNS
7
Windows 98のスタッフロールを探せ,地図を使う方法以外でね,ということだったので情報収集すると見つけた.
Windows 98 でイースター・エッグ(Easter egg)を表示させる方法 PCプチ技能向上委員会?
スタッフロール表示はなんかうまく行かなかったものの,手順の中にあるYou_are_a_real_rascal
が引っかかったのでABCTF{You_are_a_real_rascal}
としてみると通りました.
Obfuscated 1
問題のコード
難読化したpythonプログラム.直していくとわかったことはこんな感じ.
- 全長は11文字
- s[0]=='U'
- s[4]
とs[5]
は'_'
- s[s[3]]=='U'
- s[-1]
は3の倍数
obfuscated1.py · GitHub
それらを満たす感じでUtU2__teUs3
を入れてみたら通った.
所感
全然ダメダメだったので皆さんのWriteup読んで勉強します_(:3 」∠)_