1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SECCON2018 History

Posted at

問題

J.zip_4c7050d70c9077b8c94ce0d76effcb8676bed3ba
というファイルが配られているので、そこからflagを見つけ出す。

解法

fileコマンドで先ほどのファイルを見ると普通にzipファイルであることがわかる

J.zip_4c7050d70c9077b8c94ce0d76effcb8676bed3ba: Zip archive data, at least v2.0 to extract, compression method=deflate

unzipコマンドで解凍する。するとJというファイルが出てくる

Archive:  J.zip_4c7050d70c9077b8c94ce0d76effcb8676bed3ba
inflating: J 

このファイルをfileコマンドでみると、dataとしか出ず詳しいことが分からない。

file J
J: data

stringsコマンドで可読部分を取り出してみるも参考となりそうな部分はない。
今度はhexdumpで直接バイナリ部分16進数とASCIIで確認する。

 hexdump -C J | head
00000000  60 00 00 00 02 00 00 00  55 ed 00 00 00 00 23 00  |`.......U.....#.|
00000010  61 08 00 00 00 00 01 00  d0 73 3f 01 00 00 00 00  |a........s?.....|
00000020  a4 df f6 d3 62 49 d1 01  00 01 00 00 00 00 00 00  |....bI..........|
00000030  00 00 00 00 20 00 00 00  22 00 3c 00 6e 00 67 00  |.... ...".<.n.g.|
00000040  65 00 6e 00 5f 00 73 00  65 00 72 00 76 00 69 00  |e.n._.s.e.r.v.i.|
00000050  63 00 65 00 2e 00 6c 00  6f 00 63 00 6b 00 00 00  |c.e...l.o.c.k...|
00000060  60 00 00 00 02 00 00 00  a7 56 00 00 00 00 01 00  |`........V......|
00000070  61 08 00 00 00 00 01 00  30 74 3f 01 00 00 00 00  |a.......0t?.....|
00000080  a4 df f6 d3 62 49 d1 01  02 00 00 00 00 00 00 00  |....bI..........|
00000090  00 00 00 00 20 00 00 00  20 00 3c 00 6e 00 67 00  |.... ... .<.n.g.|

念の為マジックナンバーを確認してみるも、どのファイルにも合致しなかった。
しかしながらhexdumpでのASCII部分をよくみると.<.n.g.のような表記になっていて.と文字が入り混じっていることから1バイトではなく2バイト文字列であると推察できる。
iconv -f UTF-16LE -t UTF-8 -c J | stringsでmacOSでも行うことができる。
以下に出力の一部を抜粋します。

<tmp.edb
X<Microsoft-Windows-Windows Defender%4WHC.evtx
"<WindowsUpdate.log
n<Microsoft-Windows-WindowsUpdateClient%4Operational.evtx
d<Microsoft-Windows-WindowsBackup%4ActionCenter.evtxX
<OBJECTS.DATA
<OBJECTS.DATA
<INDEX.BTR
<MAPPING2.MAP
<CiST0000.000
<MSDTC.LOG
<SOFTWARE.LOG1
<ntuser.dat.LOG1
<NTUSER.DAT?

WindowsUpdate.logという部分やntuser.dat.LOG1という部分からwindowsでのUSNジャーナルファイルであることが推察できる。

python3 -m venv venv
source venv/bin/activate
pip install usnparser

その後usn.pyで実行catでそのまま実行するとあまりにも長いので最初の5行のみ表示。

usn.py -f J -o output.txt
head -n 5 output.txt

以下のように表示されるとおもいます。

2016-01-07 15:48:18.224937 | ngen_service.lock | ARCHIVE | FILE_CREATE
2016-01-07 15:48:18.224937 | ngen_service.log | ARCHIVE | DATA_EXTEND
2016-01-07 15:48:18.224937 | ngen_service.log | ARCHIVE | DATA_EXTEND CLOSE
2016-01-07 15:48:18.224937 | ngen_service.lock | ARCHIVE | FILE_CREATE FILE_DELETE CLOSE
2016-01-07 15:48:18.224937 | ngenservicelock.dat | ARCHIVE | FILE_CREATE FILE_DELETE CLOSE

注目してほしいのは一番右の部分です。これはUSN REASONと呼ばれこのファイルが作成された理由にあたります。
そこでファイル名変更に関するものはRENAMEという文字列で始まるので、それらを抽出します

cat output.txt | grep RENAME

とすると一番下の方に
スクリーンショット 2025-06-11 11.37.09.png

となっていてこれらのうち.txtの部分の変更をつなぎ合わせるとflagが出現する。
SECCON{F0rensics_usnjrnl2018}となる。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?