[CpawCTF] 第十夜: 隠されたフラグ
Q13.[Stego]隠されたフラグ
以下、問題文
Q13.[Stego]隠されたフラグ
100pt
以下の画像には、実はフラグが隠されています。
目を凝らして画像を見てみると、すみっこに何かが…!!!!
フラグの形式はcpaw{***}です。フラグは小文字にしてください。
答案
さて、久しぶりの更新となりましたが、今回から cpawCTF Level 2
への挑戦となります。
問題をチラチラと見る限り、だいぶレベルが上がったな、という印象を受けました。
今回はその第一問目です。
それでは以下、回答を始めます。
まずは問題文に添付されている画像をダウンロードします。
問題文にもある通り、端っこに黒い「何か」が隠されていることが一目見てわかります。
「黒い点」と、それから「黒い棒」の集まりのようですが、 私にはこれが何を意味するのか、わかりませんでした。
仕方ないので、検索します。
これは言い訳なのですが、 「見て、考えて、わからなければ、人に聞くか調べる」という流れが大事だと考えます。
特に初めて出会ったものなどは、 解き方を知らなかったり、 自分の知っている範囲内のこととの繋がりが曖昧だったりして、 なかなか答えまでたどり着けない、という場合も少なくありません。
そういったときに、先人たちが解いたときの軌跡を辿ることで 自分の知見とする、ということも知的な営みの一つであると思います。
2回目、3回目で「またこれか」となるように 自分の中に確かな体験を持っておくことが重要なのです。 (自分に言い聞かせながら)
もちろん、「自分で考えること」もとても重要です! バランスの問題です。バランス。バランス...
さて、話がずれてしまいましたが、ご存知の方々からすると この「. (点)」と「- (棒)」 の集まりといえば、 ズバリ「モールス信号」だ、とのことです。
「.」 が「トン」、「-」 が 「ツー」ですね。
この「トン」と「ツー」の組み合わせで文字を表現し、 遠く離れた相手にメッセージを送るのがモールス信号だったはずです。
文字の表記が少しわかりにくいですが、こちらが参考になるかと思います。
いや、なるほどですね。 日常でモールス信号に出会うことなんてありませんし... あ、でもそういえば映画「崖の上のポニョ」で、出て来たような...
現在では、自然言語の文字列 (ひらがな or アルファベット?) とモールス信号を相互に変換するサイト、 なんて素晴らしいサービスがあるようなので、それを使ってみます。
文字列は問題画像の左上と、右下にある点と棒の集合の両方を合わせたものです。
以下の2点に注意してください。
- 途中区切り (スペース) があること。これで一文字の切れ目を判別します。
- 英語 (アルファベット) に対応させること。(日本語だと、意味不明な文字列になります...)
# 変換前: -.-. .--. .- .-- .... .. -.. -.. . -. ..--.- -- . ... ... .- --. . ---... -.--.- # --- decode --- # # 変換後: CPAWHIDDEN_MESSAGE:)
submit
ということで、Flag
である cpaw{hidden_message:)}
を得ることができました。
先頭の CPAW
は cpaw{}
部分に相当するらしいので、{}
内の文字列に含めないよう、注意が必要でした。
なんとか、 (先人の方々のお力を借りながら...) Level 2
初の問題を解くことができました。
write up
を書いてくださっていた方々、モールス信号の変換サービスを作ってくれた方、ありがとうございます...
余談
問題のタイトルに Stego
とありますが、これは Steganography
の意味のようです。
以下 ステガノグラフィー - wikipedia より引用
ステガノグラフィー(steganography)とは、データ隠蔽技術の一つであり、データを他のデータに埋め込む技術のこと、あるいはその研究を指す。クリプトグラフィー(cryptography)がメッセージの内容を読めなくする手段を提供するのに対して、ステガノグラフィーは存在自体を隠す点が異なる。
暗号技術の 1つで、情報を見える形で送るが読めない形に変換する暗号化とは異なり、 何かに埋め込んだり、何かに隠したりして、情報を伝達しようとする技術のようです。
なんだか、スパイみたいでドキドキしますね。
(このドキドキが最初だけであることを、私は知っています...)