SlideShare uma empresa Scribd logo
1 de 85
Baixar para ler offline
Androidセキュア開発
について考えてみた
鈴木 研吾
明日、敗訴しないためのセキュアコーディング ver.2
About Me
• 名前
• Twitter: @kengoscal
• Github: ken5scal
• 職歴
• セキュリティ系(2011年11月∼)
• Money Forward所属(2014年11月∼)
私とAndroid
• 2015年: 1月からAndroid開発に参加
• Lollipopから
• 先輩開発者が経験した辛さを伝説としてのみ知る
今回話すことの技術的範囲
アウトライン
• 背景
• どこからセキュア開発を学ぶか?
• 現状の課題
• 設計フェーズ、実装フェーズ、運用フェーズ
• まとめ
訴訟
• 登場人物
• A社 -> 発注側。Eコマースの受注システムを設計∼保守込みで契約
• B社 -> 開発側(受注側)
• 事件
• コードレベルでのセキュリティ対策不足によりクレカ情報が流出
• A社はB社を 債務不履行"と損害賠償で民事訴訟
• ただし契約には"本件ウェブサイトのセキュリティ対策を講じる義
務を負うことは規定されていなかった"
[引用]http://www.softic.or.jp/semi/2014/5_141113/op.pdf
結果
_人人人人人_
> B社敗訴 <
 ̄Y^Y^Y^Y ̄
_人人人人人人人人人人人_
>約2200万円の損害賠償<
 ̄Y^Y^Y^Y^Y^Y^Y^Y^Y ̄
