第24回 まっちゃ139勉強会(#matcha139)行ってきた


先日、2012年4月14日(土)に第24回まっちゃ139勉強会が開かれ、参加してましたので、その感想等を含めて簡単にまとめます。

(途中、一旦文章が詰まってしまい、書きかけで放置していましたが、お蔵入りさせるのももったいないので、すごい今更感は満載ですが、書き足して公開しました)

続きは以下より…

まっちゃ139勉強会とは

勉強会簡易まとめ・感想など

目覚ましLT

はじめにまっちゃ勉強会で毎回行われている午前中の目覚ましLTから

一般的なLTと同様に10分程度で、何名かの方がLTを行なって下さいました。

JNSA LT

JNSA(日本ネットワーク・セキュリティ協会)のがどのようなことをしてるかのLT

ISMS監査基準を満たすようにいけないがどこまですればいいのかはやってみないと分からない→実際にやってみようという話でした。

最近では、行われたこととしてはHDDの復元ツールがどこまで復元できて、逆にどこまで壊せば復元できないのかということについて行われたとのことでした。

約3ヶ月に1回のペースで勉強会を開催されており、次回はスマートフォンガイドラインのお話とのことです。

はせがわようすけ さん「gyarumozi.js」

ギャル文字を使ったJavaScriptのお話

ギャル文字を使うとモテるらしい→じゃあギャル文字で動作するJavaSctiptのコードを書こうという流れで、日本語として読める+JavaScriptのコードとして正しく動作する文字列を作られたというお話でした。

コード、発表内でチラッとしか見てませんが、じっくり見てもあまりわかる気が

@moririring さん「ハッカソンとは?」

最近、各地で盛り上がっているハッカソンについてのお話

ハッカソンとはなにかということから、どのようなことがあり、何が必要か、理想のハッカソンとは何かというお話、最後にmoririringさんご自身が主催され、4/28に開催されるVisualStudioハッカソンの宣伝を行なわれました。(ちなみにハッカソンとは、ハック+マラソンの造語で、複数人で集まり、まとまった短い時間(半日等)でモノを考案→実装→発表を行おうというイベントです)

私自身、ハッカソンには(別団体さんのですが)2,3回程度参加させてもらったことがあります。そこでは、非常にアイデアを持っておられる方、アイデアを形にする方など多くの方などで協力して、一気にモノを作り上げるので、非常に面白いものがいくつも作られるのを見れたり、自分自身がそれを形にしたり、自分のアイデアを昇華して、他の方々と協力して形にするなどいろいろな楽しみ方があります。

はなずきんさん「痒いところに手が届く? ATND TIPS

イベント告知・参加管理で有名なサービスであるATNDのTIPS的な紹介のお話

スライドそのものが上がっているので、細かい部分は略しますが、
公式、非公式問わず、twitterやRSSなどの通知サービスやスマートフォンアプリなどの紹介
そして、主催者側から見たこれをしたいけどどうすればいいのかQ&A的なTIPSとその他イベント管理サービスの一覧など
しかしATND TIPSのはずなのにそれ告知’sでできるよ的なのが多かった気が……
そして、IT勉強会カレンダーを管理されている立場から見たイベント告知の際に気をつけてほしい点なども…

  • 開催時間や会場が未定でも日付や都道府県程度は書いておいてほしい→カレンダーに登録できない
  • 時間指定の午前午後の確認→ハッカソンで午前2時開始の場合、本気なのか間違いなのか判断に悩む

当日の発表スライドは、はなずきんさんご自身で公開されていますのでリンク貼り

@eno_enoさん インセプションデッキ

やりたいことを仕事で行うために現在ご自身で、会社として回していくための準備をされているとのことで、そのプロセスに際してアジャイルサムライの著者がドラッガーなどを下に生み出したインセプションデッキという方法をとりこんでみるというお話でした。

インセプションデッキはもともと開発プロジェクト用のものですが、十分他も応用がきくものとのこと

インセプションデッキとはメンバー全員をプロジェクトのパスをはっきりさせ、それに載せることを目的に、10つの質問によってそれをなすというものでした。

なお、10の質問とは以下のようなもの。

  • 我々はなぜここにいるのか:我々はなぜこの製品を開発するのか
  • エレベータピッチ:エレベータ(という短い・突然の状況で)でこのプロダクトの顧客の利益に話せるように
  • パッケージデザイン;プロダクトの広告(キャッチコピーとイメージ画像等の特に見える部分)を決める
  • やらないことリスト:やること、やらないこと、現時点で未定なことの一覧を作りそれぞれをはっきりさせる
  • ご近所さんをさがせ: プロダクトに関わる人を洗い出す
  • 解決案を描く
  • 夜も眠れない問題;予想される大きなリスクを予想する
  • 期限を見極める:いつ頃までにこのシステムを作るか
  • 何を諦めるか:トレードオフスライダー…優先順位を必ずつける
  • 何がどれだけ必要なのか
私自身は、まだアジャイルサムライは名前こそ聞けど読んだことはなかったので、これについても知らなかったため非常に興味深いお話でした。アジャイルサムライ読みたくなってきましたが、他に読もうと思っている積本が…

勉強会

「OSS/Java/.NETプログラマが意識すべきバイナリ解析の素養」というセッションとして、@eagle0wl さんが解析の歴史、現状、具体的なツールや例などを出しつつ、お話しして下さいました。

はじめに導入として、ここでどのようなことを話すかということについて。

「リバースエンジニアリング」「バイナリ解析」と呼ばれる技法は、情報セキュリティ技術を語る上で外すことができないジャンルであり、別に万人はリバースエンジニアリングをマスターする必要がない。しかし、さわりを知っているだけでも、作業効率は格段に上がるため、今回はそういったように使えるようにという形でお話しして下さいました。(正規表現に例えて、マスターには本1冊で収まらないが、ちょっと知っているだけでも作業効率は上がるという)

そして、次にITの発展とそれに付随する解析の歴史の流れについてお話ししてくださいました。

かつて紙テープやパンチカードでデータを扱っていた時代や雑誌にソースコードがついてきた時代からもソフトウェアのコピーはあり(むしろ当時は穴を同じように打つだけででき、(雑誌写経含め)コピーが当然)、コピープロテクトはあったが、フロッピー時代から本格化したとのこと。

ソフトウェアが財産だと認められてきたが、ユーザからすればバックアップという正当な理由も含めコピーは必要→コピーを外すソフトウェア(ファイラー)が生まれる。しかしレンタルショップにブランクメディアとセットで売られるなど明らかにコピーを意図した売られ方もしていた。時が流れそのようなソフトウェアは姿を消したが、新しいメディアが登場するたびにコピーが行われ、メディア固有のコピープロテクトが考案されるという流れは変わらず…

また、マルウェアにも初期はコピーに怒りを感じたソフトウェア会社が堂々と会社名やウィルスと明記して作成を行ったなどという例もあり、最初はhackerもcrackerもプロセスや意識の違い(好奇心重視か結果重視か等)はあれど、個人の趣味というような点が大きかったが、2000年代になり、世界中でブロードバンドが普及し技術も高度複雑化、オンラインバンク等、ネットで金銭を略奪できるようになり、マルウェアの変異、高度複雑化していき、暗号化、難読化、アンチデバック、ゼロデイなど最新技術による自己防衛をおこなうようになる。

そして、最近のスマートフォンに見る難読化の必要性についてお話しして下さいました。

AndroidやWindows Phoneにおいて、逆コンパイルによる知的財産侵害の問題がありうる。特に、Javaや.NETは逆コンパイルが言語設計等の事情により、容易な言語であり、以下のような問題があり得ることになってしまうとのこと。

  • 既存のアプリの再梱包→有料アプリの海賊版
  • コードレベルの盗用+マルウェアの付加
  • 逆コンパイルが容易なため、この難易度が格段に下がる

その対策として、難読化についてお話しして下さいました。

なお、難読化とは、整然とされ読みやすいはずのコードや機械語をあえて読みづらい複雑な構造にすることであり、復号することなくそのまま実行できることが特徴です。なお、そのなかで難読化を楽しむ奇特なプログラマ・団体もいるとのことで、以下を軽く紹介されていました。

そして、難読化は.NET,Javaに限らず、あらゆる環境において100%防げるものではなく、

難読化の技法にもよるが、無駄な処理が増え、さらにツールの利用料から余分な資金が必要となる。

さらに、難読化ツールはソフトウェアのクオリティ向上辞退には全く貢献せず、(即座に)使おうとする人が少ないため、ビジネスとして成功しなく、単価も高くなるとのこと。

そのため、本当に知財保護を考えるなら難読化ツールの完全版を無償で配る、マーケット提出時に難読化を義務付けるなど強制力のある方法を取らないと発展もせず、技術も研究レベルで終わってしまう可能性があるというでした。

逆に解析の前向きな事例として、MOD(ゲーム改造)やHomebrew(自作ゲーム、自作アプリ)、Kinectハックからの公式SDK公開、Crackme(逆アセンブル・デバック練習用プログラム)、コンテスト・CTFなどを国内・海外の状況なども交えつつお話しして下さいました。

私自身は、コンピュータに関わりはじめたのも、ここ10数年からのことなので、最初期などについての当時の状況などは殆ど知らないものも多かったです。今でこそ、普通の某店も昔はそういった物を扱う店だった等…そのため、当時から今のようなコピープロテクトとプロテクト回避の構図はずっと続いてきたことなどは非常に興味深かったです。

LT

@y_tsudaさん

女子大の講師にはどうやったらなれるかという導入から、大学院生向けセキュリティスペシャリスト育成プログラムである「IT keys」の紹介へ

IT keysがどのような目的でどのような人材を育成を目指しどのようなことを行なっているかというについてお話しして下さいました。

なお、女子大講師になる要件としては”修士号を持つ※博士過程在学中可”とのことでw

@umqさん

インストール/デプロイの話ということで、アプリケーションのセットアップを行う際に、複雑な構成の場合や依存関係、更新の際にはどのようなことを考えるべきか、インストーラやその他の仕組みをどうするかというお話をして下さいました。

@satowebさん

ESファイルエクスプローラにhttpアクセスで見れてしまうバグが存在し、その報告をどのように行なっていたかと言うこと

国内であれば、IPAさんが仲介して下さいますが、海外アプリなのでどこに行うべきなのかということでwebに公開するといろいろ反響があり、IPAさんも対応してくださったとのこと。

はせがわようすけさん

Chrome Extensionで制限以上のことをするお話。
Chrome ExtensionはFirefoxの拡張に比べて制約が多く、普通のJS+アルファ程度のことしかできない

なので、黒魔術NPAPI DLL(Netscape plugin API)を使って、それを超えるとのこと。基本的にDLLなのでプラットフォーム依存だが、なんでもあり。

ただ少し使いにくいので、何度でも使える汎用NPAPI DLLとして、NPWIN32を作成されたとのこと(GitHub公開中)

@eno_enoさん

Libreofficeに関してのお話。

主にLibreへの流れや、openoffice.orgとの差や、導入事例についてお話しして下さいました。

幾つかの企業・団体でLibreofficeへの移行・導入が進んでいますが、さらにJA福岡では導入のみならず、マニュアルも配布しているとのことでした。

まとめ

今回の勉強会では、メインセッションも知らなかった時代のことから、今の現状問題まで多くのことを知ることができました。LTも皆様それぞれの分野について話され、非常に興味深く、また面白くお話を聞くことができました。

勉強会後も懇親会で、スタッフの方や他の参加者の方々といろいろとお話することができました。全てを書いているとどんどん伸びていってしまうので、ひとまずそこは略します。また、上記に書いたことに関しても、全部書くときりがないので、結構略しているところも多いです(一部はTogetterのまとめを見れば雰囲気ぐらいはわかるかもしれませんが…)。

ですが、非常にいろいろなお話を聞くことができました。改めまして、スタッフ・登壇者・参加者の皆様、ありがとうございました!

関連リンク


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください