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
4.6k
マルチモジュールアプリの画面遷移処理実装
nein37
0
6.3k
クックパッド Android アプリのマルチモジュール化とデモアプリの活用
nein37
1
6.7k
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
snacks.nvim内のセットアップ不要なプラグインを紹介 / introduce_snacks_nvim
uhooi
0
320
ステートソーシング型イベント駆動の視点で捉えるCQRS+ES
shinnosuke0522
1
310
いまさら聞けない生成AI入門: 「生成AIを高速キャッチアップ」
soh9834
12
3.4k
Firebase Dynamic Linksの代替手段を自作する / Create your own Firebase Dynamic Links alternative
kubode
0
170
아직도 SOLID 를 '글'로만 알고 계신가요?
sh1mj1
0
350
NestJSのコードからOpenAPIを自動生成する際の最適解を探す
astatsuya
0
170
JavaOne 2025: Advancing Java Profiling
jbachorik
1
310
CQRS+ES勉強会#1
rechellatek
0
380
アーキテクトと美学 / Architecture and Aesthetics
nrslib
12
2.9k
remix + cloudflare workers (DO) docker上でいい感じに開発する
yoshidatomoaki
0
110
WordPress Playground for Developers
iambherulal
0
120
List とは何か? / PHPerKaigi 2025
meihei3
0
490
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
67
11k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
GraphQLの誤解/rethinking-graphql
sonatard
69
10k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
117
51k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
28
2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
Become a Pro
speakerdeck
PRO
27
5.2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
7
610
Mobile First: as difficult as doing things right
swwweet
223
9.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
320
Facilitating Awesome Meetings
lara
53
6.3k
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 のセキュリティは良くなってきたけどまだ十分では ない • ユーザー補助サービスは非常に危険なので軽い気持ちで 許可しないようにしましょう