IoT端末の脆弱性

こんにちは。
この春休み、自分はSSS(Shacho Sandbag System)のIoT化やミラーボールのIoT化をやってきましたが、ふと脆弱性はないのか不安になりIoT端末の脆弱性について調べてみました。

続きを読む

2014 ADCTF 2日目 alert man

サイトに飛んでみると入力ホームが現れる。
問題はアラート(XSS)を出すという問題。
そこに入力すると自分が入力したものと同じものがbodyのid=1に追加されていく仕様になっている。
いつも通り最初にこれを試す

<script> alert(1) </script>

これを入力すると空白がかえってくる。そこで"script"タブが使えないということが分かった。
次に、

javascript:alert(1);


を試す。でもこれは、文字として認識されてしまってjavascriptが動かなかった。
ここで、タグが使えるかどうかを確認するために

<img src=x >

これを実行したら画像が壊れた。あとは、簡単

<img src=x onerror=alert(1)>

これで1を出力出来た。
同じ要領でXSSを出力させようと思ったら、できない
なんでと思って、ソースを見るそしたら、
t = tweet.replace(/['"]/g, '');
がでてきた。これによると、ダブルコーテーションとシングルコーテーションはなくなるようなので変更

<img src=x onerror=alert(/XSS/.source)>

これでXSSできてflagもゲット出来た。

脆弱性「FREAK」とは

つい先日、SSL/TLSの実装の部分の脆弱性として、「FREAK」というものがでました。
この「FREAK」というのは「Factoring RSA Export Keys」の略で、通信する際のRSA暗号の強度を強いものから弱いものに変更することで、簡単にRSAの暗号を解読し、通信を傍受することができるといったもの。この脆弱性SSLTLS通信プロトコルに関してのものなので、サーバ側とクライアント側の両方に存在しているとのこと。

今回のFREAKの起因は、SSLが出てきた1990年代のときに、NSAが外国でやりとりするセキュアな通信を傍受したいと考えていたため、米国国内では強度の強い暗号、外国では、弱い暗号を使用させるような規制を作りました。もちろん、この規制は2000年に廃止されたのですが、現在でもこのようなコードを使用しているものがあり、それが今回脆弱性として現れたようです。

続きを読む