a nalyzing i nter a pplication c ommunication in a ndroid
play

A NALYZING I NTER -A PPLICATION C OMMUNICATION IN A NDROID Erika - PowerPoint PPT Presentation

A NALYZING I NTER -A PPLICATION C OMMUNICATION IN A NDROID Erika Chin Adrienne Porter Felt Kate Greenwood David Wagner UC Berkeley I NTER -A PPLICATION C OMMUNICATION Yelp App Eavesdropping Attacks Injection Attacks Inter-Application


  1. A NALYZING I NTER -A PPLICATION C OMMUNICATION IN A NDROID Erika Chin Adrienne Porter Felt Kate Greenwood David Wagner UC Berkeley

  2. I NTER -A PPLICATION C OMMUNICATION Yelp App • Eavesdropping Attacks • Injection Attacks Inter-Application Communication Malicious Other App Maps App Dialer App App 2

  3. O RGANIZATION ¢ Android communication model ¢ Security analysis of Android ¢ ComDroid ¢ Analysis of third-party applications ¢ Recommendations 3

  4. A NDROID O VERVIEW ¢ Intents = Android IPC ¢ Applications are divided into components ¢ Intents can be sent between components ¢ Intents can be used for intra- and inter-application communication Receiver Sender Intent 4

  5. E XPLICIT I NTENTS Name: MapActivity Map Yelp App To: MapActivity Only the specified destination receives this message 5

  6. I MPLICIT I NTENTS Handles Action: VIEW Map App Yelp Handles Action: DISPLAYTIME Clock Implicit Intent App Action: VIEW 6

  7. I MPLICIT I NTENTS Handles Action: VIEW Map App Yelp Handles Action: VIEW Browser Implicit Intent App Action: VIEW 7

  8. S ECURITY A NALYSIS O F A NDROID 8

  9. C OMMON D EVELOPER P ATTERN : U NIQUE A CTION S TRINGS IMDb App Handles Actions: willUpdateShowtimes , showtimesNoLocationError Showtime Results UI Search Implicit Intent Action: willUpdateShowtimes 9

  10. 10

  11. C OMMON D EVELOPER P ATTERN : U NIQUE A CTION S TRINGS IMDb App Handles Actions: willUpdateShowtimes , showtimesNoLocationError Showtime Results UI Search Implicit Intent Action: willUpdateShowtimes 11

  12. ATTACK #1: E AVESDROPPING IMDb App Eavesdropping App Handles Action: willUpdateShowtimes , showtimesNoLocationError Showtime Malicious Search Receiver Implicit Intent Action: willUpdateShowtimes 12 Sending Implicit Intents makes communication public

  13. ATTACK #2: I NTENT S POOFING Malicious IMDb App Injection Handles Action: App willUpdateShowtimes , showtimesNoLocationError Malicious Results UI Component Action: showtimesNoLocationError 13 Receiving Implicit Intents makes the component public

  14. 14 Typical case Attack case

  15. ATTACK #3: M AN IN THE M IDDLE IMDb App Man-in-the-Middle App Handles Action: Handles Action: willUpdateShowtimes , willUpdateShowtimes , showtimesNoLocation showtimesNoLocationError Error Showtime Results UI Malicious Search Receiver Action: Action: willUpdateShowtimes showtimesNoLocation Error 15

  16. ATTACK #4: S YSTEM I NTENT S POOFING ¢ Background – System Broadcast — Event notifications sent by the system — Some can only be sent by the system ¢ Receivers become accessible to all applications when listening for system broadcast 16

  17. App 1 S YSTEM B ROADCAST Component Handles Action: BootCompleted System Notifier App 2 Component Handles Action: BootCompleted Action: App 3 BootCompleted Component 17 Handles Action: BootCompleted

  18. S YSTEM I NTENT S POOFING : F AILED A TTACK Malicious App 1 App Handles Action: BootCompleted Malicious Component Component Action: BootCompleted 18

  19. S YSTEM I NTENT S POOFING : S UCCESSFUL A TTACK Malicious App 1 App Handles Action: BootCompleted Malicious Component Component To: App1.Component 19

  20. R EAL W ORLD E XAMPLE : ICE A PP ¢ ICE App: Allows doctors access to medical information on phones ¢ Contains a component that listens for the BootCompleted system broadcast ¢ On receipt of the Intent, it exits the application and locks the screen 20

  21. R EAL W ORLD E XAMPLE : ICE 21

  22. C OM D ROID Security Android Warnings for Executable ComDroid Exposed File Communication ComDroid analyzes applications to detect Intent- based attack surfaces 22

  23. E VALUATION ¢ Manually verified ComDroid’s warnings for 20 applications ¢ 60% of applications examined have at least 1 exploitable IPC vulnerability Type # of # of Apps Warnings Severe Vulnerability 34 12 Bad Practice 16 6 Spurious Warning 6 6 23

  24. R ECOMMENDATIONS ¢ Treat inter- and intra-application communication as different cases ¢ Prevent public internal communication — 21% of severe vulnerabilities — 63% of bugs due to bad practice ¢ Verify system broadcasts — 6% of severe vulnerabilities — 13% of bugs due to bad practice ¢ Can be fixed by either developers or platform 24

  25. R ELATED W ORK ¢ Enck et al. – introduces information leakage through Broadcast Intents and information injection into Receivers ¢ Burns – discusses other common developers’ errors 25

  26. C ONCLUSION ¢ Applications may be vulnerable to other applications through Android Intent communication ¢ Many developers misuse Intents or do not realize the consequences of their program design ¢ 60% of applications examined had at least 1 vulnerability ¢ ComDroid tool to be publically accessible soon at 26 www.comdroid.org

  27. Thank you! Any questions? 27

Recommend


More recommend