SlideShare a Scribd company logo
検証、SEAndroid
 Androidセキュリティ部 矢倉大夢
まず自己紹介

• 矢倉大夢 (@hiromu1996)
• 中学3年生
• 校パソコン研究部 部長
最近の活動

• OSS奨励賞を受賞しました
• 「カーネル開発者視点での成果発表」
• Androidセキュリティ部での成果発表
いままで
• 「キャリアはさっさとアップデートか
 けてほしい」

• 「脆弱性が見つかったらすぐアップ
 デート」
今回は

• 脆弱性が見つかってroot奪取されても安
 全なしくみを

• SEAndroidは権限昇格に対して有効か?
SEAndroidとは

• Security Enhanced Android 
• 2012年1月にリリース
• SELinuxのAndroidバージョン
SELinuxとは

• Security Enhanced Linux 
• National Security Agencyが作成
• 代表的なLinux Security Module
SELinuxの基本
• よくある「SELinuxは無効にしておきま
 しょう」

• SELinuxはサーバー構築の邪魔をするた
 めに入っているのではない
SELinuxの基本
$ ls -alZ
drwx------   hiromu hiromu user_u:object_r:user_home_dir_t   .
drwxr-xr-x   root   root   system_u:object_r:home_root_t     ..



    • 従来のアクセス制御
     • パーミッションとオーナーで制御
    • SELinuxによる強制アクセス制御
     • もっと詳細なラベルで制御
SELinuxの基本
• カーネルに組み込まれている
 • root権限に対して制御可能
• 他のプロセスへの干渉を止められる
 • 別プロセスの脆弱性が使用しにくい
できること

• アプリによる権限昇格、データ漏洩の
 防止

• データの強制アクセス制御による保護
SEAndroidの実装
• カーネルレイヤー
 • yaffs2へのラベルシステムの追加
 • IPCシステムへのパーミッション
  チェックの追加
SEAndroidの実装

• ユーザーランド
 • chcon, restoreconなどのコマンド類
 • ndkによるSELinuxのAPI実装
SEAndroidを検証

• とりあえずGalaxy Nexusで動かしてみた
• http://selinuxproject.org/page/SEAndroid 
• Wikiにある通りにビルドすると動く
SEAndroidを検証
• まず、ソースコードをダウンロード
 • AOSPのソース + SEAndroidのソース
 • SEAndoidのリポジトリ情報をrepo以下
  に保存する
SEAndroidを検証

• プロプライエタリなファイルを抽出
 • device/samsung/maguro/extract-files.sh 
 • 実機からadbで転送
SEAndroidを検証
• カーネルをビルド
 • kernel/samsung/omap 
 • make tuna_defconfig 
 • make menuconfigでSEAndroidが有効に
   なっているか確認
SEAndroidを検証

• ICSのビルドを開始
 • make HAVE_SELINUX=true 
 • 一晩放置
SEAndroidを検証
• 端末に書き込み
 • out/target/product/maguro以下
 • fastbootでboot.img system.img
   userdata.imgを書き込み
速度
• 全く気にならない
• Quadrant Benchmark: 1930 
 • Galaxy Nexusの平均が2000程度
 • I/Oが少し遅い
root奪取
• CVE-2009-2692を再現
 • asrootというexploitでroot奪取は確認
 • SetupSUというroot奪取ツールで実験
 • SEAndroidはEnforcing状態
root奪取

• /system/bin以下はどのユーザーも書き込
 みができないようになっている

 • suやbusyboxは当然書き込めない
root奪取
• GingerBreakに対しても有効
 • そもそも/system/bin/voldに対してアプ
   リからアクセスできない

 • voldにexploitを仕掛けることが不可能
SEAndroidの利点
• root奪取されても問題ない
 • suなどをインストールできない
 • 他のアプリケーションに干渉できな
  い
SEAndroidの利点
• そもそもAndroidの脆弱性が利用しにく
 い

 • root権限で動いているプロセスに
  exploitを仕掛けることができない

 • 脆弱性があってもroot権限を奪取でき
  ない
