1
2

防衛省サイバーコンテスト2024 WriteUP

Posted at

はじめに

2024_02_25に開催された防衛省サイバーコンテストのWriteup(一部)です.
今回のCTFはちゃんとCTFの勉強を始めて2回目のCTFでした.
自分のOUTPUTも兼ねて公開したいと思います.

Welcome!

ここで問題用サーバに接続するための.ovpnファイルと,FLAGが書かれたWelcome.txtの配布がありました.

Information of Certificate

image.png
Eady.crtという証明書が配布され,この証明書の発行者のコモンネーム部がFlagとなっているようです.
このようなファイルを扱うのは初めてだったため少し手間取りましたが,ファイルのプロパティを見るだけでいいみたいですね.(*コマンドで見る方法もあるみたいなのでそちらも試してみます.)
image.png

String Obfuscation

image.png

以下のようなpythonファイルが配布されました.

import sys

if len(sys.argv) < 2:
    exit()

KEY = "gobbledygook".replace("b", "").replace("e", "").replace("oo", "").replace("gk", "").replace("y", "en")
FLAG = chr(51)+chr(70)+chr(120)+chr(89)+chr(70)+chr(109)+chr(52)+chr(117)+chr(84)+chr(89)+chr(68)+chr(70)+chr(70)+chr(122)+chr(109)+chr(98)+chr(51)

if sys.argv[1] == KEY:
    print("flag{%s}" % FLAG)

これはただソースコードを読めばわかりそうですね.
replace(A,B)はAをBに置換するものなので,これを前から順番に実行していくと,最終的にKEYはgoldenになります.
そして実行時の引数としてpython3 string_obfuscation.py goldenとするとsys.argv[1]とKEYが一致するためFLAGを得られます.

FileExtract

image.png
FileExtract.pcapngというパケットキャプチャファイルが配布されました.
image.png
かなり長いですが,プロトコルの部分を見ると定期的にFTPが流れており何かを送信していることがわかります.なのでFTPプロトコルに絞って追跡してみます.(追跡の仕方は適当なFTPパケットにカーソルを合わせて右クリックし「追跡」→「TCPストリーム」でできます.)
追跡結果が以下の通りです.
image.png
ユーザ名やパスワードが平文で送られておりs3cr3t.zipが送られていることがわかります.
なのでs3cr3t.zipを調べてみます.
プロトコルがFTP-dataのパケットに注目します.
FTP-dataのところにカーソルを合わせて右クリック→「追跡」→「TCPストリーム」を選択します.
すると以下のような文字列が得られます.
image.png
これをRaw形式で保存します.これを開こうとするとパスワード入力画面が出てくるので先ほどの得られたパスワードbr2fWWJjjab3を入力するとFLAGが得られます.

Logistic Map

image.png
これはコード書けばいいだけですね.

x = 0.3

for i in range(1,10000):
    x = 3.99 * x * (1 - x)
    print(f'x_{i}:{x}')

The Original Name of AES

image.png
これは調べる問題ですね.
https://ja.wikipedia.org/wiki/Advanced_Encryption_Standard

CVE Record of Lowest Number

これも調べる問題ですね.
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-1999-0001
このページの「Description」の欄に ip_input.c とあります.

MFA FACOR

image.png
50音順に「所持情報」,「生体情報」,「知識情報」ですね.

Browsers Have Local Storage

image.png
とりあえずディレクトリ探索してみます.gobuster dir -u 10.10.10.30 -w /usr/share/wordlists/dirb/common.txt -o gobuster_log.log
すると/jsというファイルがあります.
localStorage.jsの中に答えがあります.
*ディレクトリ探索しなくてもページのソース見ればわかりましたね.

おわりに

今回のCTFはちゃんとCTFの勉強を始めて2回目のCTFでした.
午前しか参加できませんでしたがまだまだ自分の知識不足を痛感しました.
これからももっと精進していきたいと思います.
参加された皆様,またどこかのCTFでお会いした際にはよろしくお願いいたします.

1
2
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
2