RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product-...

13
© Fraunhofer AISEC | D. Titze RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN Mario Hoffmann 16. Jahresfachkonferenz, Datenschutz und Datensicherheit 23. und 24. Juni 2014 in Berlin © Fraunhofer AISEC | M. Hoffmann | 2 1. Fraunhofer AISEC 2. App-Analyse Tool App-Ray 3. Untersuchung 10.000 Android Apps Agenda

Transcript of RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product-...

Page 1: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | D. Titze

RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN

Mario Hoffmann

16. Jahresfachkonferenz, Datenschutz und Datensicherheit23. und 24. Juni 2014 in Berlin

© Fraunhofer AISEC | M. Hoffmann | 2

1. Fraunhofer AISEC

2. App-Analyse Tool App-Ray

3. Untersuchung 10.000 Android Apps

Agenda

Page 2: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 3

Embedded Security Trusted platforms (HW/SW-Co-Design)

Hardware Security HSMs, Side-Channel, EMA-, Fault-Analysis

Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection

IP-based Networks Cloud-Networking, Secure Multi-Party Computation

Digital Identity Attribute based IDs, Object-IDs, Web-IDs

Mobile Security Trusted BYOD, App-Analysis Tool, Automotive-Sec.

Fraunhofer AISEC

© Fraunhofer AISEC | M. Hoffmann | 4

Page 3: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 5

Problem:

Verhalten einer App nicht offensichtlich

Analyse in offiziellen Märkten undurchsichtig und unzureichend

Nicht nur Malware stellt eine Bedrohung dar

App-Analyse

© F

orb

es.

com

© Fraunhofer AISEC | M. Hoffmann | 6

Lösung

Vollautomatische Sicherheitsuntersuchung von Android-Apps

Klassifikation gemäß benutzerspezifischem Richtlinienkatalog

Aufdecken von Schwachstellen, Datenlecks, Datenschutzverletzungen, Programmierfehlern, …

App-Ray

http://www.app-ray.de

Page 4: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 7

Beispiele für typische Implementierungsfehler

Fehlerhafte Implementierung von TrustManager

Ermöglicht MitM-Angriffe auf SSL, Abhören von sensiblen Daten

Fehlendes setFilterTouchesWhenObscured

Kein Schutz gegen Tapjacking-Angriffe

Fehlerhafte Permissions für Content-Provider, unabsichtlicher Export

Andere Apps können Daten lesen und schreiben

App-Analyse

© Fraunhofer AISEC | M. Hoffmann | 8

App-Ray

Page 5: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 9

Katalog von High-Level Kriterien

Vertraulichkeit, Datenschutz, ...

Konfigurierbare Zuweisung von Testverfahren

Wird zur Auswertung der Analysen herangezogen

App-Ray

© Fraunhofer AISEC | M. Hoffmann | 10

Untersuchen von AndroidManifest.xml, Ressourcen & Market-Infos

Activities, Services, Content Provider, Broadcast Receiver

Permissions

Bekannte Binaries (busybox, su, iptables) und Exploits

Bekannte Bibliotheken für Payment, User Tracking, Advertising

Metadata Analysis

Page 6: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 11

Disassemblieren (Smali)

Dekompilieren (DED Decompiler)

Suche nach dedizierten Code-Patterns

Suche nach kritischen API-Calls

Location, Read Logs, Send SMS, Contact Data, …

Suche nach dynamisch geladenem Code, JNI

Code Analysis

public void checkServerTrusted(java.security.cert.X509Certificate[] p1, String p2) {

return;

}

© Fraunhofer AISEC | M. Hoffmann | 12

Control Flow Analysis

Call Graph

Control Flow Graph

Bidirektionale Datenflussanalyse(statisches Tainting)

Erkennen von Datenlecks(bspw. Kontaktdaten – Socket)

Code Analysis

Page 7: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 13

Ausführen der unmodifizierten App in emulierter Umgebung

Aufzeichnen und Wiedereinspielen von Benutzerinteraktionen

Syscall-Monitoring per Kernel-Modul

