Digital Forensics challenge まとめ(2021/12/01 更新)
Digital Forensicsを学ぶ同士達へ捧ぐ
CTFでDigital Forensics skillsは学べない。
ならば、どこで学ぶか。
その一部を以下に示す。
学習サイト
DFIR-TRAINING
Forensic Artifacts
DFIR Resources
Learn Computer Forensics with Online Courses and Lessons | edX
LetsDefend - Blue Team Training Platform
Digital Forensics Challenge
champdfa fa19 ctf
↑リンク切れ
DFA & CCSC Joint Spring 2020 CTF
仙台 CTF
MemLabs
Mini memory ctf
https://www.13cubed.com/downloads/mini_memory_ctf_solutions_guide.pdf
https://drive.google.com/drive/folders/1E-i2RTUBXBGUd_Xz0k67kFOpHcr6WX8J
Challenges – The Honeynet Project
NW3C Daily Challenge
Test Images and Challenges
DFIR-TRAININGのサイト
レベル順であったり、繋がりを持たせた順の学習をするための並べ替え方法が無いため基本的にはtips集
DFIR CTF - Email took my money (Exchange forensics training scenario) - Mellivora, the CTF engine
まとめサイト
Test Images and Forensic Challenges | ForensicFocus.com
Challenges & CTFs - AboutDFIR - The Definitive Compendium Project
フォレンジック学習向けのイメージデータ - setodaNote
awesome-forensics: A curated list of awesome forensic analysis tools and resources
ForensicChallenges
riftCTF2020 Stegano writeup
5月なのに何で3月のCTFのwriteup書いているんだろと自問自答している。
今回は2020/03/20 15:30 JST - 03/21 15:30に行われた「riftCTF2020」のStegano writeupをお届けする。
Stegano_0x0001
Stegano 0x0001
100
EASY
wubba lubba dub dub
author:- Mr.7i74N
与えられたファイル「chall1.jpeg」に関して、手当たり次第にみていく。
# file chall1.jpeg chall1.jpeg: JPEG image data, JFIF standard 1.01, resolution (DPI), density 72x72, segment length 16, progressive, precision 8, 1300x650, components 3 root@kali:~/CTF/riftCTF2020/Stegano/Stegano_0x0001# binwalk chall1.jpeg DECIMAL HEXADECIMAL DESCRIPTION -------------------------------------------------------------------------------- 0 0x0 JPEG image data, JFIF standard 1.01 root@kali:~/CTF/riftCTF2020/Stegano/Stegano_0x0001# exiftool chall1.jpeg ExifTool Version Number : 11.94 File Name : chall1.jpeg Directory : . File Size : 116 kB File Modification Date/Time : 2020:03:24 01:51:50-04:00 File Access Date/Time : 2020:05:01 07:09:22-04:00 File Inode Change Date/Time : 2020:04:10 23:50:02-04:00 File Permissions : rw-r--r-- File Type : JPEG File Type Extension : jpg MIME Type : image/jpeg JFIF Version : 1.01 Resolution Unit : inches X Resolution : 72 Y Resolution : 72 Image Width : 1300 Image Height : 650 Encoding Process : Progressive DCT, Huffman coding Bits Per Sample : 8 Color Components : 3 Y Cb Cr Sub Sampling : YCbCr4:2:0 (2 2) Image Size : 1300x650 Megapixels : 0.845 root@kali:~/CTF/riftCTF2020/Stegano/Stegano_0x0001# strings chall1.jpeg | grep rift riftCTF{R1ck_4ND_the_r1ft}
flag: riftCTF{R1ck_4ND_the_r1ft}
一番それはやめてくれ案件がflagであることがあるのはアリアリ
Stegano_0x0003
Stegano 0x0003
200
The universal language
author:- Mr.7i74N
文字コード系問題? 与えられたファイル「chall3.wav」に関して
# file chall3.wav chall3.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, stereo 22050 Hz root@kali:~/CTF/riftCTF2020/Stegano/Stegano_0x0003# mpv chall3.wav [ffmpeg/demuxer] wav: Discarding ID3 tags because more suitable tags were found. (+) Audio --aid=1 (pcm_s16le 2ch 22050Hz) AO: [pulse] 22050Hz stereo 2ch s16 A: 00:01:01 / 00:01:02 (99%) Exiting... (End of file)
音声ファイルのようで、聞いてみると始めの方に違和感を感じたのでaudacityで開く。
# audicity chall3.wav bash: audicity: コマンドが見つかりません # audicaty chall3.wav bash: audicaty: コマンドが見つかりません # audichall3.wav bash: audichall3.wav: コマンドが見つかりません # audacity chall3.wav
audacity開くのに毎回3回くらい間違える。
やはり、始めの方に違和感がある。
拡大してみると
flag: riftCTF{Music_is_Fr33d0m}
ねぇ、本当にどうやって作っているのか誰か教えてください。
Stegano_0x0004
Stegano 0x0004
200
Don't download pirated music guys, it's not respectful towards the artist.
与えられたファイル「chall4.wav」に関して
# file chall4.wav chall4.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, stereo 44100 Hz # mpv chall4.wav [ffmpeg/demuxer] wav: Discarding ID3 tags because more suitable tags were found. (+) Audio --aid=1 (pcm_s16le 2ch 44100Hz) AO: [pulse] 44100Hz stereo 2ch s16 A: 00:01:01 / 00:01:01 (99%) Exiting... (End of file)
何も無さ過ぎて分からん。
audacityで開いても手がかりなく。
どうするもんかと思いつつ。
これだけは止めてくれ、絶対にあるはずがないと手が動いてしまった。
# strings chall4.wav | grep rift riftCTF{I_4m_th3_cr3at0r}
flag: riftCTF{I_4m_th3_cr3at0r}
悲しい(´・ω・`)
riftCTF2020 Forensic writeup
3月が終わっていないのに、5月になってしまったヤバい。
焦りつつ今回は2020/03/20 15:30 JST - 03/21 15:30に行われた「riftCTF2020」のForensics writeupをお届けする。
解けてないのもある。
Forensics 0x0001
Forensics 0x0001
100
EASY
1.identify the file format.
2.read about the file format.
3.see which properties this particular file has.
4.and fix the file to get the flag.
5.brute-forcing won't help but you can do whatever you want.
6.flag format riftCTF{<---flag-here--->}. Good Luck!
author - X3eRo0r
与えられたファイル「flag.zip」に関して
# file flag.zip flag.zip: Zip archive data, at least v2.0 to extract # unzip flag.zip Archive: flag.zip skipping: flag.txt unsupported compression method 99
unzipがサポートしていないアルゴリズムということで、7zipを使う。
# 7za x flag.zip 7-Zip (a) [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21 p7zip Version 16.02 (locale=ja_JP.UTF-8,Utf16=on,HugeFiles=on,64 bits,2 CPUs Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz (806EA),ASM,AES-NI) Scanning the drive for archives: 1 file, 260 bytes (1 KiB) Extracting archive: flag.zip ERRORS: Headers Error -- Path = flag.zip Type = zip ERRORS: Headers Error Physical Size = 260 Enter password (will not be echoed): ERROR: Wrong password : flag.txt Sub items Errors: 1 Archives with Errors: 1 Open Errors: 1 Sub items Errors: 1
何かエラー吐いている気がするけどパスワードが無いとだめダト。
とりあえずjohn。
# zip2john fixed.zip > ziphash # john --wordlist=/usr/share/wordlists/rockyou.txt ziphash # john --show ziphash flag.zip/flag.txt:general:flag.txt:flag.zip:flag.zip
パスワードは「general」と分かったので、7zipをもう一度。
# 7za x flag.zip 7-Zip (a) [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21 p7zip Version 16.02 (locale=ja_JP.UTF-8,Utf16=on,HugeFiles=on,64 bits,2 CPUs Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz (806EA),ASM,AES-NI) Scanning the drive for archives: 1 file, 260 bytes (1 KiB) Extracting archive: flag.zip ERRORS: Headers Error -- Path = flag.zip Type = zip ERRORS: Headers Error Physical Size = 260 Enter password (will not be echoed): Archives with Errors: 1 Open Errors: 1 # cat flag.txt riftCTF{th1s-1S-_JUST--TH3-B3g3nn1ng-BRUH}
開けたのは良いが、エラー吐いているのが気になる。
flag: riftCTF{th1s-1S-_JUST--TH3-B3g3nn1ng-BRUH}
Forensics 0x0002
Forensics 0x0002
300
1.identify the file format.
2.read about the file format.
3.see which properties this particular file has.
4.and fix the file to get the flag.
5.brute-forcing won't help but you can do whatever you want.
6.flag format ritsCTF{<---flag-here--->}. Good Luck.!
author - X3eRo0r
与えられたファイル「flag.zip」に関して
# file flag.zip flag.zip: Zip archive data, at least v2.0 to extract # unzip flag.zip Archive: flag.zip [flag.zip] flag.txt password: skipping: flag.txt incorrect password
またパスワードか。
johnの出番。
# zip2john flag.zip > ziphash flag.zip/flag.txt is not encrypted!
john「このzipは暗号化されてないよ」?????
unzipしようとするとパスワードを聞かれるけど、johnは暗号化されいないという。
つまり、zipは暗号化されていないけどパスワード要求させるフラグみたいなのを立ててる?
どうしようかと思っていた時、こんなのを発見
-FF --fixfix ZIPファイルを修復する(「-F」では修復できなかったファイルも修復できる可能性がある)
【 zip 】コマンド(応用編)――ZIPファイルを作成して元のファイルを削除する:Linux基本コマンドTips(36) - @IT
使ってみよ。
# zip -FF flag.zip --out fixed.zip Fix archive (-FF) - salvage what can Found end record (EOCDR) - says expect single disk archive Scanning for entries... copying: flag.txt (51 bytes) Central Directory found... EOCDR found ( 1 143)... # unzip fixed.zip Archive: fixed.zip inflating: flag.txt # cat flag.txt riftCTF{Y0u-M4st33r3-THE_ZIP_FILE-\x50\x4B\x01\x02}
flag: riftCTF{Y0u-M4st33r3-THE_ZIP_FILE-\x50\x4B\x01\x02}
zip -FF
マジ忘れない。
ここで先ほど気になったパスワードあるようにみせるビットを見てみる。
# cmp flag.zip fixed.zip flag.zip fixed.zip 異なります: バイト 98、行 1
実際確認してみると
ここが暗号化ビット?
ここら辺をみると何か分かりそうな気がする。
盛大にぶっ壊れたパスワード付きzipを解析してみる - yumetodoの旅とプログラミングとかの記録
ZIPの仕様を日本語でまとめる · GitHub
Forensics 0x0003(No solved)
Forensics 0x0003
300
1.identify the file format.
2.read about the file format.
3.see which properties this particular file has.
4.and fix the file to get the flag.
5.brute-forcing won't help but you can do whatever you want.
6.flag format ritsCTF{<---flag-here--->}. Good Luck!
author - X3eRo0
与えられたファイル「flag.zip」について
# file flag.zip flag.zip: Zip archive data, at least v2.0 to extract root@kali:~/CTF/riftCTF2020/Forensics/Forensics_0x0003# unzip flag.zip Archive: flag.zip [flag.zip] readme.txt password: skipping: readme.txt incorrect password skipping: flag.txt incorrect password
この後johnを試してみたが解ける気配なし。
zipと言えば既知平文攻撃もあるが、「readme.txt」の中身は分からない。
唯一の手がかりは
# strings flag.zip | tail readme.txt )CqS8W spP_BRT6 flag.txt a`nNyi _BRT6 readme.txt spP_BRT6 flag.txt LOL YOU CANT READ THE FLAG LOLLOLOLOLOLOLOLOLOLOLOLOLOLOLO
分からん。
Forensics 0x0004
Forensics 0x0004
100
EASY
1.this is one of those challenges where you can't solve it until and unless you recognize the stuff.
2.flag format ritsCTF{<---flag-here--->}.
3.Good Luck.
author-- X3eRo0
与えられたファイル「razorgirl.mp3」について
# file razorgirl.mp3 razorgirl.mp3: Audio file with ID3 version 2.3.0, contains:MPEG ADTS, layer III, v1, 128 kbps, 48 kHz, JntStereo # mpv razorgirl.mp3 (+) Audio --aid=1 (mp3 2ch 48000Hz) AO: [pulse] 48000Hz stereo 2ch float A: 00:05:01 / 00:05:01 (99%) Exiting... (End of file)
とりあえず聞いてみたところよく分からん音楽が聞こえている。
と思いきや急に3分10秒あたりからSSTVぽいのが流れてくる。
急すぎて笑ってしまった。
flag: ritftCTF{-y0ur-sk1llz-4r#-31337}
flagがめちゃくちゃ。
Time Problems - Securinets CTF Quals 2020 Forensics writeup
最近急に教育コンテンツが充実したことで、無限の目移りを繰り返す日々を繰り返す。
引き続き、2020/03/22 2:00 - 03/32 2:00 JSTに行われた 「Securinets CTF Quals 2020」の「Time Problems」をお届け。
前回↓
Time matters - Securinets CTF Quals 2020 Forensics writeup - 4ensiX
Time Problems
More magic on this one too :)
なあ、このCTFもうちょいヒントあっても良くないか。
といったところで与えられたファイル「for2.zip」に関して。
# file for2.zip for2.zip: Zip archive data, at least v2.0 to extract # unzip for2.zip Archive: for2.zip inflating: for2.raw # file for2.raw for2.raw: ELF 64-bit LSB core file, x86-64, version 1 (SYSV)
メモリダンプぽいのでvolatilityを利用。
# volatility -f for2.raw imageinfo Volatility Foundation Volatility Framework 2.6 INFO : volatility.debug : Determining profile based on KDBG search... Suggested Profile(s) : Win7SP1x86_23418, Win7SP0x86, Win7SP1x86_24000, Win7SP1x86 AS Layer1 : IA32PagedMemoryPae (Kernel AS) AS Layer2 : VirtualBoxCoreDumpElf64 (Unnamed AS) AS Layer3 : FileAddressSpace (/root/CTF/SecurinetsCTF2020/For/Time_Problems/for2.raw) PAE type : PAE DTB : 0x185000L KDBG : 0x8273fb78L Number of Processors : 1 Image Type (Service Pack) : 1 KPCR for CPU 0 : 0x80b96000L KUSER_SHARED_DATA : 0xffdf0000L Image date and time : 2020-03-20 11:58:05 UTC+0000 Image local date and time : 2020-03-20 12:58:05 +0100
profileは、Win7SP1x86で問題無いと判断。
# volatility --profile=Win7SP1x86 -f for2.raw pstree Volatility Foundation Volatility Framework 2.6 Name Pid PPid Thds Hnds Time -------------------------------------------------- ------ ------ ------ ------ ---- 0x83a1ab10:wininit.exe 388 344 3 76 2020-03-20 11:55:31 UTC+0000 . 0x853f5638:services.exe 480 388 9 196 2020-03-20 11:55:31 UTC+0000 .. 0x83bf3a40:WmiApSrv.exe 3308 480 7 116 2020-03-20 11:57:11 UTC+0000 .. 0x84c43d20:spoolsv.exe 1304 480 17 301 2020-03-20 11:55:33 UTC+0000 .. 0x8557f030:VBoxService.ex 664 480 14 127 2020-03-20 11:55:32 UTC+0000 .. 0x855a2c68:svchost.exe 772 480 21 454 2020-03-20 11:55:32 UTC+0000 ... 0x856062e0:audiodg.exe 1028 772 5 115 2020-03-20 11:55:33 UTC+0000 .. 0x85634a48:svchost.exe 1184 480 19 385 2020-03-20 11:55:33 UTC+0000 .. 0x855f7030:svchost.exe 932 480 16 302 2020-03-20 11:55:33 UTC+0000 .. 0x8560d778:svchost.exe 1064 480 5 115 2020-03-20 11:55:33 UTC+0000 .. 0x847c2b70:taskhost.exe 1456 480 10 186 2020-03-20 11:55:34 UTC+0000 .. 0x849b9498:SearchIndexer. 856 480 14 591 2020-03-20 11:55:41 UTC+0000 .. 0x83af9d20:mscorsvw.exe 3680 480 6 78 2020-03-20 11:57:42 UTC+0000 .. 0x83bf7d20:sppsvc.exe 3808 480 6 151 2020-03-20 11:57:43 UTC+0000 .. 0x84d58b00:svchost.exe 1352 480 21 314 2020-03-20 11:55:33 UTC+0000 .. 0x855ff030:svchost.exe 976 480 39 947 2020-03-20 11:55:33 UTC+0000 ... 0x8488c4c8:taskeng.exe 1776 976 6 83 2020-03-20 11:55:34 UTC+0000 .. 0x8481e030:svchost.exe 1620 480 15 229 2020-03-20 11:55:34 UTC+0000 .. 0x8555f8b8:svchost.exe 600 480 11 357 2020-03-20 11:55:32 UTC+0000 ... 0x84874100:WmiPrvSE.exe 3160 600 15 323 2020-03-20 11:57:08 UTC+0000 ... 0x83b50030:WmiPrvSE.exe 2724 600 9 148 2020-03-20 11:56:59 UTC+0000 .. 0x8558e250:svchost.exe 720 480 7 259 2020-03-20 11:55:32 UTC+0000 .. 0x855d73e8:svchost.exe 876 480 21 443 2020-03-20 11:55:32 UTC+0000 ... 0x847d28c8:dwm.exe 1528 876 4 75 2020-03-20 11:55:34 UTC+0000 . 0x854fa030:lsass.exe 488 388 7 501 2020-03-20 11:55:31 UTC+0000 . 0x85501550:lsm.exe 496 388 10 151 2020-03-20 11:55:31 UTC+0000 0x84abc030:csrss.exe 352 344 8 397 2020-03-20 11:55:31 UTC+0000 0x83a1a308:csrss.exe 396 380 8 307 2020-03-20 11:55:31 UTC+0000 0x84a37d20:winlogon.exe 436 380 4 113 2020-03-20 11:55:31 UTC+0000 0x847e09f8:explorer.exe 1568 1520 22 670 2020-03-20 11:55:34 UTC+0000 . 0x8493bd20:chrome.exe 2320 1568 34 894 2020-03-20 11:56:56 UTC+0000 .. 0x83b6dd20:chrome.exe 2716 2320 11 200 2020-03-20 11:56:59 UTC+0000 .. 0x8bdfe960:chrome.exe 3364 2320 15 296 2020-03-20 11:57:13 UTC+0000 .. 0x84853488:chrome.exe 2496 2320 17 324 2020-03-20 11:56:57 UTC+0000 .. 0x85424d20:chrome.exe 3344 2320 12 176 2020-03-20 11:57:12 UTC+0000 .. 0x8553d030:chrome.exe 3300 2320 16 245 2020-03-20 11:57:11 UTC+0000 .. 0x849865c8:chrome.exe 2352 2320 9 76 2020-03-20 11:56:56 UTC+0000 .. 0x84852590:chrome.exe 2384 2320 3 55 2020-03-20 11:56:57 UTC+0000 .. 0x8554fc70:chrome.exe 3196 2320 14 309 2020-03-20 11:57:09 UTC+0000 . 0x8490b030:VBoxTray.exe 2036 1568 14 138 2020-03-20 11:55:35 UTC+0000 0x839af9d0:System 4 0 82 507 2020-03-20 11:55:28 UTC+0000 . 0x848f6438:smss.exe 276 4 2 29 2020-03-20 11:55:28 UTC+0000
こりゃまた微妙なの来たな。どうすればいいのだろうか。とりあえずmimikatzしたが......
# volatility --profile=Win7SP1x86 -f for2.raw mimikatz Volatility Foundation Volatility Framework 2.6 Module User Domain Password -------- ---------------- ---------------- ---------------------------------------- wdigest home home-PC wdigest HOME-PC$ WORKGROUP
結果は御覧のあり様。
「Time Matters」と同じようにchromeの履歴から探っていくことに。
# volatility --profile=Win7SP1x86 -f for2.raw filescan | grep "History" Volatility Foundation Volatility Framework 2.6 0x000000001e3d5f80 5 1 RW-rw- \Device\HarddiskVolume2\Users\home\AppData\Local\Google\Chrome\User Data\Default\History 0x000000001ec096a8 17 1 RW-rw- \Device\HarddiskVolume2\Users\home\AppData\Local\Google\Chrome\User Data\Default\History-journal # volatility --profile=Win7SP1x86 -f for2.raw dumpfiles -Q 0x000000001e3d5f80 -D ./ Volatility Foundation Volatility Framework 2.6 DataSectionObject 0x1e3d5f80 None \Device\HarddiskVolume2\Users\home\AppData\Local\Google\Chrome\User Data\Default\History SharedCacheMap 0x1e3d5f80 None \Device\HarddiskVolume2\Users\home\AppData\Local\Google\Chrome\User Data\Default\History # mv file.None.0x84a3f558.dat History root@kali:~/CTF/SecurinetsCTF2020/For/Time_Problems# strings History | less
(snip) neymar santosneymar santos! corona neymarcorona neymar corona italycorona italy# corona tunisiecorona tunisie corona mapcorona map+ neymar best skillsneymar best skills' neymar instagramneymar instagram neymarneymar https://www.youtube.com/watch?v=wQoVjMMYWJ4 https://twitter.com/neymarjr/status/1217902956475047937 https://www.youtube.com/watch?v=BPi3ePVFRik https://www.youtube.com/results?search_query=neymar+santos http://52.205.164.112/ (snip) https://www.google.com/search?q=neymar&oq=neymar&aqs=chrome..69i57j46j0l6.1797j0j7&sourceid=chrome&ie=UTF-8 https://www.youtube.com/results?search_query=neymar+santosneymar santos - YouTube https://www.youtube.com/watch?v=BPi3ePVFRikNeymar JR Ultimate Skills 2013 - Part 01 Santos | HD - YouTube http://52.205.164.112/
何か「http[:]//52.205.164.112/」という怪しいサイトへ接続してる。てか、neymar大好きですね。
じゃあ見てみるか。
# ping 52.205.164.112 PING 52.205.164.112 (52.205.164.112) 56(84) bytes of data. ^C --- 52.205.164.112 ping statistics --- 23 packets transmitted, 0 received, 100% packet loss, time 22857ms
残念。希望を持ってwebアーカイブで探してみよう。
色々見ているとここが優秀と聞きまして↓
http://timetravel.mementoweb.org/list/20090108113335/http://52.205.164.112
ちゃんと引っかかってくれたので、この業界では信頼のアツいwaybackmachineの方のリンクへ行くと。
左下にflagぽいものが、
Securinets{█████_1s_my_f4vorit3_Pl4yer}
そんなの知るかぁと思ったが、検索履歴にneymar多めだったな。とうことで。
flag: Securinets{neymar_1s_my_f4vorit3_Pl4yer}
Unicode的には5文字だったけど、実際は6文字だったようで。
Time Matters - Securinets CTF Quals 2020 Forensics writeup
世間は4月の終わりを迎えているが、writeupの3月の終わりが中々迎えられない人です。
今回は、2020/03/22 2:00 - 03/32 2:00 JSTに行われた 「Securinets CTF Quals 2020」の「Time Matters」をお届け。
Time Matters
Just do some magic on this file
では与えられたファイル「for1.zip」に関してコチラ。
# file for1.zip for1.zip: Zip archive data, at least v2.0 to extract # unzip for1.zip Archive: for1.zip inflating: for1.raw # file for1.raw for1.raw: ELF 64-bit LSB core file, x86-64, version 1 (SYSV)
メモリダンプぽいので、volatilityへ。
# volatility -f for1.raw imageinfo Volatility Foundation Volatility Framework 2.6 INFO : volatility.debug : Determining profile based on KDBG search... Suggested Profile(s) : Win7SP1x86_23418, Win7SP0x86, Win7SP1x86_24000, Win7SP1x86 AS Layer1 : IA32PagedMemoryPae (Kernel AS) AS Layer2 : VirtualBoxCoreDumpElf64 (Unnamed AS) AS Layer3 : FileAddressSpace (/root/CTF/SecurinetsCTF2020/For/Time_matters/for1.raw) PAE type : PAE DTB : 0x185000L KDBG : 0x82785b78L Number of Processors : 1 Image Type (Service Pack) : 1 KPCR for CPU 0 : 0x83583000L KUSER_SHARED_DATA : 0xffdf0000L Image date and time : 2020-03-20 12:39:50 UTC+0000 Image local date and time : 2020-03-20 13:39:50 +0100
profileはWin7SP1x86でいく。
# volatility --profile=Win7SP1x86 -f for1.raw pstree Volatility Foundation Volatility Framework 2.6 Name Pid PPid Thds Hnds Time -------------------------------------------------- ------ ------ ------ ------ ---- 0x84929030:wininit.exe 392 348 3 76 2020-03-20 12:38:07 UTC+0000 . 0x850f8620:lsm.exe 500 392 10 148 2020-03-20 12:38:07 UTC+0000 . 0x850ef458:services.exe 484 392 8 195 2020-03-20 12:38:07 UTC+0000 .. 0x851ae4e8:svchost.exe 896 484 31 552 2020-03-20 12:38:08 UTC+0000 ... 0x84986b30:dwm.exe 476 896 5 77 2020-03-20 12:38:25 UTC+0000 .. 0x85211af8:svchost.exe 1260 484 18 384 2020-03-20 12:38:09 UTC+0000 .. 0x851ce030:svchost.exe 984 484 38 827 2020-03-20 12:38:08 UTC+0000 ... 0x8540f730:taskeng.exe 384 984 8 93 2020-03-20 12:38:25 UTC+0000 .... 0x849296d8:csrss.exe 400 384 8 316 2020-03-20 12:38:07 UTC+0000 .... 0x84b2dd20:winlogon.exe 440 384 5 118 2020-03-20 12:38:07 UTC+0000 .... 0x8546e7b8:GoogleUpdate.e 1240 384 6 114 2020-03-20 12:38:26 UTC+0000 .. 0x85155030:VBoxService.ex 668 484 13 125 2020-03-20 12:38:08 UTC+0000 .. 0x854e7848:svchost.exe 2336 484 11 355 2020-03-20 12:38:34 UTC+0000 .. 0x842f41a8:taskhost.exe 296 484 12 228 2020-03-20 12:38:25 UTC+0000 .. 0x851c5030:svchost.exe 940 484 33 505 2020-03-20 12:38:08 UTC+0000 .. 0x8bee6030:svchost.exe 1072 484 5 118 2020-03-20 12:38:08 UTC+0000 .. 0x85183578:svchost.exe 776 484 24 520 2020-03-20 12:38:08 UTC+0000 ... 0x851d3310:audiodg.exe 1036 776 5 125 2020-03-20 12:38:08 UTC+0000 .. 0x8547ad20:wmpnetwk.exe 2056 484 16 439 2020-03-20 12:38:33 UTC+0000 .. 0x84804c28:WmiApSrv.exe 3468 484 7 116 2020-03-20 12:38:47 UTC+0000 .. 0x8523c790:spoolsv.exe 1360 484 17 298 2020-03-20 12:38:09 UTC+0000 .. 0x85165b40:svchost.exe 724 484 7 285 2020-03-20 12:38:08 UTC+0000 .. 0x852e3688:svchost.exe 1496 484 28 293 2020-03-20 12:38:09 UTC+0000 .. 0x85148030:svchost.exe 608 484 13 365 2020-03-20 12:38:07 UTC+0000 ... 0x854beb98:WmiPrvSE.exe 3040 608 7 129 2020-03-20 12:38:40 UTC+0000 ... 0x85575810:WmiPrvSE.exe 2524 608 15 317 2020-03-20 12:38:36 UTC+0000 .. 0x85255d20:svchost.exe 1396 484 19 306 2020-03-20 12:38:09 UTC+0000 .. 0x85421510:SearchIndexer. 1236 484 13 612 2020-03-20 12:38:33 UTC+0000 ... 0x847fba38:SearchFilterHo 2176 1236 6 84 2020-03-20 12:38:34 UTC+0000 ... 0x854acc28:SearchProtocol 2136 1236 8 262 2020-03-20 12:38:34 UTC+0000 . 0x85100698:lsass.exe 492 392 9 738 2020-03-20 12:38:07 UTC+0000 0x848bc540:csrss.exe 356 348 8 467 2020-03-20 12:38:07 UTC+0000 0x839af9d0:System 4 0 85 529 2020-03-20 12:38:06 UTC+0000 . 0x8485c880:smss.exe 280 4 2 29 2020-03-20 12:38:06 UTC+0000 0x8505f030:explorer.exe 328 404 38 883 2020-03-20 12:38:25 UTC+0000 . 0x85456760:VBoxTray.exe 1888 328 13 138 2020-03-20 12:38:26 UTC+0000 . 0x854dad20:chrome.exe 2288 328 29 666 2020-03-20 12:38:34 UTC+0000 .. 0x842fdbb0:chrome.exe 2888 2288 10 170 2020-03-20 12:38:39 UTC+0000 .. 0x842fed20:chrome.exe 2692 2288 14 301 2020-03-20 12:38:37 UTC+0000 .. 0x85597030:chrome.exe 2588 2288 2 55 2020-03-20 12:38:36 UTC+0000 .. 0x854e92a0:chrome.exe 2356 2288 8 64 2020-03-20 12:38:34 UTC+0000 .. 0x8431ed20:chrome.exe 3260 2288 13 224 2020-03-20 12:38:43 UTC+0000 .. 0x847f8d20:software_repor 3344 2288 11 197 2020-03-20 12:38:45 UTC+0000 ... 0x856a7328:software_repor 3356 3344 7 82 2020-03-20 12:38:46 UTC+0000 ... 0x84816410:software_repor 3500 3344 3 106 2020-03-20 12:38:48 UTC+0000 ... 0x84884c28:software_repor 3792 3344 2 96 2020-03-20 12:39:00 UTC+0000
とりあえず、pstree見てみたけど、何に注目するか分からん。何となくchromeを見るべきなのだろうか。
chromeの履歴でも見てみるか。
# volatility --profile=Win7SP1x86 -f for1.raw filescan | grep History Volatility Foundation Volatility Framework 2.6 0x000000001e0bfe88 8 0 R--rw- \Device\HarddiskVolume2\Users\studio\AppData\Local\Google\Chrome\User Data\Default\History-journal 0x000000001e0c0590 8 1 RW-rw- \Device\HarddiskVolume2\Users\studio\AppData\Local\Google\Chrome\User Data\Default\History 0x000000001e2278e0 9 1 RW-rw- \Device\HarddiskVolume2\Users\studio\AppData\Local\Google\Chrome\User Data\Default\History-journal # volatility --profile=Win7SP1x86 -f for1.raw dumpfiles -Q 0x000000001e0c0590 -D ./ Volatility Foundation Volatility Framework 2.6 DataSectionObject 0x1e0c0590 None \Device\HarddiskVolume2\Users\studio\AppData\Local\Google\Chrome\User Data\Default\History SharedCacheMap 0x1e0c0590 None \Device\HarddiskVolume2\Users\studio\AppData\Local\Google\Chrome\User Data\Default\History # mv file.None.0x8515bde0.dat History.db # strings History.db | less
SQLite format 3 A/early_expiration_threshold13221664482196741 last_compatible_version16 version42 mmap_status-1 early_expiration_threshold last_compatible_version version # mmap_status https://www.google.com/search?q=google&oq=google&aqs=chrome..69i57j0l7.931j0j7&sourceid=chrome&ie=UTF-8google - Google Search urls googlegoogle
ヒントにも成らん。うむ、分からんけどmimikatzしてみる。
# volatility --profile=Win7SP1x86 -f for1.raw mimikatz Volatility Foundation Volatility Framework 2.6 Module User Domain Password -------- ---------------- ---------------- ---------------------------------------- wdigest studio studio-PC Messi2020 wdigest STUDIO-PC$ WORKGROUP
何か出た。けれど、何の手がかりなのだろうか。
その後色々volatilityのコマンドを試してもよく分からないので、いざUserのfilescan沼へ向かう。ひたすらグダグダとユーザのファイルを漁っていく。
この作業は果たして報われるのかと思いながらやっていたところ、Desktopフォルダにて面白いものを発見。
# volatility --profile=Win7SP1x86 -f for1.raw filescan | grep "studio" | grep "Desktop" Volatility Foundation Volatility Framework 2.6 0x000000001e200038 2 1 R--rwd \Device\HarddiskVolume2\Users\studio\Desktop 0x000000001e246af0 2 1 R--rwd \Device\HarddiskVolume2\Users\studio\Desktop 0x000000001e24a0e8 2 1 R--rwd \Device\HarddiskVolume2\Users\studio\Desktop\steghide 0x000000001e24bcd0 2 1 R--rwd \Device\HarddiskVolume2\Users\studio\Desktop\steghide 0x000000001e45e730 8 0 R--rwd \Device\HarddiskVolume2\Users\studio\Desktop\DS0394.jpg 0x000000001ed2fa30 8 0 R--rwd \Device\HarddiskVolume2\Users\studio\Desktop\desktop.ini 0x000000001ee76f80 8 0 R--rwd \Device\HarddiskVolume2\Users\studio\AppData\Roaming\Microsoft\Windows\SendTo\Desktop.ini
明らかに、steghideと画像ファイルが同じフォルダにあるって怪しい。
# volatility --profile=Win7SP1x86 -f for1.raw dumpfiles -Q 0x000000001e45e730 -D ./ Volatility Foundation Volatility Framework 2.6 DataSectionObject 0x1e45e730 None \Device\HarddiskVolume2\Users\studio\Desktop\DS0394.jpg # mv file.None.0x85f45558.dat DS0394.jpg # file DS0394.jpg DS0394.jpg: JPEG image data, JFIF standard 1.01, resolution (DPI), density 300x300, segment length 16, baseline, precision 8, 1200x675, components 3
一応確認すると、
これはメッシである。
CTFやってて、「これはメッシである。」なんて言う日が来るとは思わなかった。steghideを利用する。
# steghide --extract -sf DS0394.jpg Enter passphrase: steghide: could not extract any data with that passphrase!
パスワードが必要だってばよ。パスワードといえば、さっき「Messi2020」というのを見た気がしますね。実はそれを入力したところ違ったのです。
てか、Messiのjpegに「29/08/2019」って態々書いてあるの不思議でわ。Messi2019?
# steghide --extract -sf DS0394.jpg Enter passphrase: wrote extracted data to "image.png". # file image.png image.png: PNG image data, 1200 x 675, 8-bit grayscale, non-interlaced
flag: Securinets {c7e2723752111ed983249627a3d752d6}
忍耐と勘の問題だった。