結論
• SEAndroidは堅牢なAndroidシステムを作
 る上で有効

 • ただしコンテキストをきちんと設定
  しておく必要はある

 • 独自LSMを作成したりするよりは、過
  去の運用ノウハウを使える分いいかも
結論
• まだ実用レベルではない
 • SELinux JNI APIは実装途中
 • Zygote(Dalvik VMの管理プロセス)が
   SEAndroidのコンテキストを読みに
   いってSEGVする
結論
• デフォルトのコンテキストを使うだけ
 でもかなり堅牢にはなる

• AOSPのMain StreamにMergeされてから
 使うくらいがいいかもしれない
ご清聴ありがとうございました

More Related Content

KEY
Androidにおける強制アクセス制御
KEY
SEAndroid -AndroidのアーキテクチャとSE化について-
PPTX
Vulsで始めよう!DevSecOps!
PDF
Secure element for IoT device
PPTX
Vuls×deep security
PPTX
Sesearch
PPTX
Internet Week 2016 脆弱性スキャナによる対策支援の課題 Vuls
PDF
Nessusをちょっと深堀してみた
Androidにおける強制アクセス制御
SEAndroid -AndroidのアーキテクチャとSE化について-
Vulsで始めよう!DevSecOps!
Secure element for IoT device
Vuls×deep security
Sesearch
Internet Week 2016 脆弱性スキャナによる対策支援の課題 Vuls
Nessusをちょっと深堀してみた

What's hot (20)

PPTX
脆弱性スキャナVulsで始めるセキュリティ対策
PPTX
IoTハンズオン
PDF
セキュアエレメントとIotデバイスセキュリティ2
PDF
Rainbowtype secure IoT prototyping system
PDF
IoTハンズオン資料(おうちハック)配布用
PDF
Qinghao vulnerabilities mining technology of cloud and virtualization platfo...
PDF
IoTデバイスセキュリティ
PDF
Proxy War EPISODEⅡ
PDF
20200127 jetson nano_chonyumon_kitazaki
PDF
デバイス内データの安全な保管を考える
PPTX
IoTセキュリティの最新動向
PDF
フリーでやろうぜ!セキュリティチェック!
PDF
Build secure io t gateway
PDF
Node-RED勉強会(20160826)追補
PDF
Vulsで危険な脆弱性を最速検知!(The fastest detection of dangerous vulnerability by Vuls! )
PPTX
Wiki と携帯型遠隔操作機器を使った情報セキュリティ対策システム
PPTX
脆弱性スキャナVulsの紹介とMackerelメタデータと連携した脆弱性管理
PDF
130821 owasp zed attack proxyをぶん回せ
PDF
フィジカル・コンピューティング実験における通信環境の考察 (メモ)
PPTX
最近のやられアプリを試してみた
脆弱性スキャナVulsで始めるセキュリティ対策
IoTハンズオン
セキュアエレメントとIotデバイスセキュリティ2
Rainbowtype secure IoT prototyping system
IoTハンズオン資料(おうちハック)配布用
Qinghao vulnerabilities mining technology of cloud and virtualization platfo...
IoTデバイスセキュリティ
Proxy War EPISODEⅡ
20200127 jetson nano_chonyumon_kitazaki
デバイス内データの安全な保管を考える
IoTセキュリティの最新動向
フリーでやろうぜ!セキュリティチェック!
Build secure io t gateway
Node-RED勉強会(20160826)追補
Vulsで危険な脆弱性を最速検知!(The fastest detection of dangerous vulnerability by Vuls! )
Wiki と携帯型遠隔操作機器を使った情報セキュリティ対策システム
脆弱性スキャナVulsの紹介とMackerelメタデータと連携した脆弱性管理
130821 owasp zed attack proxyをぶん回せ
フィジカル・コンピューティング実験における通信環境の考察 (メモ)
最近のやられアプリを試してみた
Ad

Viewers also liked (14)

