0
Enterprise-class Securityfür Android-AppsMasanori Fujita                            Masanori Fujita                       ...
Softwarelösungen, Produktinnovationund Managementberatung                              •   Mehr als 7000 Projekte in      ...
Consulting – Development – Integration                              Softwarelösungen                              •   Real...
Unsere ProtagonistenFoto von Hans            Hans                                               •   Tätig als Vertreter fü...
Die Aufnummersicher VersicherungFoto von Hans                                                  •   Setzt auf traditionelle...
Die Einfachsicher Versicherung                                                               •   Setzt auf einfache, klare...
Lösungsarchitektur der Einfachsicher                                                                                      ...
HTTPS korrekt nutzen                                                               •   Automatische Verifikation der      ...
Peter verliert das Gerät.Image: Sura Nualpradid / FreeDigitalPhotos.net
Aufnummersicher will es besser machen.          „Wir wollen den Vertrieb modernisieren.          Trotzdem gilt für die Ver...
Security-Aspekte                              Vertraulichkeit wahren, d.h.                                Unbefugten den Z...
Problemanalyse EinfachSicher                                                                           Confidentiality    ...
Gerät vor unbefugtem Zugriff schützenVerfügbare ProdukteGoogle Apps Device Policy                                         ...
Gerät vor unbefugtem Zugriff schützenAndere Mobile Device Management Produkte•      Zenprise Mobile Manager•      Symantec...
Gerät vor unbefugtem Zugriff schützenEinfacher, aber wirksamer SchutzGelegenheit macht Diebe…                             ...
Security Modell von Android                    Prozess                                            Prozess              Pro...
Anwendungen richtig designenIntents für IPC                           App 1                                               ...
Anwendungen richtig designenPermissions und Protection LevelsProtection Levels:                                           ...
Anwendungen richtig designenPermissions richtig einsetzen                                                                 ...
Rooting – Security ausgehebelt•      OS ist Open Source•      viele OSS 3rd-Party-Bibliotheken•      Freundlicher Bootload...
Daten verschlüsselt ablegen                                      ABC DEF                                      GHI JKL     ...
Verschlüsselte Datenbanken                        Persistenzschicht                                                       ...
Verschlüsselte Datenbanken                        Persistenzschicht                                                       ...
Und wohin mit demSchlüssel?                    Image: jannoon028 / FreeDigitalPhotos.net
Passwortabfrage beim Öffnen der App                                                                                       ...
Schlüssel in einem Service vorhalten•      fragt Passwort bei       Bedarf ab                                             ...
Überlassen wir es doch dem GerätDevice Level Encryption                                                               Ab A...
Auf lokale Persistenz verzichtenDaten immer vomServer abrufen                                                             ...
Die Welt von der anderen Seite                                                                           Confidentiality  ...
Einloggen über den AccountManager                                                               Sehr praktisch, aber…     ...
Client-Zertifikate•      SSL-Verbindungen mit Client-Zertifikat möglich•      Private/Public-Key im Keystore nötig•      P...
VPNOut-of-the-box werden unterstützt:•      PPTP•      L2TP•      L2TP mit IPSec und Shared Key                           ...
Die neue Lösung von EinfachSicher                                                                                         ...
Die Lösung von Aufnummersicher                                                                                        Back...
Wer hat also Recht?Image: renjith krishnan / FreeDigitalPhotos.net
Usability     Confidentiality                        Performance              Integrity                                   ...
Upcoming SlideShare
Loading in...5
×

Mtc2011 enterprise class security für android-apps-fujita

450

Published on

