Androidとセキュリティ ~ユーザーを脅威から守る~

51
Android とセキュリティ ~ユーザーを脅威から守る~ 灘高等学校一年 セキュリティ&プログラミングキャンプ2010 ネットワークセキュリティ組 Mine (@mine_studio) すまべん関西& Android の会関西支部 共同開催イベント

description

2010/09/25に大阪、堂島ビルヂングで行われた「日本Androidの会 関西支部&スマートフォン勉強会@関西 共同開催勉強会」で行われたセッションの資料です

Transcript of Androidとセキュリティ ~ユーザーを脅威から守る~

Page 1: Androidとセキュリティ ~ユーザーを脅威から守る~

Androidとセキュリティ~ユーザーを脅威から守る~

灘高等学校一年

セキュリティ&プログラミングキャンプ2010ネットワークセキュリティ組

Mine (@mine_studio)

すまべん関西& Androidの会関西支部  共同開催イベント

Page 2: Androidとセキュリティ ~ユーザーを脅威から守る~

自己紹介● 灘校パソコン研究部 副部長● 日本 Android の会 所属● 京都 GTUGメンバー● セプキャン 2010 NW組

旧ロゴ

実は家は名古屋だったりする・・・

関西圏を中心にイベント等に顔を出してます。でも・・・

Page 3: Androidとセキュリティ ~ユーザーを脅威から守る~

やってること● プログラミング

● Android , Google App Engine , LAMP , マイコンプログラミング

● Web製作● サーバー構築

● 仮想化 , LDAP , フェールオーバークラスタリング● 動画制作

Page 4: Androidとセキュリティ ~ユーザーを脅威から守る~

Android , Android言ってるけど・・・・

Android自体は 5月下旬からなのでまだ初心者

じゃあ以前は何やってたの?

Bash , Linux , C , PHP , C++ , Java , ActionScript , JavaScript , WindowsServer , XHTML , CSS , マイコン , 計算機科学 , ハードウェア ...............................etc

Page 5: Androidとセキュリティ ~ユーザーを脅威から守る~

Agenda

● セキュリティを考える● モバイルデバイスのセキュリティ● ユーザー視点での脅威● 開発者がユーザーを守る!

Page 6: Androidとセキュリティ ~ユーザーを脅威から守る~

セキュリティとは

安全

安全を維持する

脅威から守る

Page 7: Androidとセキュリティ ~ユーザーを脅威から守る~

現実世界での脅威● 自然災害 (地震、雷、竜巻、台風 etc...)● 火災● 犯罪 (盗難、器物損壊、殺人 etc...)● 事故 (落下、衝突 etc...)● 陰謀● テロ● 景気

Page 8: Androidとセキュリティ ~ユーザーを脅威から守る~

それらの対応は・・・?

手段や原因、発生時期などの要素がわかった上でそれらに対する対応策を用意する。 つまり、予め防ぐという「予防」を行う。

例:盗難侵入経路が分かっているからこそ、そこに防犯カメラをおいたり、警報をおいたりできる

Page 9: Androidとセキュリティ ~ユーザーを脅威から守る~

情報技術でも同じ

情報技術でも例外なく、予め攻撃者や侵入者の手口を知らない限り、こちらは防御することが出来ない。

例→ネットワークからの侵入 ファイアーウォール→メールによるウイルス拡散 メールスキャン

Page 10: Androidとセキュリティ ~ユーザーを脅威から守る~

だけど実態は・・・・

攻撃手段や侵入手段を知っている人はかなり少ない

知識だけで容易に攻撃・侵入を実行できてしまうため、ブラックな知識として認識されている。

理由は

Page 11: Androidとセキュリティ ~ユーザーを脅威から守る~

これは危ない

Page 12: Androidとセキュリティ ~ユーザーを脅威から守る~

だけどむやみに広められない

一部の人にしっかりとした情報モラルと共に教えなければならない

セキュリティ&プログラミングキャンプ

国家事業としてセキュリティに関する正しい知識を持った、未来を担う技術者を育成する。22 歳未満限定 書類選考

Page 13: Androidとセキュリティ ~ユーザーを脅威から守る~

攻撃、侵入の例● ネットワークからの空きポートへの侵入● パスワードクラック● root奪取 (root kit)● ARPポイゾニング● バックドア● P2Pネットワークへの不正パケット● バッファオーバーフロー .....................etc

Page 14: Androidとセキュリティ ~ユーザーを脅威から守る~

攻撃手段が多すぎる!

普通に一つ一つ防ぐ方法では追いつかない

