UP | HOME
../../

Android Framework: Binder

Table of Contents

Abstract: Android Binder is a mechanism for IPC between processes within one device. It adapts the RPC (remote procedure call) to the Android setting.

1 Prerequisites: Android Interfaces and Architecture

  1. Application Framework
  2. Binder IPC Proxies
  3. Android System Services
  4. Hardware Abstraction Layer (HAL)
  5. Linux Kernel
  6. Android Internals

2 Android Binder IPC Overview

  1. IPC == Inter Process Communication mechanism
  2. RPC == Remote Procedure Call, P calls Q, P and Q in diff processes
  3. IPC over Binder
  4. Why Binder instead of Conventional IPC?
  5. ./binder-ipc.html

3 Binder Internals

  1. Binder Process
  2. Binder Device
  3. Design Patterns Used in the Binder
  4. ./binder-internals.html

4 AIDL

  1. AIDL == Android Interface Definition Language
  2. Bound Services
  3. Defining and Implementing an AIDL Interface
  4. Passing Objects over IPC
  5. Calling an IPC Method
  6. ./binder-aidl.html

5 Android Binder Exploits

  1. "Man in the Binder: He who controls IPC, controls the Droid."
  2. IMemory Native Interface is Insecure for IPC Use.
  3. Fuzzing And Exploiting Parcelization Vulnerabilities
  4. BinderCracker
  5. ./binder-exploits.html

6 References

  1. http://developer.android.com/reference/android/os/Binder.html Binder API. Reference.
  2. Nitay Artenstein, Idan Revivo and Michael Shalyt, Man in the Binder, Local PDF slides ./binder-Man-In-The-droidcon-2015-slides.pdf,
    1. BlackHat Europe, 2014. Full paper. Recommended Reading.
  3. Jonathan Levin, ./binder-Levin-Andevcon-2015.pdf 42 slides. Recommended Reading.
  4. Shen, Dong, Zhangkai Zhang, Xuhua Ding, Zhoujun Li, and Robert Deng. "H-Binder: A Hardened Binder Framework on Android Systems." In International Conference on Security and Privacy in Communication Systems, pp. 24-43. Springer, Cham, 2016.
  5. Villazón, Alex, Haiyang Sun, and Walter Binder. "Capturing Inter-Process Communication for Runtime Verification on Android." In International Symposium on Leveraging Applications of Formal Methods, pp. 25-31. Springer, Cham, 2018. Reference.
  6. Yuan, Pengfei, Yao Guo, Xiangqun Chen, and Hong Mei. "Device-specific Linux Kernel Optimization for Android Smartphones." In 2018 6th IEEE International Conference on Mobile Cloud Computing, Services, and Engineering (MobileCloud), pp. 65-72. IEEE, 2018. Reference.

7 End


Copyright © 2017 www.wright.edu/~pmateti • 2017-10-03