Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

This article is a Private article. Only a writer and users who know the URL can access it.
Please change open range to public in publish setting if you want to share this article with other users.

学内CTFの過去問を解き直そう!

Last updated at Posted at 2024-12-13

はじめに

この記事は SLP-KBIT AdventCalendar2024 14日目の記事です。

今日は香川大学CTFですね!
大会後追記:私の結果は2位(2位ではない) でした。やったね。
昨年度の先輩の過去問を全部解いてから気持ちよく寝ます。
記事の最後に情報系コースの1年生への有益アドバイスあります。

答えとか転載してるので怒られたら記事消します。

以下常態。

Browser 問題

FakeGPS 40

問題文略

解法-FakeGPS 40

DisguisingGPSisEasy.htmlを読むと

const encodedFlag ="ZmxhZ3tZYXkhIEl0J3MgYW4gSW5zdGEtd29ydGh5IHZpZXchfQ==";

の記述がある。
BASE64でデコードすると
flag{Yay! It's an Insta-worthy view!}

UserAgent 40

問題文略

解法-UserAgent 40

かっこつけた解法

$ curl -A "Mozilla/5.0 (Android 4.4; Tablet; rv:70.0) Gecko/70.0 Firefox/70.0" https://uatest.example.com/pushF12key.php | grep flag
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   101    0   101    0     0    499      0 --:--:-- --:--:-- --:--:--   502
flag{YouAreMobileGeek}

FastSpeedStrings 60

問題文略

解法-FastSpeedStrings 60

ブラウザのデベロッパツールにflagっていうファイルがある。
/flagを確認すると
flag{JSIsNotJava}

Domain問題

subdomain 60

問題文略

解法-subdomain 60

模範解答のサイトはリンクが切れていたため、ググったら出てきたサイトを使いました。
flag{Let's look for more flags!}

ドメイン名例jp 80

問題文略

解法-ドメイン名例jp 80

簡単に見つかりません。日本語を使ってるドメイン名かな~と予測を立てる。
ググってみると、日本語ドメイン名は、Unicodeで表された文字をPunycodeというアルゴリズムに基づいて、ASCIIの文字列に変換することによって実現しているらしい。

変換後の文字列に「xn--」という接頭辞が(たぶん)必ずついているらしいので
探してみるとxn--から始まるサブドメインがある。
flag{ThisIsPunyCode!NihongoTukaeru}
punycode。CTFをやらなかったら存在すら知らなかったことでしょう。

写真問題

これがむずい。対策もわかんない。

WebApp問題

WebApp1 30

問題文略

解法-WebApp1 30

GETメソッドを用いてサーバに情報が渡されている。
URLのパラメータを書き換えるとFlagのあるページにたどり着く。
flag{マチュピチュ遺跡のミシシッピ川グランドキャニオンサンディエゴ盛り合わせ}

WebApp問題

WebApp2 50

問題文略

解法-WebApp2 50

Chromeの場合、開発者ツールのアプリケーション>ストレージから使用しているcookieを見ることができる。
roleを書き換えるとFlagのあるページにたどり着く。
flag{今夜、晩ごはん一緒に行く人大募集}

Network問題

dhcp

問題文略

解法-dhcp

わからん。要勉強。

とりあえずDHCP 攻撃でググると
DHCPスプーフィングがトップに出てくる。
パケット番号は5個しかない。
とりあえず5通り試してみるのが大事かも。
flag{DHCPスプーフィング2}

DHCPの通信フロー

  1. DHCP Discover: クライアントがネットワーク上で利用可能なDHCPサーバーを探してブロードキャストする
  2. DHCP Offer: サーバーがクライアントに対してIPアドレスを提供する。
  3. DHCP Request: クライアントが特定のサーバーから提案されたIPアドレスを選択してリクエストする
  4. DHCP ACK: サーバーがクライアントにIPアドレスを確定し、ACK(確認)パケットを送信する

授業でやったような...?
表にはDHCP Offerが2回あるので、DHCPサーバになりすましてる攻撃者かな?と思えたらいいらしい。

おわりに

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?