Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Android のセキュリティよくなってきた話
Search
こやまカニ大好き
July 26, 2017
Programming
3
2.4k
Android のセキュリティよくなってきた話
potatotips 42 で話した際の資料です
動画1:
https://youtu.be/UHE31IQUHHc
動画2:
https://youtu.be/b9qb5PqJotc
こやまカニ大好き
July 26, 2017
Tweet
Share
More Decks by こやまカニ大好き
See All by こやまカニ大好き
Androidアプリの One Experience リリース
nein37
0
5.1k
マルチモジュールアプリの画面遷移処理実装
nein37
0
6.4k
クックパッド Android アプリのマルチモジュール化とデモアプリの活用
nein37
1
6.8k
2020年代の WebView 実装 / saikou_no_webview_2021
nein37
2
11k
Androidアプリをいつまでも楽しく開発し続けるための取り組み
nein37
5
2.5k
minSdkVersion=21にしてから1年経った話
nein37
8
2.3k
Androidアプリエンジニアの基礎知識
nein37
16
11k
クックパッドアプリのマルチモジュール化への取り組み
nein37
11
11k
Androidアプリのデザイン整理への取り組み
nein37
1
1k
Other Decks in Programming
See All in Programming
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
780
DroidKnights 2025 - 다양한 스크롤 뷰에서의 영상 재생
gaeun5744
3
180
関数型まつり2025登壇資料「関数プログラミングと再帰」
taisontsukada
2
810
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
940
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
290
ReadMoreTextView
fornewid
1
390
データベースコネクションプール(DBCP)の変遷と理解
fujikawa8
1
250
Cursor Meetup Tokyo ゲノミクスとCursor: 進化と制約のあいだ
koido
2
1k
Prism.parseで 300本以上あるエンドポイントに 接続できる権限の一覧表を作ってみた
hatsu38
1
110
人には人それぞれのサービス層がある
shimabox
3
670
セキュリティマネジャー廃止とクラウドネイティブ型サンドボックス活用
kazumura
1
170
つよそうにふるまい、つよい成果を出すのなら、つよいのかもしれない
irof
1
290
Featured
See All Featured
Music & Morning Musume
bryan
46
6.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Building Applications with DynamoDB
mza
95
6.4k
Statistics for Hackers
jakevdp
799
220k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Code Reviewing Like a Champion
maltzj
524
40k
Speed Design
sergeychernyshev
31
990
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
Into the Great Unknown - MozCon
thekraken
39
1.8k
For a Future-Friendly Web
brad_frost
179
9.8k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Transcript
Androidのセキュリティ良くなってきた話 @nein37(エヌ・イー・アイ・エヌ・サン・ナナ)
自己紹介 @nein37(エヌ・イー・アイ・エヌ・サン・ナナ) • クックパッド Androidアプリエンジニア • カニが好き
Androidアプリ セキュリティモデルの歴史 • 6.0 ◦ Runtime Permission ◦ UIオーバーレイにユーザーの許可が必要 •
7.0 ◦ 一部の画面でUIオーバーレイを禁止 • 8.0 ◦ UIオーバーレイの仕様を大幅変更
戦いの歴史 • 5.x ◦ : インストール時に権限許可が必要だよ ◦ :
どうせ誰も権限見てないしやりたい放題 • 6.0 ◦ : 権限は個別にユーザー許可が必要! ◦ : 権限許可画面の上に別の文言を表示して許可させるぞ! • 7.0 ◦ : 権限取得ダイアログではオーバーレイ禁止! ◦ : ウッ
戦いの歴史 ユーザー補助サービスを使うしかねえ
ユーザー補助サービスとは • 表示中の画面の情報を取得できる ◦ 最前面のアプリ/Activity取得 ◦ 画面の更新タイミング検知 ◦ 画面内に描画されているView情報(idつき) •
表示中の画面に対してアクションできる ◦ クリック ◦ チェック変更 ◦ 文字入力 • ユーザーの許可が必要(初回のみ)
つまりどういうこと? 本来ユーザー操作が必要な処理を アプリが勝手に行うことができます
デモ
• 大人気アプリのサポートツール ◦ と謳っているだけの悪いアプリ • 他のアプリにオーバーレイで結果を 表示する ◦ と謳っているがユーザー補助サービスを許可 してもらいやすくするだけの説明
https://youtu.be/UHE31IQUHHc
いま何が起きたの?
https://youtu.be/b9qb5PqJotc
やったこと 1. ユーザー補助権限を許可してもらう ---ここまでユーザー操作--- 2. UIオーバーレイの許可画面に遷移し、許可させる 3. UIオーバーレイで画面の表示内容を隠す 4. アプリの権限設定画面に遷移し、すべて許可させる
5. アプリに戻ってくる 6. UIオーバーレイを非表示にする
ちょっとだけソースコード 地道にViewを探してアクションを繰り返していく
まとめ • Android のセキュリティは良くなってきたけどまだ十分では ない • ユーザー補助サービスは非常に危険なので軽い気持ちで 許可しないようにしましょう