43
この秋何かつくる人のための セキュリティ事情 Yoshinori Matsumoto 2012年9月16日 (加筆修正版)

この秋何かつくる人のためのセキュリティ事情

Embed Size (px)

DESCRIPTION

第45回情報科学若手の会 9月15日(土)-17日(月・祝)

Citation preview

Page 1: この秋何かつくる人のためのセキュリティ事情

この秋何かつくる人のためのセキュリティ事情

Yoshinori Matsumoto2012年9月16日(加筆修正版)

Page 2: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

その前に、、、9月某日

( ^o^)発表資料つくるぞォw

( ˘⊖˘)。o(そういえば、他の人のってどんな感じのテーマで発表するんだろ?)

|しおり| ┗(☋` )┓ 三

( ◠ ‿◠ )☛ SEAndroid, プログラミングコンテスト、構造化オーバーレイ、大規模負荷分散、変態

▂▅▇█▓▒░(’ω’)░▒▓█▇▅▂ うわあああああああ

Page 3: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

目次

•自己紹介•つくってみる•Webサイトで気をつけること、検証•Androidで気をつけること、検証•まとめ

Page 4: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

自己紹介

•名前:松本 悦宜(よしのり)• Twitter : @ym405nm•会社:神戸デジタル・ラボ 1年目•業務:セキュリティエンジニア-大学卒業 (2010年)-大学院入学 (2010年)-インターンシップ@神戸(2010年)-インターンシップ@シアトル(2011年)-就職 (2012年)

Page 5: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

自己紹介

•セキュリティ診断事例 : ECサイト管理者アカウントがのっとられないか商品在庫・値段が改ざんされないか顧客情報が漏洩しないか攻撃の踏み台にされないか

擬似的に攻撃して検証

Page 6: この秋何かつくる人のためのセキュリティ事情

サイトをつくってみる

いろいろなツール・フレームワークが揃っており、かなり作り易くなりましたね!その一部をご紹介します

Page 7: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

サイトをつくってみる

•HTML5

Page 8: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

サイトをつくってみる

• Twitter bootstrap

Page 9: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

サイトをつくってみる

Page 10: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

サイトをつくってみる

•API

Page 11: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

サイトをつくってみる

•API

Page 12: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

サイトをつくってみる

• http://ペロペロ.jp のネタ

Page 13: この秋何かつくる人のためのセキュリティ事情

Webサイトで気をつけること、検証

Webサイトを構築するときに気をつけたいこと利用するときに気をつけたいこと試してみたことをご紹介します

Page 14: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

構築するとき

•改ざんされて他のサイトに誘導されない?•データベース盗まれない?•ユーザが乗っ取られない?

気をつけること

Page 15: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

構築するとき

クロスサイトスクリプティングによるJavaScript埋め込みにより、他サイトへの誘導

改ざんされて他のサイトに誘導されない?

JavaScript

HTML

ページ

他サイト

攻撃者埋め込み

誘導

訪問

Page 16: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

構築するとき

SQLインジェクションによりデータベースへ侵入され、データの盗難や改ざん

データベース盗まれない?

HTML

ページ

侵入

攻撃者データベース

Page 17: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

構築するとき

CSRFにより第三者のアカウントへのなりすまし

ユーザが乗っ取られない?

会員サイト

攻撃者側サーバ

URL誘導

リクエスト

会員情報変更など

攻撃者

訪問

DEMO

Page 18: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

利用するとき

•フィッシングサイト•クリックジャッキング

気をつけること

Page 19: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

利用するとき

そっくりのサイトをつくって、ユーザの機密情報を聞き出す

フィッシングサイト

Page 20: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

利用するとき

透過ボタンにより、クリックすると悪意のあるプログラムが実行される

クリックジャッキング

HTML

投稿クリック

Page 21: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

•その1

Page 22: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

•せっかくなので、脆弱性を体験してもらえるゲームをつくりました

•ツクランド• http://tkland.ym405nm.info

第2回 SECCON つくば大会ハッカソンの部 最優秀作品賞

Page 23: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

•少し前に流行したコンプガチャのパロディゲーム

•脆弱性を利用してレアキャラをゲットする•課金機能(=Twitterにつぶやき)搭載

Page 24: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

Page 25: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

Page 26: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

Page 27: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

•公開してからの反応

Page 28: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

Page 29: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたことさっきのCSRFの図

ツクランド

攻撃者側サーバ

URL誘導

リクエスト

つぶやき

攻撃者

訪問

確認画面

Page 30: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

•小話

Page 31: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

•その2

Page 32: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

•Webサイトにおいて、どんな攻撃がくるのかを集めてみました(開発中

wordpress

TwitterYoutube Twitter

Attacker

SpamDatabase

Script自動投稿

API POST

POST

POST

Rackhub

さくらVPS

Page 33: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

Page 34: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

Page 35: この秋何かつくる人のためのセキュリティ事情

Androidで気をつけること、検証

スマートフォンの爆発的普及により、特にAndroidOS端末に関してはセキュリティ的な注目も浴びています

開発者にとって気をつけなければならないこと利用者にとって気をつけなければならないことをご紹介し、

試してみたことを紹介します

Page 36: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

構築するとき

•他のアプリからの攻撃•使ってるモジュール

気をつけること

Page 37: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

構築するとき

•他のアプリからの攻撃

他のアプリからの攻撃

アプリ攻撃アプリ

アプリ内データ攻撃者

個人情報

Page 38: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

構築するとき

•広告モジュールなどに問題点がある場合

使ってるモジュール

アプリ

広告攻撃者

個人情報

Page 39: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

利用するとき

•自分の情報は大丈夫?

気をつけること

Page 40: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

利用するとき

•パーミッションという仕組み自分の情報は大丈夫?

インターネットの利用から、電話番号・連絡先へのアクセス等機密情報はパーミッションで守られている

Page 41: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

利用するとき

•パーミッションの問題点自分の情報は大丈夫?

一度許可したら、どのタイミングで使われているのかわからない

Page 42: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

やってみたこと

•パーミッションの設定はアプリにより様々•どのアプリがどのパーミッションを求めているのか調査

DEMO

Page 43: この秋何かつくる人のためのセキュリティ事情

若手の会 2012年9月16日 @ym405nm http://ym405nm.info

まとめ

•セキュリティに関しては、開発者だけでなく利用者も気を付けないといけない

•どうしても”漏れ”は出てくるもの。気をつけましょう

•とはいえ楽しくやりましょう