「ウイルス対策ソフト」として防御をパッケージ化名前とは違いウイルス以外の攻撃・侵入にも対応

セキュリティの知識に乏しくても最低限のセキュリティ維持ができるようになった

Page 15: Androidとセキュリティ ~ユーザーを脅威から守る~

ただし!

Page 16: Androidとセキュリティ ~ユーザーを脅威から守る~

一般的に「ウイルス対策ソフト」と言われるものは誤検知をなくすために、ウイルスを取りこぼしやすい

それは初心者向けである

誤検知とは本来ウイルスではないものをウイルスと判定し、そのまま削除、隔離処理などを行ってしまうこと

Page 17: Androidとセキュリティ ~ユーザーを脅威から守る~

結局、最後には技術を持った人間の力がないとセキュリティは維持できない

人間の力が必要

Page 18: Androidとセキュリティ ~ユーザーを脅威から守る~

モバイルデバイスのセキュリティ

Page 19: Androidとセキュリティ ~ユーザーを脅威から守る~

なぜか、モバイルデバイス、組み込みに関するセキュリティが話題にならない

Page 20: Androidとセキュリティ ~ユーザーを脅威から守る~

これまでのモバイルの世界

インターネット

携帯電話

ゲーム機

音楽プレーヤー

携帯電話事業者

Page 21: Androidとセキュリティ ~ユーザーを脅威から守る~

今、これからのモバイルの世界

インターネット

ガラケー

ゲーム機

携帯電話事業者

スマートフォン

プロバイダ

家庭向け

無線LAN

公共無線LAN音楽プレーヤー

Page 22: Androidとセキュリティ ~ユーザーを脅威から守る~

ネットワークの複雑化

便利さの裏には

接続の多様化

侵入・攻撃ポイントの増加

セキュリティリスクの増大

Page 23: Androidとセキュリティ ~ユーザーを脅威から守る~

特に家庭用無線 LANに注意

携帯電話回線は携帯電話事業者により、無線通信の暗号化や通信品質の保証などが

あるが、家庭用無線 LANは未だ暗号化が施されていない、

容易に暗号解読が可能なWEPの使用が目立つ

Page 24: Androidとセキュリティ ~ユーザーを脅威から守る~

でも、変わったのはこれだけではない

Page 25: Androidとセキュリティ ~ユーザーを脅威から守る~

もう一度Androidや iPhoneが革新的と思われる理由を

考えてみよう

Page 26: Androidとセキュリティ ~ユーザーを脅威から守る~

世界共通のアプリケーションプラットフォーム

Page 27: Androidとセキュリティ ~ユーザーを脅威から守る~

プラットフォーム統一ガラケー

DoJa or Star (DoCoMo)

MIDP (Softbank)

BREW or MIDP (au)

日本だけでもこんなにあるそれに、海外に携帯電話でアプリケーションという物がほとんど無かった

スマートフォン

Android (Google)

iOS (Apple)

ともに世界中で動いている

Page 28: Androidとセキュリティ ~ユーザーを脅威から守る~

マルウェア等も同じ

アプリケーションがいろんな場所で動くようになると同様、マルウェアなどの悪意のあるプログラムもいろんな場所で動く

Androidや iPhoneの普及は攻撃者にフィールドを与えることになる

Page 29: Androidとセキュリティ ~ユーザーを脅威から守る~

では対策はしてるのか?

Page 30: Androidとセキュリティ ~ユーザーを脅威から守る~

開発時のセキュリティの重要度が低く、ウイルス対策などよりも新技術、新サービスの開発にほとんどの力が注がれている。

おかげで、今の状況でウイルスが流行ると対処できない

そうとは言えない

Page 31: Androidとセキュリティ ~ユーザーを脅威から守る~

ユーザー視点での脅威~ Androidに潜む危険~

Page 32: Androidとセキュリティ ~ユーザーを脅威から守る~

セキュリティを考える上で、ユーザーが対処できるだろうという考えはタブー

ユーザーは何も知らないと思え

極論を言えば・・・

ユーザーはセキュリティという言葉すら知らなくてもセキュリティが維持できるシステムを目指す

Page 33: Androidとセキュリティ ~ユーザーを脅威から守る~

見えない脅威

脅威はユーザーから見えない

開発者は Androidの裏を見ろ!

Page 34: Androidとセキュリティ ~ユーザーを脅威から守る~

Androidのアーキテクチャ

Page 35: Androidとセキュリティ ~ユーザーを脅威から守る~