PDF
新しいライブ映像再生システムを研究してみた
KEY
OSS奨励賞受賞プレゼン 活動紹介
PDF
Why don't you learn programming?
KEY
ナウいAndroidセキュリティ
PDF
Arduinoでプログラミングに触れてみよう 続編
KEY
Nyarlathotep
KEY
ICTのちから
PDF
CTF, What's in it for me?
PDF
Arrow Judge
KEY
Trendmicro Security Award 2012 Final Presentation
PDF
Arduinoでプログラミングに触れてみよう
PDF
GAME ON 特別イベント 「ゲームってなんでプログラミング?」
PDF
セキュリティ・キャンプのススメ
PDF
CTFはとんでもないものを 盗んでいきました。私の時間です…
新しいライブ映像再生システムを研究してみた
OSS奨励賞受賞プレゼン 活動紹介
Why don't you learn programming?
ナウいAndroidセキュリティ
Arduinoでプログラミングに触れてみよう 続編
Nyarlathotep
ICTのちから
CTF, What's in it for me?
Arrow Judge
Trendmicro Security Award 2012 Final Presentation
Arduinoでプログラミングに触れてみよう
GAME ON 特別イベント 「ゲームってなんでプログラミング?」
セキュリティ・キャンプのススメ
CTFはとんでもないものを 盗んでいきました。私の時間です…
Ad

Similar to 検証、SEAndroid (20)

PPTX
Androidアプリ解析の基礎 公開用
PDF
0621 ndk game
PDF
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
PDF
AndroidーiOS開発比較〜iOSエンジニアから見たAndroidのアレコレ〜
PDF
Cocos2d-x公開講座 in 鹿児島
PDF
Introduction of Rhodes
PPTX
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
PDF
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
PDF
AndroidでActiveRecordライクにDBを使う
PPTX
Jenkins User Conference 東京 2015
PPTX
Android 開発, 運用時に使いたいライブラリやサービスの紹介
PDF
cocos2d-x 開発の効率化
PDF
Android カスタムROMの作り方
PDF
Windowsでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築について
PDF
Terraformを活用した自動化デモ_F5-NGINX_Community-20200805
PDF
Firefoxの開発プロセス
PPTX
JaSST'16 Tokyo モバイルセッション
PPTX
HudsonとAndroid
PDF
CDI, Seam 3 and Forge
PDF
Nishimoto osh2014: Test driven development and accessibility
Androidアプリ解析の基礎 公開用
0621 ndk game
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
AndroidーiOS開発比較〜iOSエンジニアから見たAndroidのアレコレ〜
Cocos2d-x公開講座 in 鹿児島
Introduction of Rhodes
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
AndroidでActiveRecordライクにDBを使う
Jenkins User Conference 東京 2015
Android 開発, 運用時に使いたいライブラリやサービスの紹介
cocos2d-x 開発の効率化
Android カスタムROMの作り方
Windowsでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築について
Terraformを活用した自動化デモ_F5-NGINX_Community-20200805
Firefoxの開発プロセス
JaSST'16 Tokyo モバイルセッション
HudsonとAndroid
CDI, Seam 3 and Forge
Nishimoto osh2014: Test driven development and accessibility

More from Hiromu Yakura (14)

PDF
Human-AI communication for human-human communication / CHAI Workshop @ IJCAI ...
PDF
How to make good use of AI technologies? @ Tsukuba Conference 2021
PDF
機械学習を"良く"使うには
PDF
自己紹介@名状しがたいお茶会
PDF
Python 3のWebシステムでDDDに入門してみた
PDF
Robust Audio Adversarial Example for a Physical Attack
PDF
機械学習コン講評
PDF
NPCA夏合宿 2014 講義資料
PDF
イタリアでパスタを食べた話
PDF
CTFとは
PDF
ぃぬ速@LKML
PDF
プラトン
PDF
How to lick Miku
KEY
Human-AI communication for human-human communication / CHAI Workshop @ IJCAI ...
How to make good use of AI technologies? @ Tsukuba Conference 2021
機械学習を"良く"使うには
自己紹介@名状しがたいお茶会
Python 3のWebシステムでDDDに入門してみた
Robust Audio Adversarial Example for a Physical Attack
機械学習コン講評
NPCA夏合宿 2014 講義資料
イタリアでパスタを食べた話
CTFとは
ぃぬ速@LKML
プラトン
How to lick Miku

検証、SEAndroid