◆ 億ラビットくんのサイトをハッキングしてみた
どうも~、へっぽこハッカーの「ゆうき」です。
先日「億ラビットくん」が、新たなCMSのサイトを作ったみたいで、
いくらかのALISユーザーが寄稿を行っていました。
なので、私もお祝いを兼ねて、天才ハッカーの億ラビットくんに
を行いました。
ハッカーへのお祝いといえば、ハッキングですよ!(誤)
「へっぽこハッカー vs. 天才ハッカー」の熱いハッキングバトルが、今、始まる!!(嘘)
(名前からして、速攻で負けそうですねw)
○ 留意事項
・この記事の内容は、億ラビットくんから公開の許可をもらっています
・良い子は、真似しないように!
◆ 前回のハッキング事件について
実はこれ、一度目ではありません。
私は、以前にも億ラビットくんの別のサイト(駆け出しハッカー部)にハッキングを仕掛けています。
その際は、億ラビットくんが作ったウォレットのシステムの弱点を突いて「-800 AHT(アリスハッカートークン)」を持ち逃げしたのですが(マイナスの仮想通貨という、よくわからない存在ですw)、
出金所のところで「警備中のウサギ」が直に確認をしており、発見された後、ロールバックで闇に葬り去られました。
いや、実に残念です。
マイナスの仮想通貨をwavesのウォレットに送金したらどうなるのか、確認してみたかったですね~。
◆ 再挑戦!
さてさて。此度は「おっくんのサイト」に、いかなる「お宝」が眠っているのでしょうか。
◆ ハッキングについて
ハッキングって割と地味な行為です。
映画にでてくるハッカーとかは、かっこよくキーボードをタイピングしていたりしますが、現実のハッキングは、コーヒーを適度に飲みながら、数十分ほどPCのモニターを凝視しつつ、攻撃手段をできるだ多く考えるだけです。
その後、「ここで、こうされたらまずいだろうなー」と感じる要素を、ただ繰り返すぐらいですねー。
しかし、そのうちの「99%」以上は、制作者やツールの開発者がきっちり防御していたりするので、実行しても動作しないです。
そのため、失敗の連続……なのですが、稀に「おい、これ実行できていいのか」というのが転がっていることもあります。
(※ 実際には無いことが殆どです)
で、そういうのを発見できたら、その機能で何ができるのかをひたすらトライアンドエラー。
あの手この手を使って、発見したセキュリティホールに頑張って入り込みます。
その後、更に運がいいと、セキュリティホールの中でイケナイことができてしまったりするんですよ!
これで、ハッキングは成功になります。
◆ 「ocrybit」で実践!
おっくんのCMSのサイトで早速ハッキングです。サイトを巡回した後、色々試してみます。
○ ハッキング1「<script>の実行」
とりあえず、HTML文やJavaScripが記事上で動作するかどうかを確認。
けれど、案の定、弾かれました。
まぁ、普通に考えてダメですよね。
ALISやnemlogで試したときも、作成したコードごと闇に葬り去られたので、そんなもんです。
(というか、もし実行できてしまったらセキュリティがガバガバなので、通るわけが無いですね)
○ ハッキング2「保存する前のHTML文を書き換え」してから投稿
「Google Chrome」では、デバッグモードでHTMLを差し替えることができるので、Web上のテキストエディタからダウンロードされたHTMLに、本来記入することのできない文を色々と追加して投稿を試します。
しかしながら、そういった宜しくない行為……というか、ありとあらゆる想定外の動作を起こす行為を対策しているというのが制作者というもの。
やはり、規格に合っていないコードは、アップロード時に消されてしまいますね。
だけど、ここで1つ、気になることを発見します。
「あれ? おっくんのサイト、動画(youtube)を挿入することができるのか」
動画というのは、基本的には「<iframe>」か「<script>」あたりの文が無いと起動しません。
(「<iframe>」→ 別のHTMLを埋め込みするコード。「<script>」 → JavaScriptというプログラム文の呼び出しコード)
なので、「<iframe>」か「<script>」の一部のコードに許可が降りている、ということが予想できます。
○ ハッキング3「<iframe>」内部に、規格外のコード(不正な文)を追加して投稿
動画を挿入した際のHTMLのコードは「<iframe>」だったので、「<iframe>」内の文を差し替えて、色々とハック!
そうしたら、「<iframe>」から動画サイト以外の「ocribit」内のHTMLデータも呼び出せるということがわかりました。
運良く、セキュリティホールかもしれないものが見つかりました! これはチャンス!
「<iframe>」あたりを何もしていない、ということは……もしかしたら、外部サイトのHTML文の呼び出しを無効にしていない可能性があります。
この辺から、ヤバイかもしれません。
開発者が予期しない「<iframe>」の勝手な動作を確認したら、冷や汗モノでしょう。
……私は、そのまま外部サイトに置いてある「JavaScript」の実行に移行します。
(´∀`)
○ ハッキング4「不正な<iframe>から、外部のJavaScriptを読み込んで実行」
「ocrybit」は「https」なので、私のレンサバも「https」に合わせてから、作った外部ファイルを読み込み。
(※ <iframe>は、両方とも「https」にしていないと読み込めないため)
外部のHMTL → <iframe>上で表示できた
あー。あれですね。
そもそも、エディターから「不正な<iframe>」が出現するということが想定されていなかったみたいなので、その先のセキュリティは甘党だったようです。
ぐへへ……っ。
私の作った「JavaScript」ちゃんが、「ocrybit」上で実行できちゃった~。
ということは、もちろん「おっくんのサイトが使っているエディタ」の脆弱性を突けば、XSS(クロスサイトスクリプティング)もできるはずですよねー。
よーしっ!
へっぽこハッカーの「ハッキング」で、天才ハッカーの冷や汗を大量に増やしちゃうぞーっ!
……ん? あれっ? 急に不正な <iframe>が動作しなくなった。
おかしいな?
えーと、公開されている記事のHTMLのコードの <iframe>の、<body>内部が何故か強制的に削除されていて……。
( ゜Д ゜)
(; ゜Д ゜)……!?
◆ その後
以上。お遊び記事でしたー。
ハッキングは、程々に~(冷や汗)。
(;´∀`)
◆ 「ゆうき」のツイッター