Androidの Linuxカーネルは・・・● hiromu1996 : Androidのカーネルバージョンっていくつ?● mine_studio : 1.6だと 2.6.29だね● hiromu1996 : となるとメモリの不正アクセスできるね● mine_studio : このバージョンだと直されてないのか● hiromu1996 : うん● mine_studio : これが世界中の Android機に乗ってると・・● hiromu1996 : 危険だね

そもそもカーネルレベルで危険です

Page 36: Androidとセキュリティ ~ユーザーを脅威から守る~

OSSであることもリスク

AndroidがOSSであるという点もひとつのリスクを生み出しているとも言える

OSSであるならばそれの脆弱性を修正していくシステムが必要だ

Page 37: Androidとセキュリティ ~ユーザーを脅威から守る~

Androidの許可情報

アプリケーションが取得する情報 (GPSによる位置情報や Gmailアカウント名など )をユーザーが確認し、それをユーザーが許可することで初めてアプリが情報を読める

インストール時にしか聞かれないが、果たしてユーザーはその許可情報を把握してるのだろうか?

Page 38: Androidとセキュリティ ~ユーザーを脅威から守る~

SQLインジェクション攻撃Androidアプリではデータを SQLiteデータベースとして格納することが多い。そして、これを他のアプリケーションからコンテントプロバイダーという形で利用することができる

他のアプリ

コンテント

プロバイダ

アプリケーション

デー

タベー

不正な値 SQL命令生成

インジェクション

データの破壊、漏洩

Page 39: Androidとセキュリティ ~ユーザーを脅威から守る~

Androidはインターネット端末Androidはインターネットと通信できてなんぼ!

だけど、当然通信するからにはセキュリティの問題も浮上

サー

バー

Android

インターネット

実は簡単にデータを見ることが出来る暗号化するのが基本

Page 40: Androidとセキュリティ ~ユーザーを脅威から守る~

普通の対策

ウイルス対策ソフト

セキュリティパッチ

モバイルデバイスではスペック、電力不足のため、ウイルス対策ソフトを常駐させるのは困難

Androidの場合、ベンダーにまかせっきりになり、なかなか迅速なパッチ適応が行われない

Page 41: Androidとセキュリティ ~ユーザーを脅威から守る~

でもガラケーの世界では・・・・

Page 42: Androidとセキュリティ ~ユーザーを脅威から守る~

McAfee入ってます!

ガラケーではすでに数年前からスキャンソフトを搭載しているものがある

Page 43: Androidとセキュリティ ~ユーザーを脅威から守る~

スマートフォンでのセキュリティ

スマートフォンでのセキュリティはかなり遅れている

Page 44: Androidとセキュリティ ~ユーザーを脅威から守る~

開発者がユーザーを守る!

Page 45: Androidとセキュリティ ~ユーザーを脅威から守る~

Androidは何でもできるブラウザ、つまりWeb専用端末

アプリが受け取るデータは誰が作ったかもわからない得体のしれないデータ当然、 XSSや SQLインジェクション攻撃に相当する攻撃手段が行われる可能性がある。

Page 46: Androidとセキュリティ ~ユーザーを脅威から守る~

しかし、限界がある

基本的に開発しているのはアプリケーションAndroidプラットフォーム自体の脆弱性に対する

対応は困難

ベンダーや Googleの情報をリサーチして、対応

Page 47: Androidとセキュリティ ~ユーザーを脅威から守る~

しかし、今後は・・・

当然のごとく、 Androidを搭載した機種が増えるため機種ごとの情報を集めるだけでも至難の業。ソースコードに情報を反映しようものなら、競合しまくって、本来の開発に支障が出る

その対応に特化したビジネスが成立するかもしれない??

Page 48: Androidとセキュリティ ~ユーザーを脅威から守る~

意外と対処法は少ない

Androidに様々な脆弱性があっても、アプリ側での対処というのはなかなか難しい

多くの脅威は低レイヤーに存在しており、高レイヤーのアプリケーションでは手に負えない

Page 49: Androidとセキュリティ ~ユーザーを脅威から守る~

まとめ

Page 50: Androidとセキュリティ ~ユーザーを脅威から守る~

セキュリティというのは、本当に細々としていて、なんというのか「泥臭い」

おそらく、組み込みにも負けないぐらい

セキュリティまとめ

流れ続けるパケットを監視したり、メモリのデータ追跡したり、ログを一個一個検証したり、たまには事故らせてみたり

Page 51: Androidとセキュリティ ~ユーザーを脅威から守る~

ご静聴ありがとうございました