判決
• IPA/経産省が特定の攻撃に対する対策を推奨してい
ため、 被告には重過失が認められるというべき と
された。
[引用]http://www.softic.or.jp/semi/2014/5_141113/op.pdf
結局
• 誰も得しない結果になった
誰得
• A社(発注側)
• ユーザー損失、信用失墜、対応費用などなどの損
誰得
• B社(受注側)
• 損害賠償、信用失墜などなどの損
なにより
• ユーザー! 
• 自分の情報が流出するという損
• 漏洩発覚時の対応をしなければいけない損
• 本当にメンドくさいです(実体験)
• 漏洩有無の確認、漏洩範囲の確認、漏洩内容の確認、
漏洩情報の影響の判断、漏洩情報の変更依頼、漏洩
対策の確認, etc. etc
なので
• セキュリティ気にした開発しよう!
• 皆で幸せになりたい
• 脆弱性はバグなので品質向上に勤めよう!
アウトライン
• 背景
• どこからセキュア開発を学ぶか?
• 現状の課題
• 設計フェーズ、実装フェーズ、運用フェーズ
• まとめ
まずは
• セキュアコーディング!
当然、IPAから探してみる
IPAのAndroid学習ツール
• 学習・点検ツールがあった!
• さすがIPA! そこに痺れる! 憧れる!
[引用: IPA 情報処理推進機構] https://www.ipa.go.jp/security/vuln/ancole/
でも・・・
でも・・・
でも・・・
でも・・・
この世に希望はないのか…
希望(書籍)ありました
• Android Security - 安全なアプリケーションを作
成するために(著: タオソフトウェア株式会社)
希望(書籍) - その1
• 包括的なセキュリティ開発のポイント
• セキュリティ開発の入門として最適
• 殺られた事例を紹介
• 実装も記載
• ちょっと昔(2012年)
希望(書籍) - その2
• 最強
• 更にセキュアにしたい人向け
• ケースに応じたガイドが嬉しい
• サンプルコードも豊富
• 最新のバージョンを追従
• 無料
• 業界基準ではない
• Androidアプリのセキュア設計・セキュアコーディ
ングガイド(著: JSSEC)
これでAndroid界の住人は
守られた
完
完
これでAndroid界の住人は
守られたてなかった
数値から見るセキュリティ
• 依然、93%のアプリに脆弱性リスクが存在
• 暗号通信が解読・改ざんされるリスクのあるアプリ
は増加!
[引用: Sony Digital Network Application] Android脆弱性調査レポート2015
事例から見るセキュリティ
[引用: FireEye] https://www.fireeye.com/blog/threat-research/2015/08/
another_popular_andr.html
• LogCatに機密情報を流してた
• トークンなどを平文でネットにな
がしてた
• トークンが永続化されていた
• パスワードが弱い暗号方式で暗号
化されてた
事例から見るセキュリティ
[引用: FireEye] https://www.fireeye.com/blog/threat-research/2015/08/
another_popular_andr.html
• WebView上の通信でhttp通信
を使ってたので、通信を改竄さ
れる
書籍のカバー範囲なのに
なぜ?
アウトライン
• 背景
• どこからセキュア開発を学ぶか?
• 現状の課題
• 設計フェーズ、実装フェーズ、運用フェーズ
• まとめ
Androidのセキュリティ範囲
• 範囲
• ファイルアクセス権限、APKファイル保護、パー
ミッション、Activity, Broadcast, Service,
Content Provider、インテント、暗号化、
SQLite、Logcat, WebView, Account Manger,
https, プライバシー情報、パスワード入力画面,
アプリケーション保護, 証明書, 新しい
Permission, Clipboard, etc, etc
Androidのセキュリティ範囲
• 範囲
• ファイルアクセス権限、APKファイル保護、パー
ミッション、Activity, Broadcast, Service,
Content Provider、インテント、暗号化、
SQLite、Logcat, WebView, Account Manger,
https, プライバシー情報、パスワード入力画面,
アプリケーション保護, 証明書, 新しい
Permission, Clipboard, etc, etc
・・・ヒロくね?
開発者の責任範囲
• セキュリティ範囲
• ファイルアクセス権限、APKファイル保護、パーミッション、Activity,
Broadcast, Service, Content Provider、インテント、暗号化、SQLite、
LogCat, WebView, Account Manger, https, プライバシー情報、パスワード
入力画面, アプリケーション保護, 証明書の管理方法, 新しいPermission,
Clipboard, etc, etc
• に加えて(自分の体験例)
• 新規開発(約2ヶ月)、サービスのKPIに沿った実装の提案, 全体の設計, コン
ポーネントのライフサイクルを考慮したデータのやり取り, カスタムViewの作
成, デザイナーとの自社ブランドとMaterialDesignガイドに沿ったデザインの
検討、Web側担当者とのAPI仕様検討, カスタマーサポートからのバグ報告対応,
CI環境の整備、テストの作成、ASO/SEO対策, etc, etc
開発者の責任範囲
• セキュリティ範囲
• ファイルアクセス権限、APKファイル保護、パーミッション、Activity,
Broadcast, Service, Content Provider、インテント、暗号化、SQLite、
LogCat, WebView, Account Manger, https, プライバシー情報、パスワード
入力画面, アプリケーション保護, 証明書の管理方法, 新しいPermission,
Clipboard, etc, etc
• に加えて(自分の体験例)
• 新規開発(約2ヶ月)、サービスのKPIに沿った実装の提案, 全体の設計, コン
ポーネントのライフサイクルを考慮したデータのやり取り, カスタムViewの作
成, デザイナーとの自社ブランドとMaterialDesignガイドに沿ったデザインの
検討、Web側担当者とのAPI仕様検討, カスタマーサポートからのバグ報告対応,
CI環境の整備、テストの作成、ASO/SEO対策, etc, etc
・・・キツくね?
徳丸先生も同じようなこと言っ
てた(と思う)
[引用: セキュアコーディング方法論再構築の試み
http://www.slideshare.net/ockeghem/reconstruction-of-secure-coding-methodologies
課題は
• 実装時は広範囲なセキュリティをカバーする余力が
ない
• そもそも考えつくことすらないかもしれない
解決方法は
• 開発の実装時だけでなく、各段階で必要なセキュリ
ティ対策を考えること
Build Security Inの紹介
• 最近セキュリティ業界で盛り上がってる
• Build Security In is a collaborative effort that
provides practices, tools, guidelines, rules, principles,
and other resources that software developers,
architects, and security practitioners can use to build
security into software in every phase of its
development.
• by US-CERT(米国国土安全保障省(DHS)配下の情報セキュリティ対策組織)
[引用]http://www.softic.or.jp/semi/2014/5_141113/op.pdf
Build Security Inの紹介
• 最近セキュリティ業界で盛り上がってる
• ソフトウェア開発の全工程にセキュリティを組み
込めるようなベスト・プラクティス、ツール、ガイ
ドライン等のリソースを開発者などに提供する協同
的な取り組み
[引用]http://www.softic.or.jp/semi/2014/5_141113/op.pdf
どういうことか、と言うと
[引用: 株式会社セタ・インターナショナル] http://www.seta-international.co.jp/vietnam_offshore/securityoption.html
今回はこんな感じで区切る
設計フェーズ
実装フェー
ズ
運用フェーズ
[引用: 株式会社セタ・インターナショナル] http://www.seta-international.co.jp/vietnam_offshore/securityoption.html
アウトライン
• 背景
• どこからセキュア開発を学ぶか?
• 現状の課題
• 設計フェーズ、実装フェーズ、運用フェーズ
• まとめ
設計フェーズのセキュア開発
• 実装そのものではない
• 開発計画へセキュリティの要件を組み込む
• サービス上のリスクに対する脅威と脆弱性の洗出し
• リスクの顕在化蓋然性や影響に基づくやるやら判断
なぜ設計段階でやるのか?
• コスパがいい
• 設計時より運用開始後の対策費は60 100倍
• 80%の脆弱性は設計段階で生まれる(ソース未確認…)
[引用:NRI] http://fis.nri.co.jp/ja-JP/publication/kinyu_itf/backnumber/
Android設計時のポイント
• ココらへんについて特に注意を払いたい(kengoscal的に)
• 手戻り工数・影響が大きいもの
• データの保管方法
• セッションの保持のしかた
• Permission
• 3rd Party製の広告モジュール
• WebViewで何処で使って、何をしたいか
• 暗号化方式
• 連携アプリの有無(コンポーネント間の連携)
Case: Money Forward
•      のB2B版開発をイメージ
• サービス紹介: 金融機関に資産情報をスクレイピン
グにいって、それを一元化するアプリ
データの保存方法
• アプリで扱うデータの重要度を考える
• 金融機関のログインフォーム関連の情報: 重要度低
• データ量が大きいのでSQLite使って平文で保存
• パスコード: 重要度中
• パスコードは暗号化しておきたいのでFileに書き出す
• AES/CBC/pkcs5padding
• 他の情報: 重要度高
• ローカルに保存しない
Permission
• ネットワーク通信、ユーザーアカウント、指紋認証
ぐらいしか使わない
<uses-permission
android:name="android.permission.INTERNET" />
<uses-permission
android:name="android.permission.USE_FINGERPRINT"
WebView
• FAQと利用規約を表示させるくらい
• Chrome Custom Tabを使う
連携アプリの有無
• 自社のアプリと連携するための独自Permissionを
作る
• 長いので「Androidアプリのセキュア設計・セキュ
アコーディングガイド」を参照されたし
• 4.1.1.4. 自社限定 Activity を作る・利用する
• 5.2.1.2. 独自定義の Signature Permission で
自社アプリ連携する
Anti Case: Skype
• ユーザーの個人情報・チャット履歴が流出した
• 独自生成したディレクトリ・ファイル下に保存し
た -> AndroidOSによる保護機能がきかなかった
• DBファイルも平文で保存されていた
• Build in Securityの「設計フェーズ」において「デー
タの保管方法」について設計から考えてれば、防げ
た(かも)
アウトライン
• 背景
• どこからセキュア開発を学ぶか?
• 現状の課題
• 設計フェーズ、実装フェーズ、運用フェーズ
• まとめ
実装フェーズのセキュア開発
• あるある系のチェックが主
• https通信における証明書検証漏れ
• WebViewのaddJavascriptInterface
• LogCat
• ここは開発者として抑えておいた方がいいとおもう 
基本的に実装方法は
ggr!
ば出てきて、それを使えばok
本に記載されていないもの
• URLConnectionクラスにおけるHTTPヘッダイン
ジェクション対策
• setRequestProperty/addRequestPropertyを利
用していると、HTTPヘッダを通じて任意のコード
をどこからでも実行される可能性がある
• 根本対策: OkHttp2.5.0以上にする
• ワークアラウンド: ヘッダの入力値チェックをする
• 詳細: https://jvn.jp/vu/JVNVU99757346/
ヘッダの入力値チェック
[引用:Square] https://github.com/square/okhttp/blob/master/okhttp/src/main/java/
private void checkNameAndValue(String name, String value) {
if (name == null) throw new NullPointerException("name == null");
if (name.isEmpty()) throw new IllegalArgumentException("name is empty");
for (int i = 0, length = name.length(); i < length; i++) {
char c = name.charAt(i);
if (c <= 'u001f' || c >= 'u007f') {
throw new IllegalArgumentException(String.format(
"Unexpected char %#04x at %d in header name: %s", (int) c, i, name));
}
}
if (value == null) throw new NullPointerException("value == null");
for (int i = 0, length = value.length(); i < length; i++) {
char c = value.charAt(i);
if (c <= 'u001f' || c >= 'u007f') {
throw new IllegalArgumentException(String.format(
"Unexpected char %#04x at %d in %s value: %s", (int) c, i, name, value));
}
}
}
• 対策済みのokhttpからコピペ
アウトライン
• 背景
• どこからセキュア開発を学ぶか?
• 現状の課題
• 設計フェーズ、実装フェーズ、運用フェーズ
• まとめ
運用フェーズのセキュア開発
• アプリに署名する証明書・KeyStore管理の話
証明書・KeyStoreのリスク
• アプリが制御下から離れるリスク
• 紛失した場合: アプリのアプデができなくなる
• 盗難された場合: アプリの乗っ取り
• CaseStudy:
• 見た目全く同じで、金融機関ログイ
ン時の情報を故意のURLに流す
ありがち?な運用環境
ローカル開発環境A用
fetch & push
sign & deploy
D用
C用
B用
A用
何が問題なのか
問題
• 開発端末毎に独立してるのでkeystoreの管理がし
にくい
• 攻撃等によるkeystoreが漏洩するチャネルが広い
• 攻撃手法や攻撃対象などが広いという意味
• 漏洩発覚時の追跡が難しい
ぼくのかんがえたさいきょうの
運用環境
ローカル開発環境
A用
Fetch & Push
+
B用
C用
Fetch or Hook
Build & Deploy
Backup
ローカル開発環境
A用
Fetch & Push
+
B用
C用
Fetch or Hook
Build & Deploy
Backup
ローカルにはkeystoreを置かない
ローカル開発環境
A用
Fetch & Push
+
B用
C用
Fetch or Hook
Build & Deploy
Backup
リリースビルドはCIツールのジョブからのみ
keyStoreを集約
開発者は基本Web/Chatからジョブをキックするのみ
sshなどのリモート操作は限定された役職のみ
ローカル開発環境
A用
Fetch & Push
+
B用
C用
Fetch or Hook
Build & Deploy
Backup
apkは手動・自動でdeployツールもしくはStoreにアッ
プロードして、端末に配布
ローカル開発環境
A用
Fetch & Push
+
B用
C用
Fetch or Hook
Build & Deploy
Backup
CIツール紛失などでCI上のkeyStoreが消えた場合にrestoreでき
るように、keyStoreをストレージにバックアップ。
これも限定された業種・役職のみがアクセス可能
ローカル開発環境
A用
Fetch & Push
+
B用
C用
Fetch or Hook
Build & Deploy
Backup
CI環境に限らず、委託や受託の場合もkeyStoreのバックアップは
さっさと取っておくのが安
アウトライン
• 背景とゴール
• どこからセキュア開発を学ぶか?
• 現状の課題
• 設計フェーズ、実装フェーズ、運用フェーズ
• まとめ
まとめ
• 皆(ユーザー・開発者・発注者)で幸せになりたい
• その1要素としての・品質としてのセキュリティ
• 教材は っている
• 教材がおもすぎる場合は、開発段階ごとに必要なセ
キュリティ施策を分解する
皆で安全・安心なエコシステム
を提供していきましょう!
現在のスマホユーザーの①日の利用時間は1時間49分。

エコシステム自体が上部でも、エコシステムの上にのっかるサービスが危険な状態では、実にユーザー
の日常生活のうち役8%が危険に晒されていることになる。

これはいらない
ご清聴
ありがとうございました
おまけ
Nにおけるセキュリティ
• Network Security Configuration
• Key Attestation
• Permission
Network Security
Configuration
• コードで記述した証明書関連の動作をxmlで書ける
• 信頼するCAのホワイトリスト化
• 証明書ピニング
• 平文通信の除外
Key Attestation
• Hardware-backed keystores のヘルパーみたい
なイメージ
• Hardware-backed keystoresの検証をしてくれ
る?
Permission
• GET_ACCOUNTS:
• Deprecated
• ACTION_OPEN_EXTERNAL_DIRECTORY(NEW
• App専用のディレクトリを作成・権限付与
他
• OkHttpがHTTP1.1のRFC7230準拠になったっぽい
• 日本語をヘッダに入れられなくなった

Mais conteúdo relacionado

Mais procurados

Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
Android アプリを Jenkins でビルドして GitHub に “リリース” を作るAndroid アプリを Jenkins でビルドして GitHub に “リリース” を作る
Android アプリを Jenkins でビルドして GitHub に “リリース” を作るYu Nobuoka
 
ネットワークの切り替えを感知する方法
ネットワークの切り替えを感知する方法ネットワークの切り替えを感知する方法
ネットワークの切り替えを感知する方法Keisuke Yamaguchi
 
あるゲームアプリケーションの構成とアップデートサイクル
あるゲームアプリケーションの構成とアップデートサイクルあるゲームアプリケーションの構成とアップデートサイクル
あるゲームアプリケーションの構成とアップデートサイクルKentaro Iizuka
 
Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発Takuya Ueda
 
絶対落ちないアプリの作り方
絶対落ちないアプリの作り方絶対落ちないアプリの作り方
絶対落ちないアプリの作り方Fumihiko Shiroyama
 
Android アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステムAndroid アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステムYu Nobuoka
 
Yapf2013
Yapf2013Yapf2013
Yapf2013l_b__
 
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121leverages_event
 
Androidアプリのストレージ戦略
Androidアプリのストレージ戦略Androidアプリのストレージ戦略
Androidアプリのストレージ戦略Masahiro Hidaka
 
Eclipseを使ったandroid nativeデバッグ
Eclipseを使ったandroid nativeデバッグEclipseを使ったandroid nativeデバッグ
Eclipseを使ったandroid nativeデバッグl_b__
 
Fuchsia概略その1
Fuchsia概略その1Fuchsia概略その1
Fuchsia概略その1l_b__
 
Androidの新ビルドシステム
Androidの新ビルドシステムAndroidの新ビルドシステム
Androidの新ビルドシステムl_b__
 
お気に入り拡張機能
お気に入り拡張機能お気に入り拡張機能
お気に入り拡張機能SatsukiYabu
 
僕がAndroid開発する時にちょっと便利だと思うtips
僕がAndroid開発する時にちょっと便利だと思うtips僕がAndroid開発する時にちょっと便利だと思うtips
僕がAndroid開発する時にちょっと便利だと思うtipsMasataka Kono
 
Android Studioの魅力
Android Studioの魅力Android Studioの魅力
Android Studioの魅力Keiji Ariyama
 
ABS2015 のセッション紹介
ABS2015 のセッション紹介ABS2015 のセッション紹介
ABS2015 のセッション紹介l_b__
 
What is tested by pre-launch (security) reports?
What is tested by pre-launch (security) reports?What is tested by pre-launch (security) reports?
What is tested by pre-launch (security) reports?ak_shio_555
 
Android lint-srp-practice
Android lint-srp-practiceAndroid lint-srp-practice
Android lint-srp-practicecch-robo
 
AndroidStudioはじめました ~Gradle編~
AndroidStudioはじめました ~Gradle編~AndroidStudioはじめました ~Gradle編~
AndroidStudioはじめました ~Gradle編~Yabata Tomomitsu
 

Mais procurados (20)

Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
Android アプリを Jenkins でビルドして GitHub に “リリース” を作るAndroid アプリを Jenkins でビルドして GitHub に “リリース” を作る
Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
 
ネットワークの切り替えを感知する方法
ネットワークの切り替えを感知する方法ネットワークの切り替えを感知する方法
ネットワークの切り替えを感知する方法
 
あるゲームアプリケーションの構成とアップデートサイクル
あるゲームアプリケーションの構成とアップデートサイクルあるゲームアプリケーションの構成とアップデートサイクル
あるゲームアプリケーションの構成とアップデートサイクル
 
Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発
 
絶対落ちないアプリの作り方
絶対落ちないアプリの作り方絶対落ちないアプリの作り方
絶対落ちないアプリの作り方
 
Android アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステムAndroid アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステム
 
Yapf2013
Yapf2013Yapf2013
Yapf2013
 
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
 
Androidアプリのストレージ戦略
Androidアプリのストレージ戦略Androidアプリのストレージ戦略
Androidアプリのストレージ戦略
 
Eclipseを使ったandroid nativeデバッグ
Eclipseを使ったandroid nativeデバッグEclipseを使ったandroid nativeデバッグ
Eclipseを使ったandroid nativeデバッグ
 
Fuchsia概略その1
Fuchsia概略その1Fuchsia概略その1
Fuchsia概略その1
 
Androidの新ビルドシステム
Androidの新ビルドシステムAndroidの新ビルドシステム
Androidの新ビルドシステム
 
お気に入り拡張機能
お気に入り拡張機能お気に入り拡張機能
お気に入り拡張機能
 
僕がAndroid開発する時にちょっと便利だと思うtips
僕がAndroid開発する時にちょっと便利だと思うtips僕がAndroid開発する時にちょっと便利だと思うtips
僕がAndroid開発する時にちょっと便利だと思うtips
 
Bot Framework v4 開発 Tips 2018-11
Bot Framework v4  開発 Tips 2018-11Bot Framework v4  開発 Tips 2018-11
Bot Framework v4 開発 Tips 2018-11
 
Android Studioの魅力
Android Studioの魅力Android Studioの魅力
Android Studioの魅力
 
ABS2015 のセッション紹介
ABS2015 のセッション紹介ABS2015 のセッション紹介
ABS2015 のセッション紹介
 
What is tested by pre-launch (security) reports?
What is tested by pre-launch (security) reports?What is tested by pre-launch (security) reports?
What is tested by pre-launch (security) reports?
 
Android lint-srp-practice
Android lint-srp-practiceAndroid lint-srp-practice
Android lint-srp-practice
 
AndroidStudioはじめました ~Gradle編~
AndroidStudioはじめました ~Gradle編~AndroidStudioはじめました ~Gradle編~
AndroidStudioはじめました ~Gradle編~
 

Semelhante a Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)

TechNight #12: Cloud Identity Summit 2014 @ Monteray 概要と主要トピック
TechNight #12: Cloud Identity Summit2014 @ Monteray 概要と主要トピックTechNight #12: Cloud Identity Summit2014 @ Monteray 概要と主要トピック
TechNight #12: Cloud Identity Summit 2014 @ Monteray 概要と主要トピックDaisuke Fuke
 
KYC and identity on blockchain
KYC and identity on blockchainKYC and identity on blockchain
KYC and identity on blockchainmosa siru
 
マイクロソフトのITコンシューマライゼーション2 - フレキシブルワークスタイルを支えるテクノロジー 第2版
マイクロソフトのITコンシューマライゼーション2 - フレキシブルワークスタイルを支えるテクノロジー 第2版マイクロソフトのITコンシューマライゼーション2 - フレキシブルワークスタイルを支えるテクノロジー 第2版
マイクロソフトのITコンシューマライゼーション2 - フレキシブルワークスタイルを支えるテクノロジー 第2版junichi anno
 
Node-REDから見えた未来 - 変わるもの、変わらないもの -
Node-REDから見えた未来 - 変わるもの、変わらないもの -Node-REDから見えた未来 - 変わるもの、変わらないもの -
Node-REDから見えた未来 - 変わるもの、変わらないもの -Makoto SAKAI
 
Androidアプリ内蔵広告 徹底解析 公開用
Androidアプリ内蔵広告 徹底解析 公開用Androidアプリ内蔵広告 徹底解析 公開用
Androidアプリ内蔵広告 徹底解析 公開用Lumin Hacker
 
Cloud Identity Summit 2012 TOI
Cloud Identity Summit 2012 TOICloud Identity Summit 2012 TOI
Cloud Identity Summit 2012 TOITatsuo Kudo
 
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Hitachi, Ltd. OSS Solution Center.
 
Security days 2015
Security days 2015Security days 2015
Security days 2015Manabu Kondo
 
モバイルアプリケーションセキュリティ101
モバイルアプリケーションセキュリティ101モバイルアプリケーションセキュリティ101
モバイルアプリケーションセキュリティ101TokujiAkamine
 
Pythonおじさんのweb2py挑戦記
Pythonおじさんのweb2py挑戦記Pythonおじさんのweb2py挑戦記
Pythonおじさんのweb2py挑戦記Yoshiyuki Nakamura
 
Spring Social でソーシャルログインを実装する
Spring Social でソーシャルログインを実装するSpring Social でソーシャルログインを実装する
Spring Social でソーシャルログインを実装するRakuten Group, Inc.
 
Service Cloud Trailblazers #5
Service Cloud Trailblazers #5Service Cloud Trailblazers #5
Service Cloud Trailblazers #5sfdc_sctb
 
【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック
【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック
【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバックNISSHO USA
 
WebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWebWebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWebKensaku Komatsu
 
Hybrid appmeetssecurity kdl20171017-20
Hybrid appmeetssecurity kdl20171017-20Hybrid appmeetssecurity kdl20171017-20
Hybrid appmeetssecurity kdl20171017-20龍弘 岡
 
Sequent Asia IT Refined Japanese Presentation
Sequent Asia IT Refined Japanese PresentationSequent Asia IT Refined Japanese Presentation
Sequent Asia IT Refined Japanese Presentationsaiitweb
 
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説Takashi Yahata
 
Node-redでプロトタイピング
Node-redでプロトタイピングNode-redでプロトタイピング
Node-redでプロトタイピングMakoto SAKAI
 
Sharoid Service Menu
Sharoid Service MenuSharoid Service Menu
Sharoid Service Menusharoid
 

Semelhante a Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2) (20)

