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

Preview:

DESCRIPTION

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

Citation preview

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

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

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

その前に、、、9月某日

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

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

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

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

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

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

目次

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

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

自己紹介

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

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

自己紹介

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

擬似的に攻撃して検証

サイトをつくってみる

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

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

サイトをつくってみる

•HTML5

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

サイトをつくってみる

• Twitter bootstrap

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

サイトをつくってみる

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

サイトをつくってみる

•API

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

サイトをつくってみる

•API

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

サイトをつくってみる

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

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

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

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

構築するとき

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

気をつけること

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

構築するとき

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

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

JavaScript

HTML

ページ

他サイト

攻撃者埋め込み

誘導

訪問

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

構築するとき

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

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

HTML

ページ

侵入

攻撃者データベース

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

構築するとき

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

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

会員サイト

攻撃者側サーバ

URL誘導

リクエスト

会員情報変更など

攻撃者

訪問

DEMO

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

利用するとき

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

気をつけること

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

利用するとき

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

フィッシングサイト

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

利用するとき

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

クリックジャッキング

HTML

投稿クリック

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

やってみたこと

•その1

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

やってみたこと

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

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

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

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

やってみたこと

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

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

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

やってみたこと

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

やってみたこと

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

やってみたこと

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

やってみたこと

•公開してからの反応

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

やってみたこと

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

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

ツクランド

攻撃者側サーバ

URL誘導

リクエスト

つぶやき

攻撃者

訪問

確認画面

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

やってみたこと

•小話

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

やってみたこと

•その2

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

やってみたこと

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

wordpress

TwitterYoutube Twitter

Attacker

SpamDatabase

Script自動投稿

API POST

POST

POST

Rackhub

さくらVPS

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

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

やってみたこと

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

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

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

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

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

構築するとき

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

気をつけること

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

構築するとき

•他のアプリからの攻撃

他のアプリからの攻撃

アプリ攻撃アプリ

アプリ内データ攻撃者

個人情報

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

構築するとき

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

使ってるモジュール

アプリ

広告攻撃者

個人情報

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

利用するとき

•自分の情報は大丈夫?

気をつけること

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

利用するとき

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

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

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

利用するとき

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

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

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

やってみたこと

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

DEMO

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

まとめ

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

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

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

Recommended