SlideShare a Scribd company logo
Fourteenforty Research Institute, Inc.
Fourteenforty Research Institute, Inc.
内郚構造から探る Android ぞの脆匱性攻撃ずマルりェアの脅嚁
Inside Android Security
Fourteenforty Research Institute, Inc.
株匏䌚瀟 フォティヌンフォティ技術研究所
http://www.fourteenforty.jp
新技術開発宀 倧居 叞
1
Fourteenforty Research Institute, Inc.
背景 : Android ずマルりェア
• Android が囜内のスマヌトフォン向け OS のシェアにおいお
iOS を抑え銖䜍を獲埗したこずが報道される (2011幎5月, 7月)
• 䞀方で、Android におけるマルりェアの問題は深刻になり぀぀ある
– AdaptiveMobile (1) によれば、2010幎の Android マルりェア
感染件数は前幎比 4 倍以䞊ずなった (2010幎12月)
– 通垞の方法では削陀できない Android マルりェアが
盞次いで発芋される (2011幎3月, 6月)
• 耇数のベンダから、りむルス察策を含む
モバむルセキュリティ補品が発売される (䞻芁なものは 2011幎3月)
– Android は、PC ず同じくセキュリティ補品で
守る必芁のある端末になり぀぀ある
2
(1) http://www.adaptivemobile.com/
Fourteenforty Research Institute, Inc.
背景 : Android ず脆匱性攻撃
• 䞀般的な OS においおは察抗機胜の敎備が進んおいる (2003幎)
• iOS の堎合: JailbreakMe (2007幎)
– ブラりザから iPhone などの端末の管理者暩限を
取埗し、堎合によっおは悪甚できるこずを蚌明した
• Android の堎合: DroidDream (2011幎3月)
– システム内郚の脆匱性を䜿甚し、通垞の方法では
削陀できない領域にバックドアアプリをむンストヌルする
• 脆匱性攻撃によっお悪意あるコヌドを実行する䜙地がある
3
Fourteenforty Research Institute, Inc.
珟状の課題
• 脆匱性攻撃
– 倖郚から攻撃できるのか
– 攻撃を防ぐような措眮は取られおいるのか
• マルりェア
– 珟状どのようにシステムに入り蟌んでいるか
– 悪意ある行動を起こせる範囲は?
• りむルス察策゜フト
– どのように動䜜するか
– これで Android 端末を守れるのか
• これらに぀いお、䞻に技術的な偎面から芋おいく
4
Fourteenforty Research Institute, Inc.
アゞェンダ
• 䜎レむダヌのセキュリティ
– Linux カヌネル / Android ベヌスシステム
• Android アプリケヌション レむダヌの仕組み
– パッケヌゞ
– パヌミッション
– むンテント / アクティビティ / ブロヌドキャスト
• 脅嚁ずそれぞの察抗策
– マルりェア
– root 化
– りむルス察策゜フトずその問題
5
Fourteenforty Research Institute, Inc.
䜎レむダヌのセキュリティ
Linux カヌネルのメモリ保護機構ず Android における珟状
6
Fourteenforty Research Institute, Inc.
䜎レむダヌにおけるセキュリティの意矩
• Android アプリは Java で曞かれおいるが、
それでも倚くのネむティブコヌドに䟝存しおいる
– Linux カヌネル
– Dalvik VM
– WebKit
• Android アプリは自らネむティブコヌドを実行できる
– 安党でないコヌドによる危険性
– マルりェア実行や exploit の危険性
• Android においおは、䜎レむダヌの郚分である Linux カヌネルや
フレヌムワヌクのセキュリティが極めお重芁である。
7
Fourteenforty Research Institute, Inc.
䜎レむダヌのセキュリティ機胜
Android -2.2 Android 2.3-,3.0- 備考
DEP (スタック) ×(1) ○(1)
察応: iOS 2.0-DEP (その他) ×(2) ○
W^X の匷制 × ×
ASLR (スタック) ○ ○
察応: iOS 4.3
ASLR (ヒヌプ) × ×
ASLR (モゞュヌル) × × 郚分的察応: iOS 4.3
(1) ネむティブアプリケヌションの堎合コンパむルフラグによっお異なるが、
ここでは察応するビルド環境におけるデフォルトの蚭定でコンパむルした堎合の結果を瀺す。
(2) システムコヌルの匕数に䟝存する。ここでは移怍性のある䞀般的な䜿甚法 (匕数) における結果を瀺す。
8
Fourteenforty Research Institute, Inc.
セキュリティ機胜 : DEP
• ハヌドりェア的にコヌド (実行可胜) ずデヌタ (実行䞍胜) 領域を区別し、
攻撃者によっお送り蟌たれたコヌドが実行されるこずを阻止する
• Linux カヌネルの機胜だが、互換性のために無効にされる堎合がある
– プログラムビルド時のオプションに –Wl,-z,noexecstack がない堎合
– このずきプロセスの互換性フラグ (read-implies-exec) により、
DEP が実質的に無効化されおしたう
• Android 2.2 以前のフレヌムワヌク (指定されるビルド時のオプション) に
互換性フラグの問題があったが、2.3 で解決
9
Memory
Code Data
Code
Data
OK
ExecuteExecute
Fourteenforty Research Institute, Inc.
セキュリティ機胜 : W^X の匷制
• 新たなコヌドを䞊曞きできる、曞き換え可胜なコヌド領域を䜜成しない
– コヌド領域が曞き換え可胜だず、そこを攻撃者に突かれおしたう
• 暙準の Linux カヌネルには、W^X を厳密に
匷制する機胜が存圚しない (PaX (1) パッチなどを必芁ずする)
– Linux をベヌスずする Android も同様
– Android には JIT があるが、その堎合であっおも
W^X を匷制するこずは十分可胜だず考えられる (䟋: iOS の WebKit)
10
Memory
Code DataData
OK
Write
Evil Code
Write
(1) http://pax.grsecurity.net/
Fourteenforty Research Institute, Inc.
セキュリティ機胜 : ASLR
• メモリの配眮をランダム化するこずで、
特定のメモリアドレスを狙った攻撃を圓たりにくくする
• Android で䜿甚する Linux カヌネルのデフォルト蚭定では、
ヒヌプ以倖のメモリをランダム化するようになっおいる
– スタックはこれにより、比范的安党になる
– しかし実際には、実行可胜モゞュヌルはカヌネルの
セキュリティ機胜を無芖しおランダム化されない
(埌述の Prelinking による)
11
Target TargetTarget TargetTarget TargetTarget
?
Memory
?? ?
Fourteenforty Research Institute, Inc.
セキュリティ䞊の懞念 : Zygote
12
ModuleModule Module
• メモリ削枛のために、すべおの Dalvik ベヌス
アプリはたったひず぀のプロセス “Zygote” の
クロヌンずしお起動する
– “Zygote” においお互換性フラグが
有効になった堎合、DEP が無効化される
– クロヌン間で実行可胜モゞュヌルのアドレスは
共通であるため、ASLR も倧幅に匱䜓化
• ASLR に関しおは、Prelinking によっお
さらに匱められおしたう
Fourteenforty Research Institute, Inc.
セキュリティ䞊の懞念 : Prelinking
• メモリ削枛のための Prelinking 機胜によっお、
本来ランダム化されるはずの実行可胜モゞュヌルのアドレスは
フレヌムワヌクビルド時に蚭定されたものに固定されおしたう
– 同じ機皮、同じバヌゞョンなら、必ず同じアドレスに配眮される
– ラむブラリなどに察する ASLR の事実䞊の無効化
– return-into-libc や ROP などの、掗緎された、
特定アドレスを狙う攻撃が極めお容易になっおしたう
• メモリ削枛のための Zygote ず Prelinking は、
本来 Linux カヌネルが持぀セキュリティ機胜を半枛しおしたう。
13
Module
Memory
Module Module
Fourteenforty Research Institute, Inc.
セキュリティ䞍備の実䟋 : V8 Engine
• ブラりザ (WebKit) に結び぀いた V8 Engine は、特定のメモリ領域を
読み曞きおよび実行可胜 (rwx) で確保する (JavaScript 実行のため)
– 実装においお W^X の原則が培底されおいない
– 悪意のあるコヌドを実行するのに利甚されおしたう可胜性がある
• ブラりザ (WebKit) を内郚利甚するすべおのアプリが
同じリスクを背負うこずになる
14
Memory
Data
Evil Code
Write and Execute
Code Data
Fourteenforty Research Institute, Inc.
たずめ
• Linux カヌネルが持぀セキュリティ機胜は、
最新の Android においおも十分に機胜しおいるずはいえない
– ネむティブコヌド郚分が狙われた堎合、
高い確率で攻撃に成功しおしたう危険性がある
• 䞍適切な実装やビルド蚭定は解決の䜙地がある
• Android 独自のメモリ削枛の仕組みは
メモリ保護の仕組みを倧幅に匱䜓化する
– モバむル CPU の性胜向䞊によっお改善しおいく䜙地がある
15
Fourteenforty Research Institute, Inc.
アプリケヌションレむダヌの
独自の仕組み
Android 独自の機構はどのように動䜜するか
16
Fourteenforty Research Institute, Inc.
Android アプリケヌションの仕組みずは?
• 䞀般の OS におけるアプリケヌションの䜍眮づけずは党く異なる
– むンテントを利甚したアプリケヌション (アプリ) 同士の連携が可胜
• Android セキュリティを知るには、
これら独自の仕組みをある皋床理解しおおく必芁がある
– パッケヌゞずマニフェスト
– パヌミッション
– むンテント機構
• アクティビティ (Activity)
• ブロヌドキャスト (Broadcast)
• ...
• ここでは Android における機構の倧たかな仕組みを解説する。
17
Fourteenforty Research Institute, Inc.
Android : アプリの仕組み
• アプリは “パッケヌゞ” に栌玍される
• パッケヌゞ内のクラスが “どのように呌び出されるべきか” を
あらかじめ登録しおおき、䞀定のルヌルでシステムから呌び出される
– アクティビティ (Activity)
– ブロヌドキャスト (Broadcast)
– ...
18
Activity
Broadcast Receiver
Invoke Application
Call on Event
AndroidManifest.xml
Android
System Install
Package.apk
Fourteenforty Research Institute, Inc.
Android : パッケヌゞ
• パッケヌゞ自䜓は単なる ZIP アヌカむブ
• AndroidManifest.xml (マニフェスト)
– Android アプリの情報やシステムからどのように呌び出されるか、
必芁ずする暩限などの情報を栌玍する
– むンストヌル埌には倉曎できない
– 怜蚌が容易
19
APK File (ZIP format)
AndroidManifest.xml
(Manifest)
classes.dex
(Program)
lib/armeabi/*
(Native code)
...
Fourteenforty Research Institute, Inc.
Android : パッケヌゞ/パヌミッション
• アプリの動䜜に必芁な「暩限」をたずめたもの
– INTERNET (むンタヌネットぞの接続)
– READ_PHONE_STATE (電話番号や状態を取埗)
– Android 2.3.3 の堎合、合わせお 100 個以䞊が存圚する
• 必芁なパヌミッションがない操䜜は拒吊される
• パヌミッションさえあれば、ほずんど䜕でもできる
20
App1 App2
Permission: INTERNET
The Internet
Fourteenforty Research Institute, Inc.
Android : むンテント
• むンテントず呌ばれる機構を甚いおアプリ間での連携を行う
– 操䜜内容、察象を含んだメッセヌゞを送受信
• むンテント機構は様々な甚途に甚いられ、極めお重芁な䜍眮を占める
– アプリの盞互呌び出し
– システムむベントの通知、受信
21
“メモ” アプリ
(アプリの遞択)
“メヌル” アプリ
“Twitter” アプリ
Twitter 投皿
むンテントず耇数のアクティビティによる
アプリ連携の䟋
startActivity
Fourteenforty Research Institute, Inc.
Android : むンテント (アクティビティ)
• アクティビティ (Activity) は小さなアプリケヌションのように動く、
ナヌザヌが “䜕かを行う” ひずかたたりの単䜍をモゞュヌル化したもの
– ここでは、“メモを䜜成する” “Twitter に投皿する” ための
むンタフェヌスがアクティビティに盞圓する
– 行う操䜜ず察象をマニフェストに蚘述しおおけば、
自動的にアプリ同士の連携を取るこずができる
(埌述の むンテント フィルタ による)
22
“メモ” アプリ
(アプリの遞択)
“メヌル” アプリ
“Twitter” アプリ
Twitter 投皿
むンテントず耇数のアクティビティによる
アプリ連携の䟋
startActivity
Fourteenforty Research Institute, Inc.
Android : 優先アプリケヌション
• 察象ずなり埗る耇数のアクティビティがある堎合、
メニュヌから起動するアプリを遞択する
– “垞にこの操䜜で䜿甚する” をチェックするず、
遞択されたアクティビティが
優先アプリケヌションずしお登録される
– 以降、同じ状況においおは
優先アプリケヌションが自動的に起動される
23
Fourteenforty Research Institute, Inc.
Android : むンテント (ブロヌドキャスト)
• ブロヌドキャスト (Broadcast) は、システムやアプリが
発生させたむベントを受信するための仕組み
– 登録された (原則ずしお) すべおの ブロヌドキャスト レシヌバ
(BroadcastReceiver) が起動され、そこでむベントが凊理される
24
システム
むンテントずブロヌドキャストによる
アプリ (バッテリヌ節玄アプリ) の䟋
sendBroadcast
Receiver ...
Receiver ...
画面を自動的に
暗くする etc...
Receiver
Fourteenforty Research Institute, Inc.
Android : 順序付きのブロヌドキャスト
• ブロヌドキャストには、“順序なし” ず “順序付き” のものがある
– システム䞭では、䞀郚のむベントだけが “順序付き”
• 順序付きのブロヌドキャストには、次の性質がある
– 埌述する優先床の順番に呌び出される (同じ優先床なら順䞍同)
– abortBroadcast ずいう操䜜で、ブロヌドキャストが
優先床の䜎い他のレシヌバに枡らないようにするこずができる
25
Receiver
P=999
Receiver
P=100
Receiver
P=0
Normal: sendBroadcast
高優先床 䜎
O. Receiver
P=0
O. Receiver
P=100
O. Receiver
P=999
abortBroadcast
Ordered: sendOrderedBroadcast
Fourteenforty Research Institute, Inc.
Android : むンテント フィルタ
• Windows に䟋えるず関連付けの仕組みに近いが、
Android のむンテント フィルタ (Intent Filter) はさらに柔軟である
– アクション (䜕をする/受け取るか), カテゎリ (どう実行するか)
– ファむルの皮類 (MIME タむプ), 堎所 
• AndroidManifest.xml に蚘述しおおく
– システムがすべおのむンテント フィルタを管理し、
必芁なアクティビティやブロヌドキャストレシヌバを起動する
26
Activity A
MIME タむプ : text/plain
アクション : 送る
Broadcast
Receiver
アクション : バッテリヌ䞍足
Activity B
プロトコル : http
ホスト : mypict.com
アクション : 閲芧する
䟋: テキストをアップロヌドするアプリ 䟋: 特定サむト閲芧専甚アプリ 䟋: バッテリヌ節玄アプリ
Fourteenforty Research Institute, Inc.
Android : むンテント フィルタの優先床
• むンテント フィルタには、その優先床を蚭定できる
– 高優先床のむンテント フィルタに察応するアクティビティや
ブロヌドキャスト レシヌバが優先される
– ブロヌドキャストの堎合には、“順序付き” のものだけが
優先床順に呌び出される (そうでない堎合には順䞍同)
27
Activity
P=0P=100
ActivityActivity
P=999
高優先床 䜎
O. Receiver
P=0
O. Receiver
P=100
O. Receiver
P=999
abortBroadcast
Fourteenforty Research Institute, Inc.
たずめ : 解説した項目
• Android アプリ
– パッケヌゞ / マニフェスト
– パヌミッション
• むンテントを䜿う Android 独自の方匏
– アクティビティ (Activity)
– ブロヌドキャスト (Broadcast)
• 順序付きのもの
• 順序付きでないもの
• むンテントを補助するむンテント フィルタ
– その自由床ず、優先床の仕組み
28
Fourteenforty Research Institute, Inc.
脅嚁の珟状、察抗策の限界
Android マルりェアや保護の珟状ず問題
29
Fourteenforty Research Institute, Inc.
Android セキュリティず脅嚁の珟状
• 既に耇数のマルりェアず、幟぀かのりむルス察策゜フトが存圚する
– マルりェアの脅嚁はどのようなものか
– りむルス察策゜フトで守れるのか
• りむルス察策゜フトずその動䜜
– 暩限䞍足ずいう臎呜的な問題
• マルりェア
– 珟状のトレンドず具䜓的な動䜜
• root 化の問題
– 砎られる、Android のセキュリティ機胜
– 察抗策ず、それでも解決しない問題
30
Fourteenforty Research Institute, Inc.
りむルス察策゜フト : 珟状
• 珟圚の Android りむルス察策゜フトは、倧量のむンテント フィルタを
利甚した郚分的なリアルタむム保護を実珟しおいる
– ダりンロヌドしたファむルやアプリのスキャン
– SMS や E-メヌルのスキャン
31
Anti-Virus
SD カヌドの挿入
SMS の受信
端末の起動 ...
パッケヌゞの
むンストヌル
䞀郚のファむルを開く
Fourteenforty Research Institute, Inc.
りむルス察策゜フト : 珟状ず問題
• りむルス察策゜フトは、䞀般暩限で動䜜する
– PC 甚のものは、䞀般的に管理者暩限を䜿甚する
• 䞀般暩限で動䜜する問題
– 保護できない郚分が倚数存圚する
(ファむルアクセスのチェックや異垞動䜜の怜出など)
– マルりェアを排陀できない可胜性がある (埌述)
32
SD カヌドの挿入
SMS の受信
端末の起動 ...
...
...
Anti-Virus
りェブペヌゞのリアルタむムスキャン
開かれるファむルすべおの怜蚌
...
Fourteenforty Research Institute, Inc.
マルりェア : 珟状のトレンド
• 珟状ほが党おが、次のどちらかに圓おはたる
– スパむりェア : 重芁な情報を搟取する
– バックドア / ボット : コマンドを受け取っお悪意ある掻動を行う、
定期的に新たなマルりェアをダりンロヌドする...
• 䞭囜囜内を察象にした / 䞭囜を匷く瀺唆するマルりェアが倚い
– 䞭囜の携垯ネットワヌクを瀺す APN や 電話番号
– 盗み出した情報を SMS で送信する際に、
䞭囜語のメッセヌゞを組み立おる
• 倖郚ぞの / 倖郚からの情報のやりずり
– むンタヌネットを経由した HTTP 通信ず
SMS を䜿甚したメッセヌゞ通信が非垞に倚い
33
Fourteenforty Research Institute, Inc.
マルりェア : むンテント フィルタの䜿甚
• マルりェアも情報を盗み出したり、あるいはシステムに
留たり続けるためにブロヌドキャストを䜿甚する
– 解析したマルりェア 9 皮のうち䞀皮 (FakePlayer) を陀き、
高い優先床をブロヌドキャストのむンテント フィルタに蚭定しおいる
• SMS の受信は、“順序付き” のブロヌドキャストである
– abortBroadcast を䜿甚するず、暙準の SMS アプリでは
受信したメッセヌゞが芋えなくなる
– これを悪甚し、䞀郚のマルりェアは SMS ずしお受信したコマンドが
他のアプリからは芋えないようにする
34
Fourteenforty Research Institute, Inc.
マルりェア : 進化の珟状
• 本栌的な難読化が斜されおいる Android マルりェアは
珟圚のずころ確認されおいない
– 珟状のマルりェアはそれほど掗緎されおいない (比范的解析が容易)
• ただし、技術的には急激に進歩し぀぀ある
– DroidDream
root 化を行った䞊で定期的にパッケヌゞ (APK ファむル) を
ダりンロヌド、自動でむンストヌルする
– Plankton
倖郚から DEX ファむル (Dalvik バむトコヌド) をダりンロヌドし、
クラスロヌダヌずいう Java の仕組みを悪甚しお動的に実行する
• root 化を利甚するマルりェアをはじめ、
掗緎されたマルりェアが問題になっおいくず思われる
35
Fourteenforty Research Institute, Inc.
root 化
• ナヌザヌ自身が Android 端末の制限を解陀するために
自ら脆匱性を突いお root (管理者) 暩限を取埗するこずがある
• root 化によく䜿甚される脆匱性
– CVE-2009-1185 (exploid)
• udev (デバむス管理) における䞍適切な netlink メッセヌゞのチェック
– CVE-2010-EASY (rage against the cage)
• 正匏な CVE 番号ではない (exploit 補䜜者による名称)
• adb における、リ゜ヌス䞍足時の䞍適切な setuid の䜿甚
– CVE-2011-1149 (psneuter)
• ashmem (Android 共有メモリ) におけるアクセスチェックの䞍備
– CVE-2011-1823 (Gingerbreak)
• vold (ボリュヌム マネヌゞャ) における䞍適切な netlink メッセヌゞのチェック
36
Fourteenforty Research Institute, Inc.
root 化 : 問題
• マルりェアも党く同じ脆匱性を突くこずができおしたう
– マルりェアがシステム内の特暩を取埗するこずで、
りむルス察策゜フトが手出しできないようにしおしたう
• たた root 化によっお、Android が持぀保護の仕組みが砎れおしたう
– アクティビティに察応するむンテント フィルタの優先床
– パヌミッションの仕組みの保護
• これらがマルりェアによっお実行されるず、りむルス察策゜フトが
察抗できなくなっおしたう可胜性がある
37
Fourteenforty Research Institute, Inc.
root 化による問題 : 優先床の保護 (1)
• 最も高い優先床を持぀アクティビティが最優先で䜿甚される
– 䟋: りェブサむトぞのアクセスをフックする
– 䜎い優先床を持぀アクティビティが呌び出されない (メニュヌなし)
• マルりェアなどによる乗っ取りを防ぐための優先床保護の仕組み
– システム領域 “以倖” にむンストヌルされたアプリは
デフォルト (0) より䞊の優先床を持぀こずができない
38
System Activity
P=1P=100
System ActivityUser Activity
P=999
理想
User Activity
P=0 999P=1
System ActivitySystem Activity
P=100
珟実
高優先床 䜎
Fourteenforty Research Institute, Inc.
root 化による問題 : 優先床の保護 (2)
• root 化によっお、マルりェアをシステム領域※ に
むンストヌルするこずが可胜になっおしたう
– システム領域にむンストヌルされたアプリは Android システムの
䞀郚ずしお信頌され、優先床の保護が無効になる
– 特定のファむルを開くこずを防止したり、
ある皮のフィッシングを実行できるようになる
• 条件 : root 化の䞊でシステム領域に曞き蟌みやマりントができるこず
39
System Activity
P=1P=100
System ActivityMalware Activity
P=999
マルりェアをシステム領域にむンストヌルする
高優先床 䜎
※ カスタマむズされおいない Android においおは、/system/app, /system/framework, /vendor/app の 3 箇所
Fourteenforty Research Institute, Inc.
root 化の悪甚 : フィッシング
• りェブサむトぞのアクセスをマルりェアにリダむレクトするこずができる
– ナヌザヌがほずんど気づけない
– アクティビティの UI をブラりザず同じにすれば、
ほずんど本物のりェブサむト、ブラりザず区別できなくなる
• りむルス察策゜フトはこの手法ぞの察抗策を持たない
40
プロトコル : https
ホスト : www.somebank.com
アクション : 閲芧する
優先床 : 999
Malware Activity
Browsing:
somebank.com
Browser
高優先床の
Activity を䜿甚
Malware.apk
Fourteenforty Research Institute, Inc.
root 化による問題 : パヌミッションの保護 (1)
• 䞀郚のパヌミッションは、䞀般暩限のアプリからは芁求できない
– 䟋えば䞊蚘のパッケヌゞを匷制むンストヌルするための暩限
– 悪甚された堎合の危険性が倧きいため、
䞀郚のパヌミッションはシステムアプリからのみ䜿甚できる
– マニフェスト (AndroidManifest.xml) にパヌミッションを
定矩しおも、むンストヌル時に拒吊される
41
User App System App
Permission: INSTALL_PACKAGES
Fourteenforty Research Institute, Inc.
root 化による問題 : パヌミッションの保護 (2)
• root 化されたアプリに察しおは、パヌミッションの仕組みが働かない
– 保護されたパヌミッションであっおも、その暩限を埗るこずができる
• これによっおできるこずは 
– パッケヌゞの匷制むンストヌル, アンむンストヌル
– 優先アプリケヌションの再蚭定など
• 条件 : root 化のみ
42
Malware System App
Permission: INSTALL_PACKAGES
user = root
Fourteenforty Research Institute, Inc.
root 化の悪甚 : サむレントむンストヌル
• INSTALL_PACKAGE パヌミッションをマルりェアが獲埗した堎合、
ナヌザヌの蚱可なく任意のパッケヌゞがむンストヌルされおしたう
– 通垞はむンストヌルする前に譊告を受けるが、
この暩限を持぀堎合には䞀切譊告なしにむンストヌルできる
• root 暩限をパッケヌゞファむルに察しお即座に䞎えるこずで、
本来りむルス察策゜フトが行える察策を劚害するこずができる
43
Malware
PackageManager.installPackage
user = root
Permission: INSTALL_PACKAGE
Fourteenforty Research Institute, Inc.
root 化の悪甚 : システム領域の改倉
• root 暩限を悪甚しお、本来読み取り専甚の
システムパヌティションにマルりェアをむンストヌルする
• りむルス察策゜フトはマルりェアを削陀できない
– 読み取り専甚パヌティションにある䞊に、Android システムからは
システムアプリのひず぀ずしお認識されおしたう
44
/system partition /data partition
System App
System App
Malware
User Application
User Application
Anti-Virus Software
remove
Fourteenforty Research Institute, Inc.
root 化の悪甚 : りむルス察策゜フトの排陀
• マルりェアは root 化さえしおしたえば、りむルス察策゜フトよりも
はるかに匷力な暩限を行䜿するこずができる
– りむルス察策゜フトが自ら root 化の脆匱性を
利甚するこずには倫理䞊倧きな問題がある
– りむルス察策゜フトからはマルりェアを攻撃できない
• 逆にマルりェアはりむルス察策゜フトを攻撃するこずができる
– 匷制的なアンむンストヌル
– プロセスの停止
– プロセスやパッケヌゞの改倉による無力化など
45
Malware Anti-Virus
>
Fourteenforty Research Institute, Inc.
root 化の悪甚 : 察策ずその限界 (1)
• 脆匱性を積極的に発芋、陀去する
– 圓たり前に芋えるが、しかし脆匱性が発芋されお
10 ヶ月以䞊経過しおもそれが修正されおいない機皮が存圚する
(http://www.ipa.go.jp/about/technicalwatch/pdf/110622report.pdf)
• root ナヌザヌを含めお制限するセキュリティ機構
– SELinux, AppArmor, TOMOYO Linux...
– SHARP 補 Android 端末 : Deckard / Miyabi LSM
• システムパヌティションが䞍正にマりントされるこずを阻止
• ptrace (匷制的なデバッグ) の犁止
• chroot (仮想ファむルシステムの䜜成) の犁止など
– root 暩限を確保した攻撃者が必芁以䞊に
暩限を拡倧するこずを防止できる
46
Fourteenforty Research Institute, Inc.
root 化の悪甚 : 察策ずその限界 (2)
• root ナヌザヌの制限だけでは完党な察策にならない
– パヌミッションによる保護は root に察しおは無効化されおいる
– Dalvik ベヌスのアプリはすべお単䞀プロセスのクロヌンであるため、
既存のセキュア OS においおポリシヌで保護するこずが難しい
– りむルス察策゜フトの暩限は匱い䞀般暩限のたた
• Android 特有の事情を考慮した䞊で暩限の保護を行うこずが必芁
• 正圓なりむルス察策゜フトの暩限を、少なくずも
root 化したマルりェアず同等たで匕き䞊げられるこずが望たしい
47
Fourteenforty Research Institute, Inc.
たずめ
• Android 向けのマルりェアもりむルス察策゜フトも、
初期ず比べるず飛躍的に進化しおいる
– しかし珟状りむルス察策゜フトは䜎い暩限で動䜜しおおり、
限定的な保護しかできおいない
• root 化は Android のセキュリティ機構を砎り、
りむルス察策゜フトが手出しできないマルりェアを可胜にしおしたう
– 仮にりむルス察策゜フトがマルりェアを発芋できおも、
それを陀去、無害化するこずができない可胜性がある
– 察凊には暩限面での芋盎しや、Android 特有の事情を考慮した
新しい保護の仕組みが必芁ずされる
48
Fourteenforty Research Institute, Inc.
総括
Android は “守れる” か?
49
Fourteenforty Research Institute, Inc.
Android は守られおいるか? (1)
• 脆匱性攻撃
– Android は WebKit など倚数のネむティブラむブラリに䟝存しおおり、
ネむティブコヌド郚分は埓来ず同様に攻撃可胜である
– 本来 Android が基盀ずする Linux カヌネルの保護機胜は、
様々な理由によっお効果が半枛しおいる
• フレヌムワヌクビルド時のミス (DEP)
• メモリ削枛のための機胜 (Zygote, Prelinking)
– よっお脆匱性が存圚した堎合、
それを攻撃するのは珟状それほど難しくない
50
Fourteenforty Research Institute, Inc.
Android は守られおいるか? (2)
• マルりェア / りむルス察策゜フト
– マルりェアは珟状トロむの朚銬ずしおむンストヌルされ、
むンテント フィルタなどの仕組みを甚いるこずで情報を盗んだり、
あるいは悪意あるコマンドを受け取る
– root 化によっおシステムの保護をバむパスし、通垞出来ない
悪意ある行動を起こすこずが可胜になる (サむレントむンストヌルなど)
– りむルス察策゜フトは䞀般ナヌザヌの暩限で動䜜するため、
保護できない郚分があるばかりか、root 化されたマルりェアに察しお
手を出すこずができない
• 珟状、Android 端末を十分に守りきるこずはかなり難しい
51
Fourteenforty Research Institute, Inc.
これからのためにすべきこず (1)
• 技術的責任 : Android プロゞェクト
– セキュリティ機構を厳密なものに倉える
(root を特別扱いしないようにする)
• システムコヌルレベル (LSM)
• Android フレヌムワヌクのセキュア化
– 正圓なりむルス察策゜フトの保護を支揎する
• 䟋: 特別な眲名が成されたアプリに䞀定の特暩を䞎える
– メモリ保護機胜を匷化する
• Zygote や Prelinking の芋盎しやセキュリティ匷化
52
Fourteenforty Research Institute, Inc.
これからのためにすべきこず (2)
• 技術的責任 : 端末メヌカヌ
– 既存の脆匱性を玠早く修正し、アップデヌトを行う
(端末ナヌザヌが攻撃されるこずをいち早く防ぐ)
– フレヌムワヌクやネむティブプログラムをビルドする際の
コンパむルフラグに泚意を払う (-Wl,-z,noexecstack)
– 独自のカスタマむズを十分に怜蚌する
• Android のセキュリティ機構が砎れないよう
(あるいは正圓なプログラムの実行を阻害されないよう)
十分に泚意しお実装を行う
53
Fourteenforty Research Institute, Inc.
結論
• 珟状 Android の保護は十分でなく、たた脅嚁も氟濫しおいるが、
解決が䞍可胜な問題ではない
– ただし、利甚者は圓面泚意を必芁ずする
• Android プロゞェクト、端末メヌカヌ、セキュリティベンダヌなどが
協力しお Android のセキュリティを高めるこずに泚力すべき
54
Fourteenforty Research Institute, Inc.
ありがずうございたした
Fourteenforty Research Institute, Inc.
株匏䌚瀟 フォティヌンフォティ技術研究所
http://www.fourteenforty.jp
新技術開発宀 倧居 叞
<oi@fourteenforty.jp>
55

More Related Content

Similar to Inside Android Security

Mr201209 windows8 exploit_mitigation
Mr201209 windows8 exploit_mitigationMr201209 windows8 exploit_mitigation
Mr201209 windows8 exploit_mitigationFFRI, Inc.
 
Androidアプリ解析の基瀎 公開甚
Androidアプリ解析の基瀎 公開甚Androidアプリ解析の基瀎 公開甚
Androidアプリ解析の基瀎 公開甚
Lumin Hacker
 
Mr201303 trust zone
Mr201303 trust zoneMr201303 trust zone
Mr201303 trust zoneFFRI, Inc.
 
[JPCERT/CC POC Meeting] 研究玹介 + DLLハむゞャックの脆匱性
[JPCERT/CC POC Meeting] 研究玹介 + DLLハむゞャックの脆匱性[JPCERT/CC POC Meeting] 研究玹介 + DLLハむゞャックの脆匱性
[JPCERT/CC POC Meeting] 研究玹介 + DLLハむゞャックの脆匱性
Asuka Nakajima
 
OSS脆匱性スキャナヌ開発を始めた件に぀いお
OSS脆匱性スキャナヌ開発を始めた件に぀いおOSS脆匱性スキャナヌ開発を始めた件に぀いお
OSS脆匱性スキャナヌ開発を始めた件に぀いお
ssuser6c19e1
 
Windows 8 Developers カンファレンス
Windows 8 Developers カンファレンスWindows 8 Developers カンファレンス
Windows 8 Developers カンファレンスKaoru NAKAMURA
 
倱敗しないAndroidアプリ開発最前線
倱敗しないAndroidアプリ開発最前線倱敗しないAndroidアプリ開発最前線
倱敗しないAndroidアプリ開発最前線
Masahiro Hidaka
 
Software for Edge Heavy Computing @ INTEROP 2016 Tokyo
Software for Edge Heavy Computing @ INTEROP 2016 TokyoSoftware for Edge Heavy Computing @ INTEROP 2016 Tokyo
Software for Edge Heavy Computing @ INTEROP 2016 Tokyo
Shohei Hido
 
[Japan Tech summit 2017] DEP 003
[Japan Tech summit 2017]  DEP 003[Japan Tech summit 2017]  DEP 003
[Japan Tech summit 2017] DEP 003
Microsoft Tech Summit 2017
 
Fighting advanced malware using machine learning (Japanese)
Fighting advanced malware using machine learning (Japanese)Fighting advanced malware using machine learning (Japanese)
Fighting advanced malware using machine learning (Japanese)
FFRI, Inc.
 
闘うIT゚ンゞニアのためのLinuxセキュリティ講座
闘うIT゚ンゞニアのためのLinuxセキュリティ講座闘うIT゚ンゞニアのためのLinuxセキュリティ講座
闘うIT゚ンゞニアのためのLinuxセキュリティ講座
Toshiharu Harada, Ph.D
 
Bitvisorをベヌスずした既存Windowsのドラむバメモリ保護
Bitvisorをベヌスずした既存Windowsのドラむバメモリ保護Bitvisorをベヌスずした既存Windowsのドラむバメモリ保護
Bitvisorをベヌスずした既存Windowsのドラむバメモリ保護
Kuniyasu Suzaki
 
【Interop tokyo 2014】 ビッグデヌタを掻甚し、被害を予芋! シスコの新たなセキュリティ運甚モデル
【Interop tokyo 2014】 ビッグデヌタを掻甚し、被害を予芋! シスコの新たなセキュリティ運甚モデル【Interop tokyo 2014】 ビッグデヌタを掻甚し、被害を予芋! シスコの新たなセキュリティ運甚モデル
【Interop tokyo 2014】 ビッグデヌタを掻甚し、被害を予芋! シスコの新たなセキュリティ運甚モデルシスコシステムズ合同䌚瀟
 
Permissionの日本語でお
Permissionの日本語でおPermissionの日本語でお
Permissionの日本語でお
youten ようおん
 
MeeGo Seminar Winter Porting 20101209
MeeGo Seminar Winter Porting 20101209MeeGo Seminar Winter Porting 20101209
MeeGo Seminar Winter Porting 20101209
Mitz Amano
 
゜フトりェア蚭蚈原則【SOLID】を孊ぶ #2 むンタヌフェむス分離の原則.pdf
゜フトりェア蚭蚈原則【SOLID】を孊ぶ #2 むンタヌフェむス分離の原則.pdf゜フトりェア蚭蚈原則【SOLID】を孊ぶ #2 むンタヌフェむス分離の原則.pdf
゜フトりェア蚭蚈原則【SOLID】を孊ぶ #2 むンタヌフェむス分離の原則.pdf
耕二 阿郚
 
Css2013 api distance
Css2013 api distanceCss2013 api distance
Css2013 api distance
Info_SecureBrain
 
IT ゚ンゞニアのための 流し読み Microsoft 365 - 入門Microsoft Defender for Endpoint クロスプラットフ...
IT ゚ンゞニアのための 流し読み Microsoft 365 - 入門Microsoft Defender for Endpoint クロスプラットフ...IT ゚ンゞニアのための 流し読み Microsoft 365 - 入門Microsoft Defender for Endpoint クロスプラットフ...
IT ゚ンゞニアのための 流し読み Microsoft 365 - 入門Microsoft Defender for Endpoint クロスプラットフ...
TAKUYA OHTA
 
AndroidでのAntiVirus
AndroidでのAntiVirusAndroidでのAntiVirus
AndroidでのAntiVirusShoko Araki
 
DLL読み蟌みの問題を読み解く
DLL読み蟌みの問題を読み解くDLL読み蟌みの問題を読み解く
DLL読み蟌みの問題を読み解く
JPCERT Coordination Center
 

Similar to Inside Android Security (20)

Mr201209 windows8 exploit_mitigation
Mr201209 windows8 exploit_mitigationMr201209 windows8 exploit_mitigation
Mr201209 windows8 exploit_mitigation
 
Androidアプリ解析の基瀎 公開甚
Androidアプリ解析の基瀎 公開甚Androidアプリ解析の基瀎 公開甚
Androidアプリ解析の基瀎 公開甚
 
Mr201303 trust zone
Mr201303 trust zoneMr201303 trust zone
Mr201303 trust zone
 
[JPCERT/CC POC Meeting] 研究玹介 + DLLハむゞャックの脆匱性
[JPCERT/CC POC Meeting] 研究玹介 + DLLハむゞャックの脆匱性[JPCERT/CC POC Meeting] 研究玹介 + DLLハむゞャックの脆匱性
[JPCERT/CC POC Meeting] 研究玹介 + DLLハむゞャックの脆匱性
 
OSS脆匱性スキャナヌ開発を始めた件に぀いお
OSS脆匱性スキャナヌ開発を始めた件に぀いおOSS脆匱性スキャナヌ開発を始めた件に぀いお
OSS脆匱性スキャナヌ開発を始めた件に぀いお
 
Windows 8 Developers カンファレンス
Windows 8 Developers カンファレンスWindows 8 Developers カンファレンス
Windows 8 Developers カンファレンス
 
倱敗しないAndroidアプリ開発最前線
倱敗しないAndroidアプリ開発最前線倱敗しないAndroidアプリ開発最前線
倱敗しないAndroidアプリ開発最前線
 
Software for Edge Heavy Computing @ INTEROP 2016 Tokyo
Software for Edge Heavy Computing @ INTEROP 2016 TokyoSoftware for Edge Heavy Computing @ INTEROP 2016 Tokyo
Software for Edge Heavy Computing @ INTEROP 2016 Tokyo
 
[Japan Tech summit 2017] DEP 003
[Japan Tech summit 2017]  DEP 003[Japan Tech summit 2017]  DEP 003
[Japan Tech summit 2017] DEP 003
 
Fighting advanced malware using machine learning (Japanese)
Fighting advanced malware using machine learning (Japanese)Fighting advanced malware using machine learning (Japanese)
Fighting advanced malware using machine learning (Japanese)
 
闘うIT゚ンゞニアのためのLinuxセキュリティ講座
闘うIT゚ンゞニアのためのLinuxセキュリティ講座闘うIT゚ンゞニアのためのLinuxセキュリティ講座
闘うIT゚ンゞニアのためのLinuxセキュリティ講座
 
Bitvisorをベヌスずした既存Windowsのドラむバメモリ保護
Bitvisorをベヌスずした既存Windowsのドラむバメモリ保護Bitvisorをベヌスずした既存Windowsのドラむバメモリ保護
Bitvisorをベヌスずした既存Windowsのドラむバメモリ保護
 
【Interop tokyo 2014】 ビッグデヌタを掻甚し、被害を予芋! シスコの新たなセキュリティ運甚モデル
【Interop tokyo 2014】 ビッグデヌタを掻甚し、被害を予芋! シスコの新たなセキュリティ運甚モデル【Interop tokyo 2014】 ビッグデヌタを掻甚し、被害を予芋! シスコの新たなセキュリティ運甚モデル
【Interop tokyo 2014】 ビッグデヌタを掻甚し、被害を予芋! シスコの新たなセキュリティ運甚モデル
 
Permissionの日本語でお
Permissionの日本語でおPermissionの日本語でお
Permissionの日本語でお
 
MeeGo Seminar Winter Porting 20101209
MeeGo Seminar Winter Porting 20101209MeeGo Seminar Winter Porting 20101209
MeeGo Seminar Winter Porting 20101209
 
゜フトりェア蚭蚈原則【SOLID】を孊ぶ #2 むンタヌフェむス分離の原則.pdf
゜フトりェア蚭蚈原則【SOLID】を孊ぶ #2 むンタヌフェむス分離の原則.pdf゜フトりェア蚭蚈原則【SOLID】を孊ぶ #2 むンタヌフェむス分離の原則.pdf
゜フトりェア蚭蚈原則【SOLID】を孊ぶ #2 むンタヌフェむス分離の原則.pdf
 
Css2013 api distance
Css2013 api distanceCss2013 api distance
Css2013 api distance
 
IT ゚ンゞニアのための 流し読み Microsoft 365 - 入門Microsoft Defender for Endpoint クロスプラットフ...
IT ゚ンゞニアのための 流し読み Microsoft 365 - 入門Microsoft Defender for Endpoint クロスプラットフ...IT ゚ンゞニアのための 流し読み Microsoft 365 - 入門Microsoft Defender for Endpoint クロスプラットフ...
IT ゚ンゞニアのための 流し読み Microsoft 365 - 入門Microsoft Defender for Endpoint クロスプラットフ...
 
AndroidでのAntiVirus
AndroidでのAntiVirusAndroidでのAntiVirus
AndroidでのAntiVirus
 
DLL読み蟌みの問題を読み解く
DLL読み蟌みの問題を読み解くDLL読み蟌みの問題を読み解く
DLL読み蟌みの問題を読み解く
 

More from FFRI, Inc.

Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARMAppearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
FFRI, Inc.
 
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARMAppearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
FFRI, Inc.
 
TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017) TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017)
FFRI, Inc.
 
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
FFRI, Inc.
 
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017) An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
FFRI, Inc.
 
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016) Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
FFRI, Inc.
 
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
FFRI, Inc.
 
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
FFRI, Inc.
 
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
FFRI, Inc.
 
Black Hat USA 2016 Survey Report (FFRI Monthly Research 2016.8)
Black Hat USA 2016  Survey Report (FFRI Monthly Research 2016.8)Black Hat USA 2016  Survey Report (FFRI Monthly Research 2016.8)
Black Hat USA 2016 Survey Report (FFRI Monthly Research 2016.8)
FFRI, Inc.
 
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7) About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
FFRI, Inc.
 
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
FFRI, Inc.
 
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
FFRI, Inc.
 
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
FFRI, Inc.
 
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
FFRI, Inc.
 
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
FFRI, Inc.
 
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
FFRI, Inc.
 
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
FFRI, Inc.
 
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
FFRI, Inc.
 
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
FFRI, Inc.
 

More from FFRI, Inc. (20)

Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARMAppearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
 
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARMAppearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
Appearances are deceiving: Novel offensive techniques in Windows 10/11 on ARM
 
TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017) TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017)
 
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
Android Things Security Research in Developer Preview 2 (FFRI Monthly Researc...
 
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017) An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
An Overview of the Android Things Security (FFRI Monthly Research Jan 2017)
 
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016) Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
Black Hat Europe 2016 Survey Report (FFRI Monthly Research Dec 2016)
 
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
An Example of use the Threat Modeling Tool (FFRI Monthly Research Nov 2016)
 
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
STRIDE Variants and Security Requirements-based Threat Analysis (FFRI Monthly...
 
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
Introduction of Threat Analysis Methods(FFRI Monthly Research 2016.9)
 
Black Hat USA 2016 Survey Report (FFRI Monthly Research 2016.8)
Black Hat USA 2016  Survey Report (FFRI Monthly Research 2016.8)Black Hat USA 2016  Survey Report (FFRI Monthly Research 2016.8)
Black Hat USA 2016 Survey Report (FFRI Monthly Research 2016.8)
 
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7) About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
About security assessment framework “CHIPSEC” (FFRI Monthly Research 2016.7)
 
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
Black Hat USA 2016 Pre-Survey (FFRI Monthly Research 2016.6)
 
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
Black Hat Asia 2016 Survey Report (FFRI Monthly Research 2016.4)
 
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...
 
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
CODE BLUE 2015 Report (FFRI Monthly Research 2015.11)
 
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
Latest Security Reports of Automobile and Vulnerability Assessment by CVSS v3...
 
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
Black Hat USA 2015 Survey Report (FFRI Monthly Research 201508)
 
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
A Survey of Threats in OS X and iOS(FFRI Monthly Research 201507)
 
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
Security of Windows 10 IoT Core(FFRI Monthly Research 201506)
 
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
Trend of Next-Gen In-Vehicle Network Standard and Current State of Security(F...
 

Recently uploaded

キンドリル ネットワヌクアセスメントサヌビスご玹介 今のネットワヌク環境は倧䞈倫 調査〜察策たでご支揎したす
キンドリル ネットワヌクアセスメントサヌビスご玹介 今のネットワヌク環境は倧䞈倫 調査〜察策たでご支揎したすキンドリル ネットワヌクアセスメントサヌビスご玹介 今のネットワヌク環境は倧䞈倫 調査〜察策たでご支揎したす
キンドリル ネットワヌクアセスメントサヌビスご玹介 今のネットワヌク環境は倧䞈倫 調査〜察策たでご支揎したす
Takayuki Nakayama
 
ReonHata_䟿利の副䜜甚に気づかせるための発想支揎手法の評䟡---行為の増枛の提瀺による気づきぞの圱響---
ReonHata_䟿利の副䜜甚に気づかせるための発想支揎手法の評䟡---行為の増枛の提瀺による気づきぞの圱響---ReonHata_䟿利の副䜜甚に気づかせるための発想支揎手法の評䟡---行為の増枛の提瀺による気づきぞの圱響---
ReonHata_䟿利の副䜜甚に気づかせるための発想支揎手法の評䟡---行為の増枛の提瀺による気づきぞの圱響---
Matsushita Laboratory
 
遺䌝的アルゎリズムず知識蒞留による倧芏暡蚀語モデルLLMの孊習ずハむパヌパラメヌタ最適化
遺䌝的アルゎリズムず知識蒞留による倧芏暡蚀語モデルLLMの孊習ずハむパヌパラメヌタ最適化遺䌝的アルゎリズムず知識蒞留による倧芏暡蚀語モデルLLMの孊習ずハむパヌパラメヌタ最適化
遺䌝的アルゎリズムず知識蒞留による倧芏暡蚀語モデルLLMの孊習ずハむパヌパラメヌタ最適化
t m
 
Humanoid Virtual Athletics Challenge2024 技術講習䌚 スラむド
Humanoid Virtual Athletics Challenge2024 技術講習䌚 スラむドHumanoid Virtual Athletics Challenge2024 技術講習䌚 スラむド
Humanoid Virtual Athletics Challenge2024 技術講習䌚 スラむド
tazaki1
 
This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
chiefujita1
 
「進化するアプリ むマ×ミラむ 生成AIアプリぞ続く道ず新時代のアプリずは」Interop24Tokyo APPS JAPAN B1-01講挔
「進化するアプリ むマ×ミラむ 生成AIアプリぞ続く道ず新時代のアプリずは」Interop24Tokyo APPS JAPAN B1-01講挔「進化するアプリ むマ×ミラむ 生成AIアプリぞ続く道ず新時代のアプリずは」Interop24Tokyo APPS JAPAN B1-01講挔
「進化するアプリ むマ×ミラむ 生成AIアプリぞ続く道ず新時代のアプリずは」Interop24Tokyo APPS JAPAN B1-01講挔
嶋 是䞀 (Yoshikazu SHIMA)
 
LoRaWAN 4チャンネル電流センサヌ・コンバヌタヌ CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサヌ・コンバヌタヌ CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサヌ・コンバヌタヌ CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサヌ・コンバヌタヌ CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
ロゞックから状態を分離する技術/蚭蚈ナむト2024 by わいずん @ytnobody
ロゞックから状態を分離する技術/蚭蚈ナむト2024 by わいずん @ytnobodyロゞックから状態を分離する技術/蚭蚈ナむト2024 by わいずん @ytnobody
ロゞックから状態を分離する技術/蚭蚈ナむト2024 by わいずん @ytnobody
azuma satoshi
 
ハむブリッドクラりド研究䌚_Hyper-VずSystem Center Virtual Machine Manager セッションMM
ハむブリッドクラりド研究䌚_Hyper-VずSystem Center Virtual Machine Manager セッションMMハむブリッドクラりド研究䌚_Hyper-VずSystem Center Virtual Machine Manager セッションMM
ハむブリッドクラりド研究䌚_Hyper-VずSystem Center Virtual Machine Manager セッションMM
osamut
 
論文玹介Deep Learning-Based Human Pose Estimation: A Survey
論文玹介Deep Learning-Based Human Pose Estimation: A Survey論文玹介Deep Learning-Based Human Pose Estimation: A Survey
論文玹介Deep Learning-Based Human Pose Estimation: A Survey
Toru Tamaki
 
生成AIがもたらすコンテンツ経枈圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経枈圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経枈圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経枈圏の新時代  The New Era of Content Economy Brought by Generative AI
Osaka University
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
harmonylab
 

Recently uploaded (12)

キンドリル ネットワヌクアセスメントサヌビスご玹介 今のネットワヌク環境は倧䞈倫 調査〜察策たでご支揎したす
キンドリル ネットワヌクアセスメントサヌビスご玹介 今のネットワヌク環境は倧䞈倫 調査〜察策たでご支揎したすキンドリル ネットワヌクアセスメントサヌビスご玹介 今のネットワヌク環境は倧䞈倫 調査〜察策たでご支揎したす
キンドリル ネットワヌクアセスメントサヌビスご玹介 今のネットワヌク環境は倧䞈倫 調査〜察策たでご支揎したす
 
ReonHata_䟿利の副䜜甚に気づかせるための発想支揎手法の評䟡---行為の増枛の提瀺による気づきぞの圱響---
ReonHata_䟿利の副䜜甚に気づかせるための発想支揎手法の評䟡---行為の増枛の提瀺による気づきぞの圱響---ReonHata_䟿利の副䜜甚に気づかせるための発想支揎手法の評䟡---行為の増枛の提瀺による気づきぞの圱響---
ReonHata_䟿利の副䜜甚に気づかせるための発想支揎手法の評䟡---行為の増枛の提瀺による気づきぞの圱響---
 
遺䌝的アルゎリズムず知識蒞留による倧芏暡蚀語モデルLLMの孊習ずハむパヌパラメヌタ最適化
遺䌝的アルゎリズムず知識蒞留による倧芏暡蚀語モデルLLMの孊習ずハむパヌパラメヌタ最適化遺䌝的アルゎリズムず知識蒞留による倧芏暡蚀語モデルLLMの孊習ずハむパヌパラメヌタ最適化
遺䌝的アルゎリズムず知識蒞留による倧芏暡蚀語モデルLLMの孊習ずハむパヌパラメヌタ最適化
 
Humanoid Virtual Athletics Challenge2024 技術講習䌚 スラむド
Humanoid Virtual Athletics Challenge2024 技術講習䌚 スラむドHumanoid Virtual Athletics Challenge2024 技術講習䌚 スラむド
Humanoid Virtual Athletics Challenge2024 技術講習䌚 スラむド
 
This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
 
「進化するアプリ むマ×ミラむ 生成AIアプリぞ続く道ず新時代のアプリずは」Interop24Tokyo APPS JAPAN B1-01講挔
「進化するアプリ むマ×ミラむ 生成AIアプリぞ続く道ず新時代のアプリずは」Interop24Tokyo APPS JAPAN B1-01講挔「進化するアプリ むマ×ミラむ 生成AIアプリぞ続く道ず新時代のアプリずは」Interop24Tokyo APPS JAPAN B1-01講挔
「進化するアプリ むマ×ミラむ 生成AIアプリぞ続く道ず新時代のアプリずは」Interop24Tokyo APPS JAPAN B1-01講挔
 
LoRaWAN 4チャンネル電流センサヌ・コンバヌタヌ CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサヌ・コンバヌタヌ CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサヌ・コンバヌタヌ CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサヌ・コンバヌタヌ CS01-LB 日本語マニュアル
 
ロゞックから状態を分離する技術/蚭蚈ナむト2024 by わいずん @ytnobody
ロゞックから状態を分離する技術/蚭蚈ナむト2024 by わいずん @ytnobodyロゞックから状態を分離する技術/蚭蚈ナむト2024 by わいずん @ytnobody
ロゞックから状態を分離する技術/蚭蚈ナむト2024 by わいずん @ytnobody
 
ハむブリッドクラりド研究䌚_Hyper-VずSystem Center Virtual Machine Manager セッションMM
ハむブリッドクラりド研究䌚_Hyper-VずSystem Center Virtual Machine Manager セッションMMハむブリッドクラりド研究䌚_Hyper-VずSystem Center Virtual Machine Manager セッションMM
ハむブリッドクラりド研究䌚_Hyper-VずSystem Center Virtual Machine Manager セッションMM
 
論文玹介Deep Learning-Based Human Pose Estimation: A Survey
論文玹介Deep Learning-Based Human Pose Estimation: A Survey論文玹介Deep Learning-Based Human Pose Estimation: A Survey
論文玹介Deep Learning-Based Human Pose Estimation: A Survey
 
生成AIがもたらすコンテンツ経枈圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経枈圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経枈圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経枈圏の新時代  The New Era of Content Economy Brought by Generative AI
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
 

Inside Android Security

  • 1. Fourteenforty Research Institute, Inc. Fourteenforty Research Institute, Inc. 内郚構造から探る Android ぞの脆匱性攻撃ずマルりェアの脅嚁 Inside Android Security Fourteenforty Research Institute, Inc. 株匏䌚瀟 フォティヌンフォティ技術研究所 http://www.fourteenforty.jp 新技術開発宀 倧居 叞 1
  • 2. Fourteenforty Research Institute, Inc. 背景 : Android ずマルりェア • Android が囜内のスマヌトフォン向け OS のシェアにおいお iOS を抑え銖䜍を獲埗したこずが報道される (2011幎5月, 7月) • 䞀方で、Android におけるマルりェアの問題は深刻になり぀぀ある – AdaptiveMobile (1) によれば、2010幎の Android マルりェア 感染件数は前幎比 4 倍以䞊ずなった (2010幎12月) – 通垞の方法では削陀できない Android マルりェアが 盞次いで発芋される (2011幎3月, 6月) • 耇数のベンダから、りむルス察策を含む モバむルセキュリティ補品が発売される (䞻芁なものは 2011幎3月) – Android は、PC ず同じくセキュリティ補品で 守る必芁のある端末になり぀぀ある 2 (1) http://www.adaptivemobile.com/
  • 3. Fourteenforty Research Institute, Inc. 背景 : Android ず脆匱性攻撃 • 䞀般的な OS においおは察抗機胜の敎備が進んおいる (2003幎) • iOS の堎合: JailbreakMe (2007幎) – ブラりザから iPhone などの端末の管理者暩限を 取埗し、堎合によっおは悪甚できるこずを蚌明した • Android の堎合: DroidDream (2011幎3月) – システム内郚の脆匱性を䜿甚し、通垞の方法では 削陀できない領域にバックドアアプリをむンストヌルする • 脆匱性攻撃によっお悪意あるコヌドを実行する䜙地がある 3
  • 4. Fourteenforty Research Institute, Inc. 珟状の課題 • 脆匱性攻撃 – 倖郚から攻撃できるのか – 攻撃を防ぐような措眮は取られおいるのか • マルりェア – 珟状どのようにシステムに入り蟌んでいるか – 悪意ある行動を起こせる範囲は? • りむルス察策゜フト – どのように動䜜するか – これで Android 端末を守れるのか • これらに぀いお、䞻に技術的な偎面から芋おいく 4
  • 5. Fourteenforty Research Institute, Inc. アゞェンダ • 䜎レむダヌのセキュリティ – Linux カヌネル / Android ベヌスシステム • Android アプリケヌション レむダヌの仕組み – パッケヌゞ – パヌミッション – むンテント / アクティビティ / ブロヌドキャスト • 脅嚁ずそれぞの察抗策 – マルりェア – root 化 – りむルス察策゜フトずその問題 5
  • 6. Fourteenforty Research Institute, Inc. 䜎レむダヌのセキュリティ Linux カヌネルのメモリ保護機構ず Android における珟状 6
  • 7. Fourteenforty Research Institute, Inc. 䜎レむダヌにおけるセキュリティの意矩 • Android アプリは Java で曞かれおいるが、 それでも倚くのネむティブコヌドに䟝存しおいる – Linux カヌネル – Dalvik VM – WebKit • Android アプリは自らネむティブコヌドを実行できる – 安党でないコヌドによる危険性 – マルりェア実行や exploit の危険性 • Android においおは、䜎レむダヌの郚分である Linux カヌネルや フレヌムワヌクのセキュリティが極めお重芁である。 7
  • 8. Fourteenforty Research Institute, Inc. 䜎レむダヌのセキュリティ機胜 Android -2.2 Android 2.3-,3.0- 備考 DEP (スタック) ×(1) ○(1) 察応: iOS 2.0-DEP (その他) ×(2) ○ W^X の匷制 × × ASLR (スタック) ○ ○ 察応: iOS 4.3 ASLR (ヒヌプ) × × ASLR (モゞュヌル) × × 郚分的察応: iOS 4.3 (1) ネむティブアプリケヌションの堎合コンパむルフラグによっお異なるが、 ここでは察応するビルド環境におけるデフォルトの蚭定でコンパむルした堎合の結果を瀺す。 (2) システムコヌルの匕数に䟝存する。ここでは移怍性のある䞀般的な䜿甚法 (匕数) における結果を瀺す。 8
  • 9. Fourteenforty Research Institute, Inc. セキュリティ機胜 : DEP • ハヌドりェア的にコヌド (実行可胜) ずデヌタ (実行䞍胜) 領域を区別し、 攻撃者によっお送り蟌たれたコヌドが実行されるこずを阻止する • Linux カヌネルの機胜だが、互換性のために無効にされる堎合がある – プログラムビルド時のオプションに –Wl,-z,noexecstack がない堎合 – このずきプロセスの互換性フラグ (read-implies-exec) により、 DEP が実質的に無効化されおしたう • Android 2.2 以前のフレヌムワヌク (指定されるビルド時のオプション) に 互換性フラグの問題があったが、2.3 で解決 9 Memory Code Data Code Data OK ExecuteExecute
  • 10. Fourteenforty Research Institute, Inc. セキュリティ機胜 : W^X の匷制 • 新たなコヌドを䞊曞きできる、曞き換え可胜なコヌド領域を䜜成しない – コヌド領域が曞き換え可胜だず、そこを攻撃者に突かれおしたう • 暙準の Linux カヌネルには、W^X を厳密に 匷制する機胜が存圚しない (PaX (1) パッチなどを必芁ずする) – Linux をベヌスずする Android も同様 – Android には JIT があるが、その堎合であっおも W^X を匷制するこずは十分可胜だず考えられる (䟋: iOS の WebKit) 10 Memory Code DataData OK Write Evil Code Write (1) http://pax.grsecurity.net/
  • 11. Fourteenforty Research Institute, Inc. セキュリティ機胜 : ASLR • メモリの配眮をランダム化するこずで、 特定のメモリアドレスを狙った攻撃を圓たりにくくする • Android で䜿甚する Linux カヌネルのデフォルト蚭定では、 ヒヌプ以倖のメモリをランダム化するようになっおいる – スタックはこれにより、比范的安党になる – しかし実際には、実行可胜モゞュヌルはカヌネルの セキュリティ機胜を無芖しおランダム化されない (埌述の Prelinking による) 11 Target TargetTarget TargetTarget TargetTarget ? Memory ?? ?
  • 12. Fourteenforty Research Institute, Inc. セキュリティ䞊の懞念 : Zygote 12 ModuleModule Module • メモリ削枛のために、すべおの Dalvik ベヌス アプリはたったひず぀のプロセス “Zygote” の クロヌンずしお起動する – “Zygote” においお互換性フラグが 有効になった堎合、DEP が無効化される – クロヌン間で実行可胜モゞュヌルのアドレスは 共通であるため、ASLR も倧幅に匱䜓化 • ASLR に関しおは、Prelinking によっお さらに匱められおしたう
  • 13. Fourteenforty Research Institute, Inc. セキュリティ䞊の懞念 : Prelinking • メモリ削枛のための Prelinking 機胜によっお、 本来ランダム化されるはずの実行可胜モゞュヌルのアドレスは フレヌムワヌクビルド時に蚭定されたものに固定されおしたう – 同じ機皮、同じバヌゞョンなら、必ず同じアドレスに配眮される – ラむブラリなどに察する ASLR の事実䞊の無効化 – return-into-libc や ROP などの、掗緎された、 特定アドレスを狙う攻撃が極めお容易になっおしたう • メモリ削枛のための Zygote ず Prelinking は、 本来 Linux カヌネルが持぀セキュリティ機胜を半枛しおしたう。 13 Module Memory Module Module
  • 14. Fourteenforty Research Institute, Inc. セキュリティ䞍備の実䟋 : V8 Engine • ブラりザ (WebKit) に結び぀いた V8 Engine は、特定のメモリ領域を 読み曞きおよび実行可胜 (rwx) で確保する (JavaScript 実行のため) – 実装においお W^X の原則が培底されおいない – 悪意のあるコヌドを実行するのに利甚されおしたう可胜性がある • ブラりザ (WebKit) を内郚利甚するすべおのアプリが 同じリスクを背負うこずになる 14 Memory Data Evil Code Write and Execute Code Data
  • 15. Fourteenforty Research Institute, Inc. たずめ • Linux カヌネルが持぀セキュリティ機胜は、 最新の Android においおも十分に機胜しおいるずはいえない – ネむティブコヌド郚分が狙われた堎合、 高い確率で攻撃に成功しおしたう危険性がある • 䞍適切な実装やビルド蚭定は解決の䜙地がある • Android 独自のメモリ削枛の仕組みは メモリ保護の仕組みを倧幅に匱䜓化する – モバむル CPU の性胜向䞊によっお改善しおいく䜙地がある 15
  • 16. Fourteenforty Research Institute, Inc. アプリケヌションレむダヌの 独自の仕組み Android 独自の機構はどのように動䜜するか 16
  • 17. Fourteenforty Research Institute, Inc. Android アプリケヌションの仕組みずは? • 䞀般の OS におけるアプリケヌションの䜍眮づけずは党く異なる – むンテントを利甚したアプリケヌション (アプリ) 同士の連携が可胜 • Android セキュリティを知るには、 これら独自の仕組みをある皋床理解しおおく必芁がある – パッケヌゞずマニフェスト – パヌミッション – むンテント機構 • アクティビティ (Activity) • ブロヌドキャスト (Broadcast) • ... • ここでは Android における機構の倧たかな仕組みを解説する。 17
  • 18. Fourteenforty Research Institute, Inc. Android : アプリの仕組み • アプリは “パッケヌゞ” に栌玍される • パッケヌゞ内のクラスが “どのように呌び出されるべきか” を あらかじめ登録しおおき、䞀定のルヌルでシステムから呌び出される – アクティビティ (Activity) – ブロヌドキャスト (Broadcast) – ... 18 Activity Broadcast Receiver Invoke Application Call on Event AndroidManifest.xml Android System Install Package.apk
  • 19. Fourteenforty Research Institute, Inc. Android : パッケヌゞ • パッケヌゞ自䜓は単なる ZIP アヌカむブ • AndroidManifest.xml (マニフェスト) – Android アプリの情報やシステムからどのように呌び出されるか、 必芁ずする暩限などの情報を栌玍する – むンストヌル埌には倉曎できない – 怜蚌が容易 19 APK File (ZIP format) AndroidManifest.xml (Manifest) classes.dex (Program) lib/armeabi/* (Native code) ...
  • 20. Fourteenforty Research Institute, Inc. Android : パッケヌゞ/パヌミッション • アプリの動䜜に必芁な「暩限」をたずめたもの – INTERNET (むンタヌネットぞの接続) – READ_PHONE_STATE (電話番号や状態を取埗) – Android 2.3.3 の堎合、合わせお 100 個以䞊が存圚する • 必芁なパヌミッションがない操䜜は拒吊される • パヌミッションさえあれば、ほずんど䜕でもできる 20 App1 App2 Permission: INTERNET The Internet
  • 21. Fourteenforty Research Institute, Inc. Android : むンテント • むンテントず呌ばれる機構を甚いおアプリ間での連携を行う – 操䜜内容、察象を含んだメッセヌゞを送受信 • むンテント機構は様々な甚途に甚いられ、極めお重芁な䜍眮を占める – アプリの盞互呌び出し – システムむベントの通知、受信 21 “メモ” アプリ (アプリの遞択) “メヌル” アプリ “Twitter” アプリ Twitter 投皿 むンテントず耇数のアクティビティによる アプリ連携の䟋 startActivity
  • 22. Fourteenforty Research Institute, Inc. Android : むンテント (アクティビティ) • アクティビティ (Activity) は小さなアプリケヌションのように動く、 ナヌザヌが “䜕かを行う” ひずかたたりの単䜍をモゞュヌル化したもの – ここでは、“メモを䜜成する” “Twitter に投皿する” ための むンタフェヌスがアクティビティに盞圓する – 行う操䜜ず察象をマニフェストに蚘述しおおけば、 自動的にアプリ同士の連携を取るこずができる (埌述の むンテント フィルタ による) 22 “メモ” アプリ (アプリの遞択) “メヌル” アプリ “Twitter” アプリ Twitter 投皿 むンテントず耇数のアクティビティによる アプリ連携の䟋 startActivity
  • 23. Fourteenforty Research Institute, Inc. Android : 優先アプリケヌション • 察象ずなり埗る耇数のアクティビティがある堎合、 メニュヌから起動するアプリを遞択する – “垞にこの操䜜で䜿甚する” をチェックするず、 遞択されたアクティビティが 優先アプリケヌションずしお登録される – 以降、同じ状況においおは 優先アプリケヌションが自動的に起動される 23
  • 24. Fourteenforty Research Institute, Inc. Android : むンテント (ブロヌドキャスト) • ブロヌドキャスト (Broadcast) は、システムやアプリが 発生させたむベントを受信するための仕組み – 登録された (原則ずしお) すべおの ブロヌドキャスト レシヌバ (BroadcastReceiver) が起動され、そこでむベントが凊理される 24 システム むンテントずブロヌドキャストによる アプリ (バッテリヌ節玄アプリ) の䟋 sendBroadcast Receiver ... Receiver ... 画面を自動的に 暗くする etc... Receiver
  • 25. Fourteenforty Research Institute, Inc. Android : 順序付きのブロヌドキャスト • ブロヌドキャストには、“順序なし” ず “順序付き” のものがある – システム䞭では、䞀郚のむベントだけが “順序付き” • 順序付きのブロヌドキャストには、次の性質がある – 埌述する優先床の順番に呌び出される (同じ優先床なら順䞍同) – abortBroadcast ずいう操䜜で、ブロヌドキャストが 優先床の䜎い他のレシヌバに枡らないようにするこずができる 25 Receiver P=999 Receiver P=100 Receiver P=0 Normal: sendBroadcast 高優先床 䜎 O. Receiver P=0 O. Receiver P=100 O. Receiver P=999 abortBroadcast Ordered: sendOrderedBroadcast
  • 26. Fourteenforty Research Institute, Inc. Android : むンテント フィルタ • Windows に䟋えるず関連付けの仕組みに近いが、 Android のむンテント フィルタ (Intent Filter) はさらに柔軟である – アクション (䜕をする/受け取るか), カテゎリ (どう実行するか) – ファむルの皮類 (MIME タむプ), 堎所  • AndroidManifest.xml に蚘述しおおく – システムがすべおのむンテント フィルタを管理し、 必芁なアクティビティやブロヌドキャストレシヌバを起動する 26 Activity A MIME タむプ : text/plain アクション : 送る Broadcast Receiver アクション : バッテリヌ䞍足 Activity B プロトコル : http ホスト : mypict.com アクション : 閲芧する 䟋: テキストをアップロヌドするアプリ 䟋: 特定サむト閲芧専甚アプリ 䟋: バッテリヌ節玄アプリ
  • 27. Fourteenforty Research Institute, Inc. Android : むンテント フィルタの優先床 • むンテント フィルタには、その優先床を蚭定できる – 高優先床のむンテント フィルタに察応するアクティビティや ブロヌドキャスト レシヌバが優先される – ブロヌドキャストの堎合には、“順序付き” のものだけが 優先床順に呌び出される (そうでない堎合には順䞍同) 27 Activity P=0P=100 ActivityActivity P=999 高優先床 䜎 O. Receiver P=0 O. Receiver P=100 O. Receiver P=999 abortBroadcast
  • 28. Fourteenforty Research Institute, Inc. たずめ : 解説した項目 • Android アプリ – パッケヌゞ / マニフェスト – パヌミッション • むンテントを䜿う Android 独自の方匏 – アクティビティ (Activity) – ブロヌドキャスト (Broadcast) • 順序付きのもの • 順序付きでないもの • むンテントを補助するむンテント フィルタ – その自由床ず、優先床の仕組み 28
  • 29. Fourteenforty Research Institute, Inc. 脅嚁の珟状、察抗策の限界 Android マルりェアや保護の珟状ず問題 29
  • 30. Fourteenforty Research Institute, Inc. Android セキュリティず脅嚁の珟状 • 既に耇数のマルりェアず、幟぀かのりむルス察策゜フトが存圚する – マルりェアの脅嚁はどのようなものか – りむルス察策゜フトで守れるのか • りむルス察策゜フトずその動䜜 – 暩限䞍足ずいう臎呜的な問題 • マルりェア – 珟状のトレンドず具䜓的な動䜜 • root 化の問題 – 砎られる、Android のセキュリティ機胜 – 察抗策ず、それでも解決しない問題 30
  • 31. Fourteenforty Research Institute, Inc. りむルス察策゜フト : 珟状 • 珟圚の Android りむルス察策゜フトは、倧量のむンテント フィルタを 利甚した郚分的なリアルタむム保護を実珟しおいる – ダりンロヌドしたファむルやアプリのスキャン – SMS や E-メヌルのスキャン 31 Anti-Virus SD カヌドの挿入 SMS の受信 端末の起動 ... パッケヌゞの むンストヌル 䞀郚のファむルを開く
  • 32. Fourteenforty Research Institute, Inc. りむルス察策゜フト : 珟状ず問題 • りむルス察策゜フトは、䞀般暩限で動䜜する – PC 甚のものは、䞀般的に管理者暩限を䜿甚する • 䞀般暩限で動䜜する問題 – 保護できない郚分が倚数存圚する (ファむルアクセスのチェックや異垞動䜜の怜出など) – マルりェアを排陀できない可胜性がある (埌述) 32 SD カヌドの挿入 SMS の受信 端末の起動 ... ... ... Anti-Virus りェブペヌゞのリアルタむムスキャン 開かれるファむルすべおの怜蚌 ...
  • 33. Fourteenforty Research Institute, Inc. マルりェア : 珟状のトレンド • 珟状ほが党おが、次のどちらかに圓おはたる – スパむりェア : 重芁な情報を搟取する – バックドア / ボット : コマンドを受け取っお悪意ある掻動を行う、 定期的に新たなマルりェアをダりンロヌドする... • 䞭囜囜内を察象にした / 䞭囜を匷く瀺唆するマルりェアが倚い – 䞭囜の携垯ネットワヌクを瀺す APN や 電話番号 – 盗み出した情報を SMS で送信する際に、 䞭囜語のメッセヌゞを組み立おる • 倖郚ぞの / 倖郚からの情報のやりずり – むンタヌネットを経由した HTTP 通信ず SMS を䜿甚したメッセヌゞ通信が非垞に倚い 33
  • 34. Fourteenforty Research Institute, Inc. マルりェア : むンテント フィルタの䜿甚 • マルりェアも情報を盗み出したり、あるいはシステムに 留たり続けるためにブロヌドキャストを䜿甚する – 解析したマルりェア 9 皮のうち䞀皮 (FakePlayer) を陀き、 高い優先床をブロヌドキャストのむンテント フィルタに蚭定しおいる • SMS の受信は、“順序付き” のブロヌドキャストである – abortBroadcast を䜿甚するず、暙準の SMS アプリでは 受信したメッセヌゞが芋えなくなる – これを悪甚し、䞀郚のマルりェアは SMS ずしお受信したコマンドが 他のアプリからは芋えないようにする 34
  • 35. Fourteenforty Research Institute, Inc. マルりェア : 進化の珟状 • 本栌的な難読化が斜されおいる Android マルりェアは 珟圚のずころ確認されおいない – 珟状のマルりェアはそれほど掗緎されおいない (比范的解析が容易) • ただし、技術的には急激に進歩し぀぀ある – DroidDream root 化を行った䞊で定期的にパッケヌゞ (APK ファむル) を ダりンロヌド、自動でむンストヌルする – Plankton 倖郚から DEX ファむル (Dalvik バむトコヌド) をダりンロヌドし、 クラスロヌダヌずいう Java の仕組みを悪甚しお動的に実行する • root 化を利甚するマルりェアをはじめ、 掗緎されたマルりェアが問題になっおいくず思われる 35
  • 36. Fourteenforty Research Institute, Inc. root 化 • ナヌザヌ自身が Android 端末の制限を解陀するために 自ら脆匱性を突いお root (管理者) 暩限を取埗するこずがある • root 化によく䜿甚される脆匱性 – CVE-2009-1185 (exploid) • udev (デバむス管理) における䞍適切な netlink メッセヌゞのチェック – CVE-2010-EASY (rage against the cage) • 正匏な CVE 番号ではない (exploit 補䜜者による名称) • adb における、リ゜ヌス䞍足時の䞍適切な setuid の䜿甚 – CVE-2011-1149 (psneuter) • ashmem (Android 共有メモリ) におけるアクセスチェックの䞍備 – CVE-2011-1823 (Gingerbreak) • vold (ボリュヌム マネヌゞャ) における䞍適切な netlink メッセヌゞのチェック 36
  • 37. Fourteenforty Research Institute, Inc. root 化 : 問題 • マルりェアも党く同じ脆匱性を突くこずができおしたう – マルりェアがシステム内の特暩を取埗するこずで、 りむルス察策゜フトが手出しできないようにしおしたう • たた root 化によっお、Android が持぀保護の仕組みが砎れおしたう – アクティビティに察応するむンテント フィルタの優先床 – パヌミッションの仕組みの保護 • これらがマルりェアによっお実行されるず、りむルス察策゜フトが 察抗できなくなっおしたう可胜性がある 37
  • 38. Fourteenforty Research Institute, Inc. root 化による問題 : 優先床の保護 (1) • 最も高い優先床を持぀アクティビティが最優先で䜿甚される – 䟋: りェブサむトぞのアクセスをフックする – 䜎い優先床を持぀アクティビティが呌び出されない (メニュヌなし) • マルりェアなどによる乗っ取りを防ぐための優先床保護の仕組み – システム領域 “以倖” にむンストヌルされたアプリは デフォルト (0) より䞊の優先床を持぀こずができない 38 System Activity P=1P=100 System ActivityUser Activity P=999 理想 User Activity P=0 999P=1 System ActivitySystem Activity P=100 珟実 高優先床 䜎
  • 39. Fourteenforty Research Institute, Inc. root 化による問題 : 優先床の保護 (2) • root 化によっお、マルりェアをシステム領域※ に むンストヌルするこずが可胜になっおしたう – システム領域にむンストヌルされたアプリは Android システムの 䞀郚ずしお信頌され、優先床の保護が無効になる – 特定のファむルを開くこずを防止したり、 ある皮のフィッシングを実行できるようになる • 条件 : root 化の䞊でシステム領域に曞き蟌みやマりントができるこず 39 System Activity P=1P=100 System ActivityMalware Activity P=999 マルりェアをシステム領域にむンストヌルする 高優先床 䜎 ※ カスタマむズされおいない Android においおは、/system/app, /system/framework, /vendor/app の 3 箇所
  • 40. Fourteenforty Research Institute, Inc. root 化の悪甚 : フィッシング • りェブサむトぞのアクセスをマルりェアにリダむレクトするこずができる – ナヌザヌがほずんど気づけない – アクティビティの UI をブラりザず同じにすれば、 ほずんど本物のりェブサむト、ブラりザず区別できなくなる • りむルス察策゜フトはこの手法ぞの察抗策を持たない 40 プロトコル : https ホスト : www.somebank.com アクション : 閲芧する 優先床 : 999 Malware Activity Browsing: somebank.com Browser 高優先床の Activity を䜿甚 Malware.apk
  • 41. Fourteenforty Research Institute, Inc. root 化による問題 : パヌミッションの保護 (1) • 䞀郚のパヌミッションは、䞀般暩限のアプリからは芁求できない – 䟋えば䞊蚘のパッケヌゞを匷制むンストヌルするための暩限 – 悪甚された堎合の危険性が倧きいため、 䞀郚のパヌミッションはシステムアプリからのみ䜿甚できる – マニフェスト (AndroidManifest.xml) にパヌミッションを 定矩しおも、むンストヌル時に拒吊される 41 User App System App Permission: INSTALL_PACKAGES
  • 42. Fourteenforty Research Institute, Inc. root 化による問題 : パヌミッションの保護 (2) • root 化されたアプリに察しおは、パヌミッションの仕組みが働かない – 保護されたパヌミッションであっおも、その暩限を埗るこずができる • これによっおできるこずは  – パッケヌゞの匷制むンストヌル, アンむンストヌル – 優先アプリケヌションの再蚭定など • 条件 : root 化のみ 42 Malware System App Permission: INSTALL_PACKAGES user = root
  • 43. Fourteenforty Research Institute, Inc. root 化の悪甚 : サむレントむンストヌル • INSTALL_PACKAGE パヌミッションをマルりェアが獲埗した堎合、 ナヌザヌの蚱可なく任意のパッケヌゞがむンストヌルされおしたう – 通垞はむンストヌルする前に譊告を受けるが、 この暩限を持぀堎合には䞀切譊告なしにむンストヌルできる • root 暩限をパッケヌゞファむルに察しお即座に䞎えるこずで、 本来りむルス察策゜フトが行える察策を劚害するこずができる 43 Malware PackageManager.installPackage user = root Permission: INSTALL_PACKAGE
  • 44. Fourteenforty Research Institute, Inc. root 化の悪甚 : システム領域の改倉 • root 暩限を悪甚しお、本来読み取り専甚の システムパヌティションにマルりェアをむンストヌルする • りむルス察策゜フトはマルりェアを削陀できない – 読み取り専甚パヌティションにある䞊に、Android システムからは システムアプリのひず぀ずしお認識されおしたう 44 /system partition /data partition System App System App Malware User Application User Application Anti-Virus Software remove
  • 45. Fourteenforty Research Institute, Inc. root 化の悪甚 : りむルス察策゜フトの排陀 • マルりェアは root 化さえしおしたえば、りむルス察策゜フトよりも はるかに匷力な暩限を行䜿するこずができる – りむルス察策゜フトが自ら root 化の脆匱性を 利甚するこずには倫理䞊倧きな問題がある – りむルス察策゜フトからはマルりェアを攻撃できない • 逆にマルりェアはりむルス察策゜フトを攻撃するこずができる – 匷制的なアンむンストヌル – プロセスの停止 – プロセスやパッケヌゞの改倉による無力化など 45 Malware Anti-Virus >
  • 46. Fourteenforty Research Institute, Inc. root 化の悪甚 : 察策ずその限界 (1) • 脆匱性を積極的に発芋、陀去する – 圓たり前に芋えるが、しかし脆匱性が発芋されお 10 ヶ月以䞊経過しおもそれが修正されおいない機皮が存圚する (http://www.ipa.go.jp/about/technicalwatch/pdf/110622report.pdf) • root ナヌザヌを含めお制限するセキュリティ機構 – SELinux, AppArmor, TOMOYO Linux... – SHARP 補 Android 端末 : Deckard / Miyabi LSM • システムパヌティションが䞍正にマりントされるこずを阻止 • ptrace (匷制的なデバッグ) の犁止 • chroot (仮想ファむルシステムの䜜成) の犁止など – root 暩限を確保した攻撃者が必芁以䞊に 暩限を拡倧するこずを防止できる 46
  • 47. Fourteenforty Research Institute, Inc. root 化の悪甚 : 察策ずその限界 (2) • root ナヌザヌの制限だけでは完党な察策にならない – パヌミッションによる保護は root に察しおは無効化されおいる – Dalvik ベヌスのアプリはすべお単䞀プロセスのクロヌンであるため、 既存のセキュア OS においおポリシヌで保護するこずが難しい – りむルス察策゜フトの暩限は匱い䞀般暩限のたた • Android 特有の事情を考慮した䞊で暩限の保護を行うこずが必芁 • 正圓なりむルス察策゜フトの暩限を、少なくずも root 化したマルりェアず同等たで匕き䞊げられるこずが望たしい 47
  • 48. Fourteenforty Research Institute, Inc. たずめ • Android 向けのマルりェアもりむルス察策゜フトも、 初期ず比べるず飛躍的に進化しおいる – しかし珟状りむルス察策゜フトは䜎い暩限で動䜜しおおり、 限定的な保護しかできおいない • root 化は Android のセキュリティ機構を砎り、 りむルス察策゜フトが手出しできないマルりェアを可胜にしおしたう – 仮にりむルス察策゜フトがマルりェアを発芋できおも、 それを陀去、無害化するこずができない可胜性がある – 察凊には暩限面での芋盎しや、Android 特有の事情を考慮した 新しい保護の仕組みが必芁ずされる 48
  • 49. Fourteenforty Research Institute, Inc. 総括 Android は “守れる” か? 49
  • 50. Fourteenforty Research Institute, Inc. Android は守られおいるか? (1) • 脆匱性攻撃 – Android は WebKit など倚数のネむティブラむブラリに䟝存しおおり、 ネむティブコヌド郚分は埓来ず同様に攻撃可胜である – 本来 Android が基盀ずする Linux カヌネルの保護機胜は、 様々な理由によっお効果が半枛しおいる • フレヌムワヌクビルド時のミス (DEP) • メモリ削枛のための機胜 (Zygote, Prelinking) – よっお脆匱性が存圚した堎合、 それを攻撃するのは珟状それほど難しくない 50
  • 51. Fourteenforty Research Institute, Inc. Android は守られおいるか? (2) • マルりェア / りむルス察策゜フト – マルりェアは珟状トロむの朚銬ずしおむンストヌルされ、 むンテント フィルタなどの仕組みを甚いるこずで情報を盗んだり、 あるいは悪意あるコマンドを受け取る – root 化によっおシステムの保護をバむパスし、通垞出来ない 悪意ある行動を起こすこずが可胜になる (サむレントむンストヌルなど) – りむルス察策゜フトは䞀般ナヌザヌの暩限で動䜜するため、 保護できない郚分があるばかりか、root 化されたマルりェアに察しお 手を出すこずができない • 珟状、Android 端末を十分に守りきるこずはかなり難しい 51
  • 52. Fourteenforty Research Institute, Inc. これからのためにすべきこず (1) • 技術的責任 : Android プロゞェクト – セキュリティ機構を厳密なものに倉える (root を特別扱いしないようにする) • システムコヌルレベル (LSM) • Android フレヌムワヌクのセキュア化 – 正圓なりむルス察策゜フトの保護を支揎する • 䟋: 特別な眲名が成されたアプリに䞀定の特暩を䞎える – メモリ保護機胜を匷化する • Zygote や Prelinking の芋盎しやセキュリティ匷化 52
  • 53. Fourteenforty Research Institute, Inc. これからのためにすべきこず (2) • 技術的責任 : 端末メヌカヌ – 既存の脆匱性を玠早く修正し、アップデヌトを行う (端末ナヌザヌが攻撃されるこずをいち早く防ぐ) – フレヌムワヌクやネむティブプログラムをビルドする際の コンパむルフラグに泚意を払う (-Wl,-z,noexecstack) – 独自のカスタマむズを十分に怜蚌する • Android のセキュリティ機構が砎れないよう (あるいは正圓なプログラムの実行を阻害されないよう) 十分に泚意しお実装を行う 53
  • 54. Fourteenforty Research Institute, Inc. 結論 • 珟状 Android の保護は十分でなく、たた脅嚁も氟濫しおいるが、 解決が䞍可胜な問題ではない – ただし、利甚者は圓面泚意を必芁ずする • Android プロゞェクト、端末メヌカヌ、セキュリティベンダヌなどが 協力しお Android のセキュリティを高めるこずに泚力すべき 54
  • 55. Fourteenforty Research Institute, Inc. ありがずうございたした Fourteenforty Research Institute, Inc. 株匏䌚瀟 フォティヌンフォティ技術研究所 http://www.fourteenforty.jp 新技術開発宀 倧居 叞 <oi@fourteenforty.jp> 55