TechNight #12: Cloud Identity Summit 2014 @ Monteray 概要と主要トピック
TechNight #12: Cloud Identity Summit2014 @ Monteray 概要と主要トピックTechNight #12: Cloud Identity Summit2014 @ Monteray 概要と主要トピック
TechNight #12: Cloud Identity Summit 2014 @ Monteray 概要と主要トピック
 
KYC and identity on blockchain
KYC and identity on blockchainKYC and identity on blockchain
KYC and identity on blockchain
 
Dfuke oidfj tn10
Dfuke oidfj tn10Dfuke oidfj tn10
Dfuke oidfj tn10
 
マイクロソフトのITコンシューマライゼーション2 - フレキシブルワークスタイルを支えるテクノロジー 第2版
マイクロソフトのITコンシューマライゼーション2 - フレキシブルワークスタイルを支えるテクノロジー 第2版マイクロソフトのITコンシューマライゼーション2 - フレキシブルワークスタイルを支えるテクノロジー 第2版
マイクロソフトのITコンシューマライゼーション2 - フレキシブルワークスタイルを支えるテクノロジー 第2版
 
Node-REDから見えた未来 - 変わるもの、変わらないもの -
Node-REDから見えた未来 - 変わるもの、変わらないもの -Node-REDから見えた未来 - 変わるもの、変わらないもの -
Node-REDから見えた未来 - 変わるもの、変わらないもの -
 
