- [stegano] Warm Up 1
- [stegano] Catch Me If You Can
- [IR] Basic系
- [forensics] Device Info系
- [forensics] Hide and Seek
- [forensics] Frozen Xip
- [forensics] 8cel
[stegano] Warm Up 1
exiftoolの情報から得られるCreate Dateを答える。
$ exiftool IMG_6380.HEIC ... Create Date : 2023:07:31 10:14:57.296+07:00
[stegano] Catch Me If You Can
拡張子がgifだが開けないファイルが与えられる。
ちゃんと開けるgifファイルとバイナリエディタで見比べてみる。
$ hd Stegano1.gif | head 00000000 39 61 f4 01 f4 01 f7 00 00 03 03 03 7f 81 80 92 |9a..............| 00000010 94 93 94 d1 ec 2f c1 ed 5b ba e2 cb cd cd 5e cb |...../..[.....^.| 00000020 f3 ca e9 f5 43 b9 e6 97 e5 f3 ea ed ec 3d 40 40 |....C........=@@| 00000030 c6 ca c9 7e cf e2 43 c8 e5 7a c5 e4 ca f4 fa 5b |...~..C..z.....[| 00000040 c1 e2 93 db ee ef f5 f2 43 be e4 7d db e9 b3 e7 |........C..}....| 00000050 f8 6b c2 e6 df e3 e2 5e 60 60 1e 21 21 a2 de f3 |.k.....^``.!!...| 00000060 37 bb f2 fc f6 e7 ad af af 8c d0 eb b5 f1 f9 37 |7..............7| 00000070 c1 e3 53 c2 e5 6b ce e2 5a c4 f0 51 b9 e2 7b d1 |..S..k..Z..Q..{.| 00000080 f5 45 cf f2 2f 31 31 dc f7 fa ec fd ee 6f 71 71 |.E../11......oqq| 00000090 d6 da d9 ce ef f7 97 e0 f3 c4 e9 f6 da f1 f5 4e |...............N| $ hd sachiko.gif | head 00000000 47 49 46 38 39 61 0e 01 40 01 f7 00 00 0c 0c 14 |GIF89a..@.......| 00000010 18 18 28 1f 20 31 29 29 37 2c 2c 3b 24 24 35 33 |..(. 1))7,,;$$53| 00000020 2d 3b 31 2a 32 27 1d 25 45 33 3b 47 32 38 26 29 |-;1*2'.%E3;G28&)| 00000030 48 2c 32 43 33 32 42 3a 36 45 32 3b 46 3d 39 47 |H,2C32B:6E2;F=9G| 00000040 3c 3b 49 36 39 4b 2a 2b 57 31 2c 59 31 2a 57 29 |<;I69K*+W1,Y1*W)| 00000050 31 56 32 32 56 33 32 5a 3a 37 59 31 2f 41 2b 29 |1V22V32Z:7Y1/A+)| 00000060 65 2d 29 6a 31 2a 66 32 29 6a 3c 2d 69 36 34 64 |e-)j1*f2)j<-i64d| 00000070 3b 36 64 39 38 6e 3b 37 68 31 28 76 32 28 79 3b |;6d98n;7h1(v2(y;| 00000080 36 72 2c 2a 6f 1e 1d 4c 43 3a 47 49 3c 4f 43 3a |6r,*o..LC:GI<OC:| 00000090 66 4b 36 6b 48 37 78 52 37 7a 53 38 79 46 2b 72 |fK6kH7xR7zS8yF+r|
先頭4bytesが欠けている気がする。
$ echo -en '\x47\x49\x46\x38' > magic $ cat magic Stegano1.gif > fixed.gif
こんな感じで修復すると開けてフラグが書いてある。
[IR] Basic系
ディスクイメージが与えられて問いに答えていく問題群。
FTK Imagerで開きながら答えていく。
とりあえず、以下を抽出しておく。
- レジストリ C:\Windows\system32\config
- Registry Explorerで見ていく
- イベントログ C:\Windows\system32\winevt
- 何で見るか迷ったが、とりあえず純正のイベントビューワーで見ていく
- 細かい解析が必要な時はEvtxECmdでcsvにして解析
以下問題。
- Basic - 1
- Basic - 2
- the previous second hostname and timeline of changing from second hostname to third hostname
Flag Format - CyberGonCTF{DD/MM/YEAR hh:mm:ss AM/PM, Second Hostname}
(Note: To adjust the timeline with host timezone)- ホスト名は変更されていたようだ。変更履歴はイベントログに残っていそうではある。
- System.evtxのイベントログID 6011を見るとホスト名の変更を追跡可能。確かに2回変更履歴がある。
- 時間の変更
- 答え CyberGonCTF{22/07/2023 04:46:34 PM, DESKTOP-1INR457}
- Basic - 3 解けず
- which user has logged in the most, the total login count and last incorrect password time of that user
Flag Format - CyberGonCTF{numberonly_year-mm-dd hh:mm:ss}
Note: to adjust the time with host timezone- Security.evtxにログイン成否が4624と4625で記録されているので確認する
- システムのユーザーを消していくと、CyberGon-Adminというユーザーのログが一番多く記録されているが…色々試しても正答できなかった
[forensics] Device Info系
E01ファイルでディスクイメージが与えられるので、問いに答えていく問題群。
- Device Info (ep1)
Flag Format : CyberGonCTF{osname 00.00.0 XXX} eg. CyberGonCTF{Windows 11.22.1 ABC}
the operating system information
-> /usr/lib/os-release -> Ubuntu 20.04.5 LTS
- Device Info (ep2)
- Device Info (ep3)
- Device Info (ep4)
Flag Format: CyberGonCTF{Full Information} #included Device Name, Series Number, Model, Version example flag - CyberGonCTF{ThinkPad X1 Carbon Gen 11}
- the device model details of this host -> /var/log/dmesg -> Raspberry Pi 3 Model B Rev 1.2
- Attacker IP (ep5)
Flag Format: CyberGonCTF{xxx.xxx.xxx.xxx}
- the ip address of Attacker
- /var/log/auth.logを見ると
Jul 15 14:20:35 ubuntu sshd[1093]: Failed password for ubuntu from 192.168.1.67 port 44008 ssh2
のようにssh経由での失敗ログが多数残っていた -> 192.168.1.67
- /var/log/auth.logを見ると
- Success Logon (ep6)
Flag Format: CyberGonCTF{total failed numbers_Mon dd hh:mm:ss} eg. CyberGonCTF{10_Jan 01 01:01:01}
- the total number of failed logon from attacker and When attacker got the success
- 引き続き/var/log/auth.logを見る
Failed password for
で検索すると652件ヒットJul 15 16:55:26 ubuntu sshd[1984]: Accepted password for ubuntu from 192.168.1.67 port 54296 ssh2
のJul 15 16:55:26
が答えだった
- New User (ep7) 解けず
Flag Format: CyberGonCTF{username, password} password hint- husband name (included two capital letters) +4 digits
attacker added the new user for Persistence. Can you find the username and password
- /home/ubuntu/.bash_historyで
adduser shwehmoneyati
とされている - /etc/shadow
shwehmoneyati:$6$8Da3ntmDvkfqYTP6$V3XYeRQdVVfDvQD157uLpoDFP8lFI5We3qmWpO0Zr.Enrg1ZcLVUdU9lJ0a1VPsUg1iL8FowgLAgWXczUgQ28.:19553:0:99999:7:::
- /etc/passwd
shwehmoneyati:x:1005:1005:Shwe Hmone Yati,105,09450062226,:/home/shwehmoneyati:/bin/bash
- /home/ubuntu/.bash_historyで
- 辞書を作ってshadowのハッシュをクラックするんだろうが…husband name?
[forensics] Hide and Seek
とりあえずoleidで解析してみるが、特筆すべきものはなし。
zipにして解凍して、中を眺める。
word/header1.xmlに妙なものがある。
++++++++++[>+>+++>+++++++>++++++++++<<<<-]>>>---.>+++++++++++++++++++++.-----------------------.+++.+++++++++++++.<++++.>---.-.<----.+++++++++++++++++.--------------.>+++++++++++++.<-----------------.--.>------------------------.-----------------.<.++++.>+++++++++++++.<+++++++++++++.----------------.+++.---.>.<---.>+++++++++++++++.---------------.<+++++++++++++++++++++++.<+++++++++++++++++++++.+.>>+++++.<<-.>++++++++++.>+++++++++++++++++++++++++.
無茶苦茶見たことがあるが、思い出せない…なんだっけ…
と思いgoogle検索にそのまま突っ込むとbrainfuckだった。
https://www.dcode.fr/brainfuck-language
ここで実行するとフラグが出てくる。
[forensics] Frozen Xip
謎の開けない拡張子PNGのファイルが与えられる。
開けないのでとりあえずバイナリで眺める。
$ hd xipper.PNG 00000000 50 4b 04 03 14 00 00 00 08 00 1b 18 ec 56 46 cc |PK...........VF.| 00000010 51 d1 da 00 00 00 31 02 00 00 14 00 00 00 66 6c |Q.....1.......fl| 00000020 61 67 2e 74 78 74 6d 50 cb 6e c2 30 10 3c af bf |ag.txtmP.n.0.<..| 00000030 62 d4 33 82 6f 28 52 2b 71 05 24 ce 46 d9 42 44 |b.3.o(R+q.$.F.BD| 00000040 f0 46 b6 09 ca 8d 8f e8 b1 5f 97 2f 69 42 6c ec |.F......._./iBl.| 00000050 00 3e ec 78 66 67 c7 8f ed 91 71 15 29 1c b4 65 |.>.xfg....q.)..e| 00000060 54 d2 70 d5 ce 50 68 7b 82 36 05 0a e6 1a 0b 2c |T.p..Ph{.6.....,| 00000070 2f 1e 2b 1c 75 c3 a8 ad 9c 4b c7 0e 5e 70 1a bb |/.+.u....K..^p..| 00000080 9f bd f1 5c 56 a3 76 10 ec f9 47 fa b0 15 5c d5 |...\V.v...G...\.| 00000090 1b e6 aa bb fd 62 2d 7b b6 1e df 56 9c 9f a1 bb |.....b-{...V....| 000000a0 fd 6d bc d4 75 69 0e 58 b6 d8 dd 2f 20 06 1a 1b |.m..ui.X.../ ...| 000000b0 23 d7 16 5f 0d 9b be f7 41 18 16 41 21 6c 88 46 |#.._....A..A!l.F| 000000c0 0c 85 a2 8e 87 33 f4 02 64 24 d1 14 4a 49 cb 3c |.....3..d$..JI.<| 000000d0 34 a5 18 9c 99 8d 22 a3 84 f4 64 7d 4e 98 90 74 |4....."...d}N..t| 000000e0 4a 94 d4 cb 4b de c3 38 98 a8 ca c4 2c 2e 96 3b |J...K..8....,..;| 000000f0 4e be 26 cf 89 83 8f 12 fa 2a 90 a9 37 be ef 1f |N.&......*..7...| 00000100 50 4b 01 02 1f 00 14 00 00 00 08 00 1b 18 ec 56 |PK.............V| 00000110 46 cc 51 d1 da 00 00 00 31 02 00 00 08 00 24 00 |F.Q.....1.....$.| 00000120 00 00 00 00 00 00 20 00 00 00 00 00 00 00 66 6c |...... .......fl| 00000130 61 67 2e 74 78 74 0a 00 20 00 00 00 00 00 01 00 |ag.txt.. .......| 00000140 18 00 03 16 8b 66 32 b4 d9 01 bc e1 a2 78 31 b4 |.....f2......x1.| 00000150 d9 01 d1 3d 59 69 31 b4 d9 01 50 4b 05 06 00 00 |...=Yi1...PK....| 00000160 00 00 01 00 01 00 5a 00 00 00 00 01 00 00 00 00 |......Z.........| 00000170
flag.txtという名前が見える。pngファイルというよりzipファイルのようだ。
TSXBINで正規のzipファイルと比較しながら修復していく。
正規のzipでは先頭4bytesは50 4b 03 04
なので、それをまず直す。
これで解凍してみるとファイル名がなんか変な感じになる。
0x1Aから2bytesでファイル名の長さが格納されるが、0x0014となっている。
flag.txtだと思われるので、0x0008に直すと正しく解凍できるようになる。
タブと空白がたくさん書かれたファイル。
stegsnowで解読可能。
$ stegsnow -C flag.txt CyberGonCTF{Z1pp3R_4nD_573G5n0W}
[forensics] 8cel
zipファイルが与えられる。
解凍するとofficeファイルっぽい見た目をしているので、oleidを使ってみる。
$ oleid 8cel.zip XLMMacroDeobfuscator: pywin32 is not installed (only is required if you want to use MS Excel) oleid 0.60.1 - http://decalage.info/oletools THIS IS WORK IN PROGRESS - Check updates regularly! Please report any issue at https://github.com/decalage2/oletools/issues Filename: 8cel.zip --------------------+--------------------+----------+-------------------------- Indicator |Value |Risk |Description --------------------+--------------------+----------+-------------------------- File format |MS Excel 2007+ |info | |Workbook (.xlsx) | | --------------------+--------------------+----------+-------------------------- ...
xlsxファイルだった。
/xl/worksheets/sheet2.xmlを見ると、なんか色々書いてある。
<row r="2" spans="2:8" x14ac:dyDescent="0.25"> <c r="B2" t="e" cm="1"><f t="array" aca="1" ref="B2" ca="1">EMBED("Package", "Q3liZXJHb25DVEZ7ZjRrM19GMTRnfQ==")</f><v>#NAME?</v></c> <c r="C2" t="e" cm="1"><f t="array" aca="1" ref="C2" ca="1">EMBED("Package", "Q3liZXJHb25DVEZ7RjRrM19GMTRnfQ==")</f><v>#NAME?</v></c> <c r="D2" t="e" cm="1"><f t="array" aca="1" ref="D2" ca="1">EMBED("Package", "Q3liZXJHb25DVEZ7RjRrM19GMTRHR30=")</f><v>#NAME?</v></c> <c r="E2" t="e" cm="1"><f t="array" aca="1" ref="E2" ca="1">EMBED("Package", "Q3liZXJHb25DVEZ7RjRrM19GMTRHfQ==")</f><v>#NAME?</v></c> <c r="F2" t="e" cm="1"><f t="array" aca="1" ref="F2" ca="1">EMBED("Package", "Q3liZXJHb25DVEZ7ZjRLM19GMTRnfQ==")</f><v>#NAME?</v></c> <c r="G2" t="e" cm="1"><f t="array" aca="1" ref="G2" ca="1">EMBED("Package", "Q3liZXJHb25DVEZ7ZjRLM19GMTRHfQ==")</f><v>#NAME?</v></c> <c r="H2" t="e" cm="1"><f t="array" aca="1" ref="H2" ca="1">EMBED("Package", "Q3liZXJHb25DVEZ7RjRrM19GMTRHR30=")</f><v>#NAME?</v></c> </row>
こういう感じに各セルにbase64の文字列が書かれている。
何パターンかあるが、そこから目立つものを持ってきてbase64デコードするとフラグ。
<c r="E14" t="e" cm="1"><f t="array" aca="1" ref="E14" ca="1">EMBED("Package", "Q3liZXJHb25DVEZ7eTB1X0cwN183aDNfNTNjUjM3XzFOZjB9")</f><v>#NAME?</v></c>