Hacktivity 2015

今年も、ブダペスト(ハンガリー)で開催されたハッキング業界の大イベント、Hacktivity 2015に行ってきました。そこでFitbit Flexトラッカーに関する私の研究の最新情報のプレゼンテーションを行いました。観客のなかに、スポーツ用リストバンドをしていた人が何人かいたようですね。

Hacktivityでの私のプレゼンで検知されたフィットネストラッカー

参考までに言っておきますが、来週、Hack.luでも同じテーマでプレゼンを行います。しかし、別の違う角度からの話となるため、プレゼンの70%は違うものになります。

Tamas Szakaly - Shall we play a game?

Tamasはオンラインゲームの最中にハッキングを受ける可能性があるという、興味深い話をしてくれました。確かにMODを組み込んでいるゲームもありますが(主に不正行為のため)、こうしたMODは危険が伴います。なぜならこれらにより、あなたのホスト(不完全なサンドボックス、ファイルシステムのリード/ライトなど)へのアクセスが許可されてしまう可能性があるからです。

Tamasは今年のDEFCONでも似たような話をしたようです。彼のスライドはこちらからご覧いただけます。

Zsombor Kovacs - Semi-automated mapping of iOS binaries

Zsomborの話はとても面白かったです。スライドが提供されるのが待ち遠しいですね。
iOSアプリケーションのリバースエンジニアを行う際のアドバイスもありました。アプリケーションがJailbreak(脱獄)を検知したとして、それにパッチを当ててJailbreak端末で機能させるようにするには、どうすればよいか?
その解決策は、すべてのアプリのJailbreak検知スポットをフックするmobile substrateのエクステンションを作り出すことにありました。

Zsomborは、iOS開発および分析を極めています。彼のHacktivity 2012での話はこちらからどうぞ。

その他の講演

Attila Marosiの話はHacking Teamのマルウェアがテーマとなっており、評判が良かったようですが、残念ながらハンガリー語でした。英語に同時通訳されていましたが、理解するのがより難しくなってしまいました。しかし、Hack.luで再び彼に会えるようで楽しみです。

Gabor Szappanosからは、「アンチウイルス(AV)」テストについての話がありました。ただ今回は、AV製品をテストするという話ではなく、マルウェア作成者のスキルをテストするという話でした! このアイデアはおもしろいですね。脆弱性CVE-2014-1761を用いて、作成者たちのスキルを解説してくれました。スライドが提供されるのが待ち遠しいです。

Omer Coskunからは、電気通信網に感染するReginの影響についての話がありました。帰りの飛行機のため最後まで話を聞けませんでしたが、SS7ネットワークのパケットキャプチャを分析する方法についての話もあったようです。

リンク

Leisureゾーン

その他多くのハッキング関連カンファレンス同様、Hacktivityもハードウェアハッキングやロックピッキングのスペースを設けていました。土曜日には、子供向けのアクティビティもいくつかありました。特に、学齢期の子供たちは、スクラッチでロケットを発射させるゲームで遊んでいました。あるホストに、「The Revenge of the Kid(だったかな?)」という興味深いタイトルを見つけました。他の子どもたちはNXTロボットで遊んでいました。

一方、10代の子たちや大人は、ゲームセンター用ピンボール4機を設置したフォーティネットのブースで楽しんでいました。本当に面白かったです。


ゲームセンター用ピンボールを4機設置したフォーティネットのブース

ウォーゲーム

Hacktivityには2つのウォーゲームが用意されていました。いわゆる初心者向けのものと、上級者向けのものです。まず、初心者向けのウォーゲームをやってみました。たまに本気を出した程度ですが、上位に入ることができました。正直に言うと、課題が少し変だと思いました。また、性的描写への言及もあまり評価できなかったです。また、ハンガリー語の基本的な理解が必要な課題もいくつかありました。上級者向けのゲームはもっと面白そうでしたので、もっと早くそちらに移れば良かったです。

以下、初心者向けウォーゲームのネタバレをいくつか書いておきます。

参加者にはMP3が与えられました。Unixの「file」コマンドが、それをMP3だと宣言します。「strings」コマンドでは何も面白いものは見つかりませんでした。しかし、シンプルな16進数ダンプにより、重要な情報が明らかになりました。

00000010  00 40 00 00 01 00 00 00  ff fe 00 00 ff fe 52 00  |.@............R.|
00000020  4f 00 54 00 31 00 33 00  3a 00 75 00 72 00 68 00  |O.T.1.3.:.u.r.h.|
00000030  65 00 72 00 78 00 6e 00  75 00 72 00 68 00 65 00  |e.r.x.n.u.r.h.e.|
00000040  72 00 78 00 6e 00 75 00  72 00 68 00 65 00 72 00  |r.x.n.u.r.h.e.r.|
00000050  78 00 6e 00 54 50 45 32  00 00 00 17 00 00 01 ff  |x.n.TPE2........|

そこで単純に、「urherxnurherxnurherxn」というテキストにROT13(単換字式暗号)を適用しました。

別のものでは、長いラテン語のテキストが提供されました。

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nunc varius urna sed pede. Suspendisse sit amet lacus. Vivamus consectetuer fringilla ligula. Nunc metus lorem, pretium adipiscing, sollicitudin nec, ultrices quis, nulla. Phasellus nec nulla a eros adipiscing ultrices.

この課題は、このテキストから選び出された「1つの単語」を見つけるというものでした。そこで以下の1行のシェルを使って、テキストにおける単語登場回数を数えました。

$ cat onlyone.txt |  tr [:space:] 'n' | grep -v "^s*$" | sort | uniq -c | sort -bnr

     1 vehicula.
      1 ultrices,
      1 suscipit.
      1 scatterbrained
      1 odio,
      1 fermentum.
      1 blandit.
      1 auctor.

その単語はおそらく「scatterbrained」だと思います。

-- the Crypto Girl