Androidアプリ内蔵広告 徹底解析 公開用
Androidアプリ内蔵広告 徹底解析 公開用Androidアプリ内蔵広告 徹底解析 公開用
Androidアプリ内蔵広告 徹底解析 公開用
 
Cloud Identity Summit 2012 TOI
Cloud Identity Summit 2012 TOICloud Identity Summit 2012 TOI
Cloud Identity Summit 2012 TOI
 
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
 
Security days 2015
Security days 2015Security days 2015
Security days 2015
 
モバイルアプリケーションセキュリティ101
モバイルアプリケーションセキュリティ101モバイルアプリケーションセキュリティ101
モバイルアプリケーションセキュリティ101
 
Pythonおじさんのweb2py挑戦記
Pythonおじさんのweb2py挑戦記Pythonおじさんのweb2py挑戦記
Pythonおじさんのweb2py挑戦記
 
Spring Social でソーシャルログインを実装する
Spring Social でソーシャルログインを実装するSpring Social でソーシャルログインを実装する
Spring Social でソーシャルログインを実装する
 
Service Cloud Trailblazers #5
Service Cloud Trailblazers #5Service Cloud Trailblazers #5
Service Cloud Trailblazers #5
 
【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック
【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック
【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック
 
WebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWebWebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWeb
 