Aufzeichnen des Netzwerktraffic(insbes. Erkennen von unverschlüsselten Verbindungen & Ad-Hosts)

Dynamic Taint Analysis(taintdroid + Scripting zur Automatisierung und Auswertung)

Monitored Execution

© Fraunhofer AISEC | M. Hoffmann | 14

Re-packaging von Apps und Modifikation des Bytecodes

Instrumentieren von SSL-Verbindungen zum Mitschneiden von Klartext-Kommunikation ohne MitM

Injecten von dynamischer Taint-Analyse entlang kritischer Datenpfade

Härten von Apps durch Überwachen von Datenpfaden und kritischen API Calls

Instrumented Execution

Page 8: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 15

Auswertung der Rohdaten mit konfigurierbaren Regeln

Regeln entsprechen High-Level-Kriterien

Benutzer erhält

High-Level-Übersicht

Detaillierte Ergebnisse

(ggf. Rohdaten)

Auswertung mit Regeln

© Fraunhofer AISEC | M. Hoffmann | 16

Aktuelle Untersuchung: 10.000 Apps

Page 9: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 17

Analyse

• 10.000 Apps aus dem Google Play Store (Q1/2014)

• 5kB – 50MB

• 7051 verschiedene Entwickler

• Ø290k Codezeilen (inkl. enthaltener Bibliotheken)

Eingesetzte Verfahren

• Metadaten Analyse

• Statische Analyse

• Dynamische Analyse

www.app-ray.de

© Fraunhofer AISEC | M. Hoffmann | 18

Kommunikationsziele (4058)

Page 10: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 19

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

INTERNET

WRITE_EXTERNAL_STORAGE

READ_PHONE_STATE

WAKE_LOCK

ACCESS_WIFI_STATE

ACCESS_FINE_LOCATION

ACCESS_COARSE_LOCATION

GET_ACCOUNTS

RECEIVE_BOOT_COMPLETED

BILLING

CAMERA

READ_CONTACTS

WRITE_SETTINGS

RECORD_AUDIO

READ_EXTERNAL_STORAGE

CALL_PHONE

SYSTEM_ALERT_WINDOW

WRITE_CONTACTS

Auswertung der 10.000 beliebtesten Apps

© Fraunhofer AISEC | M. Hoffmann | 20

Auswertung der 10.000 beliebtesten Apps (2)

96%

4%

Versand der IMEI direkt nach Start

Internet-Berechtigung

9%

91%

31%

69%

76%

24%

Selbst implementierte SSL-Überprüfung

Unverschlüsselte Kommunikation

Page 11: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 21

5193

2154

Receiver

427

100Provider

Auswertung der 10.000 beliebtesten Apps (3)

75%

25%

Native Bibliotheken

Exportierte Komponenten

1994

997

Services

83%

17%

Starten eines Hintergrunddienstes

© Fraunhofer AISEC | M. Hoffmann | 22

App-Ray

Page 12: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 23

Automatisierter Prüfprozess für Apps

Best practices, Anti-patterns

Capability leak Erkennung

Trusted App-Store

"Härtung" von Apps

Tamper-proof Apps: Verhindern von Disassemblieren, customized Obfuscation/Encryption

Ggf. Binden von Code an Device

Ausblick

© Fraunhofer AISEC | M. Hoffmann | 24

Review der App-Stores nicht ausreichend

Nicht nur Malware stellt eine Gefahr dar

Mehr Transparenz nötig!

Trusted App-Store?

Lösungsansatz: www.App-Ray.de

Fazit

Page 13: RISIKEN MOBILER APPS ERKENNEN UND VERHINDERN · HSMs, Side-Channel, EMA-, Fault-Analysis Product- and Know-How-Protection PUFs, Smart Materials, Firmware-Protection IP-based Networks

© Fraunhofer AISEC | M. Hoffmann | 25

Mario [email protected]

Fraunhofer AISECService & Application SecurityParkring 485748 Garching (bei München)http://www.aisec.fraunhofer.de

Kontakt