「SECCON CTF」は、前号でお伝えしたように、セキュリティのコンテストです。
この「SECCON CTF」では、どのような問題が出題され、どのような攻撃を仕掛ければサーバを乗っ取れるのかを、今月から数回に渡り、実際にお見せしていきます。

※最後のページにはこのサーバの最後までの解答PDFと動画を用意してあります。是非参考にしてください!

■ 大澤 文孝(記事協力:SECCON実行委員会、問題作成:山崎圭吾((株)ラック)))

IMGP6917-1

「SECCON CTF」の問題

 「SECCON CTF」では、「サーバのIPアドレス」と「フラッグワード・ページ」が、問題として示されます。
 今月、採り上げるのは、次に示す、「Mercury」というサーバです。

【問題:Mercury】

【問題サーバ】【フラッグワード・ページ】
10.0.2.3http://10.0.2.3/FLAG

 指定されたサーバ(上記では、「10.0.2.3」)に攻撃をかけ、FLAGで指定されたURLに、自分のチームの文字を書き込めれば、「フラッグ・ポイント」として、20ポイント加算されます。

 攻撃の途中に、いくつかのキーワードが見つかることがあります。
 キーワードを、「SECCON CTF」会場に用意されている得点サーバに入力すると、「キーワード・ポイント」として、100ポイント加算されます。

nmapで調査する

 ネットワーク経由で攻撃を仕掛ける場合には、どのTCP/IPポートが空いているかを調べる、「ポート・スキャン」から始めるのが一般的です。

 ここでは、「nmap」(http://nmap.org/)という代表的な「ポートスキャナ・ソフト」を使います。

 「nmap」の結果、「ポート22(SSH)」と「ポート80(http)」が空いていることが分かります。
 「nmap」では、実行されているソフトの種類やバージョンも分かります(図1)。
 「http」は、Cent OS上で動いているApache 2.2.15のようです。

fig01

図1 nmapの結果