Hybrid appmeetssecurity kdl20171017-20
Hybrid appmeetssecurity kdl20171017-20Hybrid appmeetssecurity kdl20171017-20
Hybrid appmeetssecurity kdl20171017-20
 
Sequent Asia IT Refined Japanese Presentation
Sequent Asia IT Refined Japanese PresentationSequent Asia IT Refined Japanese Presentation
Sequent Asia IT Refined Japanese Presentation
 
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
 
Node-redでプロトタイピング
Node-redでプロトタイピングNode-redでプロトタイピング
Node-redでプロトタイピング
 
Sharoid Service Menu
Sharoid Service MenuSharoid Service Menu
Sharoid Service Menu
 

Mais de Kengo Suzuki

第二回Android training4desinger 2
第二回Android training4desinger 2第二回Android training4desinger 2
第二回Android training4desinger 2Kengo Suzuki
 
第一回Android training4desinger
第一回Android training4desinger第一回Android training4desinger
第一回Android training4desingerKengo Suzuki
 
Android Clean Architecture for Dummies
Android Clean Architecture for DummiesAndroid Clean Architecture for Dummies
Android Clean Architecture for DummiesKengo Suzuki
 
Android Pen Test - Recon -
Android Pen Test - Recon -Android Pen Test - Recon -
Android Pen Test - Recon -Kengo Suzuki
 
