チャレンジ一覧

カテゴリと難易度で絞り込みながら、興味のある問題を探せます。

リセット
Programming Level 2: ★★☆☆☆

プログラミング - PINの総当たり

vault.json は起動時に注入された FLAG から生成されます。0000–9999のPIN SHA-256を照合し一致PINのストリームでXOR復号してフラグを取得してください。

Programming Level 2: ★★☆☆☆

プログラミング - ハッシュ検証と復号

artifact-manifest.json は起動時に注入された FLAG から生成されます。各dataのSHA-256検算後、name SHA-256でXOR復号して結合してフラグを取得してください。

Programming Level 2: ★★☆☆☆

プログラミング - バイナリTLVの解析

capture.bin は起動時に注入された FLAG から生成されます。KBIN TLVのtype 0x42を抽出して0x5A XOR復元してフラグを取得してください。

General Skills Level 2: ★★☆☆☆

プロセスハンター - 隠されたプロセス

バックグラウンドで "secret_service" という名前のプロセスが動作しています。 このプロセスを見つけて以下の情報を取得してください: 1. プロセスID (PID) 2. 実行ユーザー 3. コマンドライ...

Forensics Level 2: ★★☆☆☆

メモリダンプからプロセスを探せ

memory.dump に記録されたプロセス一覧を解析し、不審なプロセス名に含まれるフラグを見つけましょう。 メモリフォレンジックの基本を学びます。 提供ファイル: memory.dump

Cryptography Level 2: ★★☆☆☆

レインボーテーブル攻撃

ソルトなしの高速ハッシュは、事前計算された逆引きDBで簡単に破られる場合があります。与えられたMD5ハッシュを逆引きしてください。 MD5ハッシュ: 5f4dcc3b5aa765d61d8327deb882cf99 ...

General Skills Level 2: ★★☆☆☆

ログ解析 - 侵入者を見つけろ

/app/auth.log には認証ログが記録されています。 不審なアクティビティを検出してください: - 1時間以内に10回以上ログイン失敗しているIPアドレスを特定 - そのIPアドレスからの最初の失敗ログインのタ...

Cryptography Level 2: ★★☆☆☆

ワンタイムパッド鍵再利用攻撃

ワンタイムパッドは鍵を一度だけ使う場合に安全です。同じ鍵を再利用すると、既知平文から別の平文を復元できます。 同じ鍵で暗号化された2つの暗号文: ciphertext1_hex = 1c0a070901 known_p...

Cryptography Level 2: ★★☆☆☆

予測可能な乱数

固定seedの疑似乱数は再現できます。暗号用途で一般用途の乱数を使ってはいけません。 フラグ生成コード: import random random.seed(12345) flag_chars = [chr(rando...

Forensics Level 2: ★★☆☆☆

削除されたファイルを復元せよ

ディスクイメージから削除されたテキストファイルを復元してフラグを見つけましょう。 ファイルカービングツールを使用して、削除されたファイルを復元する方法を学びます。 提供ファイル: disk_image.dd

General Skills Level 2: ★★☆☆☆

圧縮の迷宮 - 多重圧縮ファイル

/app/flag.tar.gz は多重に圧縮されたファイルです。 解凍していくと、次の圧縮ファイルが出てきます: flag.tar.gz → flag.tar → flag.zip.bz2.gz → flag.zip...

Cryptography Level 2: ★★☆☆☆

小さいRSA鍵の破壊

RSAは十分大きな素数を使うことで安全性を保ちます。この問題では小さすぎるnを素因数分解し、秘密指数を求めて暗号文列を復号します。 公開鍵と暗号文: n = 323 e = 5 ciphertexts = [115, ...

Programming Level 2: ★★☆☆☆

正規表現 - 一度だけ出現する黄金の記号

data.txt から KINO-数字4桁-英大文字4文字の記号をすべて抽出し、一度だけ出現する値を challenge.py に入力してください。正解時に起動時注入 FLAG が表示されます。

General Skills Level 2: ★★☆☆☆

正規表現マスター - ログファイル解析

/app/access.log には数千件のアクセスログが記録されています。 この中から、IPアドレスが「192.168.1.」で始まり、かつステータスコードが404のエントリをすべて抽出してください。 条件: - I...

General Skills Level 2: ★★☆☆☆

環境変数マスター - PATH Hijacking

/app/secret_bin ディレクトリに隠されたコマンド "getflag" があります。 しかし、このディレクトリはPATHに含まれていないため、直接実行できません。 2つの方法でこのコマンドを実行してください...

Forensics Level 2: ★★☆☆☆

画像のLSBに隠されたメッセージ

PNGファイルのLSB(最下位ビット)に隠されたメッセージを抽出しましょう。 ステガノグラフィ解析の基本を学びます。 提供ファイル: image.png

Forensics Level 3: ★★★☆☆

Chromeブラウザからセッションクッキーを抽出せよ

Chrome履歴データベースとCookieファイルを解析して、特定サイトのセッション情報を取得しましょう。 ブラウザフォレンジックを学びます。 提供ファイル: Cookies (SQLite), History

Forensics Level 3: ★★★☆☆

DNSトンネリングを検出せよ

DNS クエリの記録 `dns_queries.log` を解析し、DNS トンネリングによるデータ流出を検出してください。単一ドメインへ長いラベルの問い合わせを大量に出しているホストを見つけ、ラベルを seq 順に並べ...

General Skills Level 3: ★★★☆☆

Docker フォレンジック - コンテナ調査

`docker save` 形式のイメージ記録を調査します。`image_config.json` の最終的な `Config.Env` は掃除済みに見えますが、レイヤーは不変です。`image_history.txt`...

General Skills Level 3: ★★★☆☆

Git履歴から削除されたAPIキーを探せ

/app/repo はGitリポジトリです。開発者がAPI_KEYを誤ってコミットし、後続コミットで削除しました。 通常のGit履歴から削除前の config.py を確認し、APIキーに含まれるフラグを見つけてくださ...

Linux Level 3: ★★★☆☆

Linux-Capabilities. SUIDに頼らない権限昇格

このシステムでは特定のバイナリにLinux capabilitiesが付与されています。SUIDビットではなくcapabilitiesを使った権限昇格の手法を探してみましょう。

Linux Level 3: ★★★☆☆

Linux-SUID悪用. findバイナリで権限昇格せよ

このシステムにはSUIDビットが付与された find コマンドのコピーがあります。GTFOBinsで知られる手法を使い、root権限のシェルを取得してください。

Linux Level 3: ★★★☆☆

Linux-procメモリ. プロセスの環境変数を覗き見よ

バックグラウンドで動き続けるデーモンプロセスがあり、その環境変数の1つにフラグが設定されています。/procファイルシステムを使ってプロセスの情報を調べてください。

Linux Level 3: ★★★☆☆

Linux-strace. システムコールを追ってファイルを暴け

標準出力に何も表示しないバイナリが用意されています。straceでシステムコールを追跡し、どのファイルを開いて読み込んでいるのかを突き止めてください。