Android-Apps für den Unternehmenseinsatz sind speziell. Auf der einen Seite laden Flexibilität und Offenheit zur Umsetzung vieler interessanter Features ein. Auf der anderen Seite sind Enterprise-Apps häufig direkt in den Geschäftsprozess der Unternehmen eingebettet und greifen auf Anwendungen im Backend zu, deren sensible Daten nicht in fremde Hände geraten dürfen. Wie handhabt man unter diesen Umständen die robuste und sichere Synchronisation von Daten? Wie legt man diese sicher auf mobilen Endgeräten ab? Was ist bezüglich Authentifizierung und Autorisierung zu beachten? Der Vortrag beleuchtet Stärken und Schwächen der Android-Plattform, stellt sicherheitsrelevante Frameworks vor und behandelt Architekturansätze für den sicheren Einsatz von Android-Apps im Enterprise-Umfeld.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
450
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Mtc2011 enterprise class security für android-apps-fujita"

  1. 1. Enterprise-class Securityfür Android-AppsMasanori Fujita Masanori Fujita © Zühlke 2011
  2. 2. Softwarelösungen, Produktinnovationund Managementberatung • Mehr als 7000 Projekte in Europa realisiert • 50 Mio. EUR Umsatz (2010) • 400 Mitarbeiter (Ende 2010) • In Deutschland, Grossbritannien, Österreich und in der Schweiz • Gründung 1968, Wir beraten, im Besitz von Partnern entwickeln und • ISO 9001 und 13485 zertifiziert integrieren aufgabengerecht – mit überzeugender Qualität und Wirtschaftlichkeit.Eine Idee mehr. Und Zühlke. 4. März 2011 Folie 2 © Zühlke 2011
  3. 3. Consulting – Development – Integration Softwarelösungen • Realisieren von Individuallösungen • Entwicklungsunterstützung • Methodische Beratung Fokus-Themen • M2M-Lösungen • Enterprise Integration • Mobile Anwendungen • Software-Entwicklungsprozesse • ProjektmanagementEine Idee mehr. Und Zühlke. 4. März 2011 Folie 3 © Zühlke 2011
  4. 4. Unsere ProtagonistenFoto von Hans Hans • Tätig als Vertreter für zwei sehr unterschiedliche Versicherungen • Mobile Vertriebsplattformen sind ein Thema Image: photostock / FreeDigitalPhotos.net PeterImage: Ambro / FreeDigitalPhotos.netEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 4 © Zühlke 2011
  5. 5. Die Aufnummersicher VersicherungFoto von Hans • Setzt auf traditionelle Werte und Seriosität • Zielgruppe: Familien und Senioren in ländlichen Regionen Image: photostock / FreeDigitalPhotos.net • Persönliche Beratung beim Kunden zu Hause • Konservative IT-Politik • Mobile Lösungen werden sehr kritisch beobachtet. Bisher nur Konzepte. Image: xedos4 / FreeDigitalPhotos.netEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 5 © Zühlke 2011
  6. 6. Die Einfachsicher Versicherung • Setzt auf einfache, klare Produkte • Zielgruppe: junge Arbeitnehmer in Städten • Beratung in der Kaffeepause Image: Salvatore Vuono / FreeDigitalPhotos.net beim Starbucks in der Stadt • Das Tablet wird als zeitgemäßes Instrument für den Vertrieb gesehen.Image: Ambro / FreeDigitalPhotos.netEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 6 © Zühlke 2011
  7. 7. Lösungsarchitektur der Einfachsicher Backendsystem Bestandsverwaltung Web-Service für die mobile Anwendung Gerät loggt sich Authentifizierung mit automatisch ein User + Passwort HTTPS Peters Kunden Verträge von Peters Kunden Alle Tarife der GesellschaftEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 7 © Zühlke 2011
  8. 8. HTTPS korrekt nutzen • Automatische Verifikation der Zertifikate bei bekannten Ausstellern • Bei selbst-signierten Server- Zertifikaten „not trusted server“- Fehler • Manueller Import von Zertifikaten • Man bringt Android dazu, jedes Zertifikat zu akzeptieren (X509TrustManager-Hack) • Zertifikat als Ressource in die App einbinden Image: twobee / FreeDigitalPhotos.netEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 8 © Zühlke 2011
  9. 9. Peter verliert das Gerät.Image: Sura Nualpradid / FreeDigitalPhotos.net
  10. 10. Aufnummersicher will es besser machen. „Wir wollen den Vertrieb modernisieren. Trotzdem gilt für die Vertriebsinstrumente die gleiche Devise wie auch für unsere Produkte: Wir gehen auf Nummer sicher.“ Der IT-VorstandEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 10 © Zühlke 2011
  11. 11. Security-Aspekte Vertraulichkeit wahren, d.h. Unbefugten den Zugriff verweigern Confidentiality Verfügbarkeit der Information Unverfälschtheit von Integrity Availability sicherstellen Informationen sicherstellen Kontrolle über die zu schützende Information Quelle der Information behalten Control Authenticity verifizieren Utility Nutzbarkeit der Information sicherstellenEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 11 © Zühlke 2011
  12. 12. Problemanalyse EinfachSicher Confidentiality Integrity Availability Control Authenticity UtilityEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 12 © Zühlke 2011
  13. 13. Gerät vor unbefugtem Zugriff schützenVerfügbare ProdukteGoogle Apps Device Policy Confidentiality• Passwortabfrage erzwingen Integrity Availability• Komplexer Passwörter erzwingen• Remote Wiping Control Authenticity Utility• PIN zurücksetzen• Gerät klingeln lassen• Gerät sperren• Gerät ortenEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 13 © Zühlke 2011
  14. 14. Gerät vor unbefugtem Zugriff schützenAndere Mobile Device Management Produkte• Zenprise Mobile Manager• Symantec Mobile Management• Sybase Afaria Confidentiality Integrity Availability Control Authenticity UtilityEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 14 © Zühlke 2011
  15. 15. Gerät vor unbefugtem Zugriff schützenEinfacher, aber wirksamer SchutzGelegenheit macht Diebe… …aber noch lange keine Datenspione. Image: digitalart / FreeDigitalPhotos.netEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 15 © Zühlke 2011
  16. 16. Security Modell von Android Prozess Prozess Prozess App 1 App 2 App 3 UID A UID B UID C Dalvik VM Dalvik VM Dalvik VM App Code App Code App Code SD-Karte Internal Storage Content Provider Native Code KernelEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 16 © Zühlke 2011
  17. 17. Anwendungen richtig designenIntents für IPC App 1 App 2 Activity 1 Activity 3 Activity 2 ? Service Broadcast App 3 App 4 Activity 4 Activity 5Enterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 17 © Zühlke 2011
  18. 18. Anwendungen richtig designenPermissions und Protection LevelsProtection Levels: Permissions definieren• normal <permission• dangerous xmlns:android="http://schemas.android.com/apk/res/android" android:name="com.zuehlke.ACCESS_CUSTOMER_DATA" android:description="@string/access_customer_data_desc"• signature android:protectionLevel="normal" android:label="@string/access_customer_data_label">• signatureOrSystem </permission> Permissions nutzen <uses-permission android:name="com.zuehlke.ACCESS_CUSTOMER_DATA "> </uses-permission> Image: nuttakit / FreeDigitalPhotos.netEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 18 © Zühlke 2011
  19. 19. Anwendungen richtig designenPermissions richtig einsetzen Confidentiality Intent-Filter, aber keine Permission App 1 App 2 Integrity Availability Activity 1 Activity 3 Control Authenticity Activity 2 ? Service Utility keine Empfänger- Permission exportiert Broadcast App 3 App 4 enthält sensible Daten Activity 4 Activity 5 keine SignaturprüfungEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 19 © Zühlke 2011
  20. 20. Rooting – Security ausgehebelt• OS ist Open Source• viele OSS 3rd-Party-Bibliotheken• Freundlicher Bootloader Freier Zugriff auf: • Internal Storage • Content Provider • Passwörter Image: Jomphong / FreeDigitalPhotos.netEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 20 © Zühlke 2011
  21. 21. Daten verschlüsselt ablegen ABC DEF GHI JKL Algorithmen: AES, 3DES, DES Persistenzschicht Vers-/Entschlüsselung Internal Storage / SD Card ### $$$ ??? %%% SecretKeySpec secretKeySpec = new SecretKeySpec(key, "AES"); Cipher cipher = Cipher.getInstance("AES"); cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec); byte[] encrypted = cipher.doFinal(clearBytes);Enterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 21 © Zühlke 2011
  22. 22. Verschlüsselte Datenbanken Persistenzschicht Vers-/Entschlüsselung ID Feld 2 Feld 3 ID Feld 2 Feld 3 1 A B 1 ### ### 2 C D 2 ### ### 3 3 E ### F ### Probleme: • Komplexe Abfragen nicht mehr möglich • Großer Performance-OverheadEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 22 © Zühlke 2011
  23. 23. Verschlüsselte Datenbanken Persistenzschicht Vers-/Entschlüsselung ID Feld 2 Feld 3 ID Feld 2 Feld 3 1 A B 1 ### ### 2 C D 2 ### ### 3 E F 3 ### ### Internal Storage / SD Card ### $$$ ### $$$ ### $$$ ??? %%% ??? %%% ??? %%%Enterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 23 © Zühlke 2011
  24. 24. Und wohin mit demSchlüssel? Image: jannoon028 / FreeDigitalPhotos.net
  25. 25. Passwortabfrage beim Öffnen der App Achtung: Usability-Killer! Image: Nutdanai Apikhomboonwaroot / FreeDigitalPhotos.netEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 25 © Zühlke 2011
  26. 26. Schlüssel in einem Service vorhalten• fragt Passwort bei Bedarf ab Activity• hält Schlüssel innerhalb des Anfrage Services als Variable Prompt bei Bedarf• Service vor unbefugtem Zugriff Activity absichern! Service Schlüssel ActivityEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 26 © Zühlke 2011
  27. 27. Überlassen wir es doch dem GerätDevice Level Encryption Ab Android 3.0: Transparente Verschlüsselung mit dm-crypt Droid Pro Vor Android 3.0: Hersteller-spezifische Lösungen z.B. Motorola, Samsung Galaxy S IIEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 27 © Zühlke 2011
  28. 28. Auf lokale Persistenz verzichtenDaten immer vomServer abrufen Datenhaltung im Confidentiality Speicher Integrity AvailabilityMobile Web-App Control Authenticity UtilityEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 28 © Zühlke 2011
  29. 29. Die Welt von der anderen Seite Confidentiality Integrity Availability Control Authenticity UtilityEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 29 © Zühlke 2011
  30. 30. Einloggen über den AccountManager Sehr praktisch, aber… • Credentials werden in Plaintext in einer SQLite-Datenbank gespeichert • Nach Rooten sind die Credentials Confidentiality zugreifbar Integrity Availability Control Authenticity Mit Auth-Tokens arbeiten! UtilityEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 30 © Zühlke 2011
  31. 31. Client-Zertifikate• SSL-Verbindungen mit Client-Zertifikat möglich• Private/Public-Key im Keystore nötig• Private-Key mit Passwort schützen Confidentiality Integrity Availability Control Authenticity Wirklich sicherer? UtilityEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 31 © Zühlke 2011
  32. 32. VPNOut-of-the-box werden unterstützt:• PPTP• L2TP• L2TP mit IPSec und Shared Key Confidentiality• L2TP mit IPSec und Zertifikaten Integrity Availability Control Authenticity UtilityEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 32 © Zühlke 2011
  33. 33. Die neue Lösung von EinfachSicher Backendsystem Bestandsverwaltung Web-Service für die mobile Anwendung Passwortschutz per Policy erzwungen, Bildschirmsperre nach 3 min MDM, Authentifizierung mit User + Passwort, Auth-Token-Verwaltung SSL Auth-Token Verschlüsselte Datenhaltung Peters Kunden Verträge von Peters Kunden Alle Tarife der GesellschaftEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 33 © Zühlke 2011
  34. 34. Die Lösung von Aufnummersicher Backendsystem Bestandsverwaltung Mobile Web-App Einheitliche Geräte, Dev. Level Encryption, Passwortschutz per Policy erzwungen, Bildschirmsperre sofort MDM, mobile Web-App Authentifizierung mit User + Passwort VPN (L2TP, IPSec m. CRT) Keine lokale DatenhaltungEnterprise-class Security für Android-Apps | Masanori Fujita 13. September 2011 Folie 34 © Zühlke 2011
  35. 35. Wer hat also Recht?Image: renjith krishnan / FreeDigitalPhotos.net
  36. 36. Usability Confidentiality Performance Integrity Availability Authenticity UtilitySecurity ist mit Trade-Offs verbunden. Image: Danilo Rizzuti / FreeDigitalPhotos.net
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×