iOSアプリエンジニアの最近
iOSアプリエンジニアの最近iOSアプリエンジニアの最近
iOSアプリエンジニアの最近Kengo Suzuki
 
俺が! 俺たちが! Androidチームだ!
俺が! 俺たちが! Androidチームだ!俺が! 俺たちが! Androidチームだ!
俺が! 俺たちが! Androidチームだ!Kengo Suzuki
 

Mais de Kengo Suzuki (6)

第二回Android training4desinger 2
第二回Android training4desinger 2第二回Android training4desinger 2
第二回Android training4desinger 2
 
第一回Android training4desinger
第一回Android training4desinger第一回Android training4desinger
第一回Android training4desinger
 
Android Clean Architecture for Dummies
Android Clean Architecture for DummiesAndroid Clean Architecture for Dummies
Android Clean Architecture for Dummies
 
Android Pen Test - Recon -
Android Pen Test - Recon -Android Pen Test - Recon -
Android Pen Test - Recon -
 
iOSアプリエンジニアの最近
iOSアプリエンジニアの最近iOSアプリエンジニアの最近
iOSアプリエンジニアの最近
 
俺が! 俺たちが! Androidチームだ!
俺が! 俺たちが! Androidチームだ!俺が! 俺たちが! Androidチームだ!
俺が! 俺たちが! Androidチームだ!
 

Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)