Date post: | 10-Jun-2015 |
Category: |
Technology |
Upload: | stefan-buerger |
View: | 393 times |
Download: | 0 times |
Stefan Bürger
ANDROIDFREIMENGENMANAGER
Abschlusspräsentation Bakk-Arbeit
goo.gl/iPZMf
Übersicht
• Vorstellungen des Themas
• Technische Grundlagen
• Der Freimengenmanager im Detail
• Live-Demo
• Android Sicherheitskonzept und –Risiken
• Live-Demo
13.04.2023 Folie - 2
goo.gl/iPZMf13.04.2023 Folie - 3
AndroidFreimengenmanager
Günstige Telefonie Verträge
Große Menge inkludierter Freimengen
Eltern haben hohes Überwachungsverlangen
Kostenkontrolle
Einfaches Tool mit Passwortschutz
Definierbare Ausnahmen
Notfallalamierung
goo.gl/iPZMf13.04.2023
Android Grundlagen
• Betriebssystem- Linux Kernel 2.6- Dalvik VM
• AndroidManifest
• Intentverarbeitung
Folie - 4
goo.gl/iPZMf13.04.2023
Intents
Folie - 5
• Messagepassing-System (late runtime binding)
• Aktivieren Activities, Services, Broadcast-Receivers
• Verwendet von:- Betriebssystem- Entwicklern
• Passive Datenstruktur (Ziel + Daten)
• Explizite vs. Implizite Intents
goo.gl/iPZMf13.04.2023
Eine Android Anwendung besteht aus:
Folie - 6
Activities
Services
Content Providers
Intents
Broadcast Receivers
Widgets
Notifications
goo.gl/iPZMf13.04.2023
Android Freimengenmanager
Folie - 7
• Admin Oberfläche
• Anrufüberwachung- Anrufzeit messen- Ausgehende Anrufe bemerken- Anrufe abbrechen
• Benachrichtigungsservice
• Offene Punkte / technische Grenzen
goo.gl/iPZMf13.04.2023
Admin Oberfläche
Folie - 8
• Passwortschutz
• Aktivierung/Deaktivierung der Überwachung
• Eingabe von Frei-SMS und Freiminuten
• Rücksetzen der verbrauchten Freimengen
• Festlegen der Benachrichtigungsnummer
goo.gl/iPZMf13.04.2023
Anrufzeit messen
Folie - 9
• Android stellt callLogs zur Verfügung- Datenbank mit Informationen der letzten Anrufe- Abfrage SQL ähnlich (Daten, Felder, Sortierung)- Cursor zum Iterieren
• Telefonstatus überwachen
• Die Frage des richtigen Timings
goo.gl/iPZMf13.04.2023
Fang den ausgehenden Anruf
Folie - 10
• Berechtigung und Intent-Filter im AndroidManifest
• Aufruf der CallReceiver Klasse- Aktiv?- Auslesen der Zieltelefonnummer und checken ob Notruf- Überprüfen der verfügbaren Freiminuten- Anrufabbruch durch Löschen der Zieltelefonnummer- Auslösen des Benachrichtigungsservics
goo.gl/iPZMf13.04.2023
Benachrichtigungsservice
Folie - 11
• Eigene Klasse zur zentralen Verwaltung von Benachrichtigungen
• Ausgelöst durch Intent an die Klasse unter Angabe der gewünschten Benachrichtigung
• Zusatzfeature zum Senden einer SMS-Nachricht
goo.gl/iPZMf13.04.2023
Offene Punkte / technische Grenzen
Folie - 12
• Ausnahmen für einzelne Kontakte
• Technische Grenzen- Abfangen ausgehender SMS- Zählen von SMS-Nachrichten
goo.gl/iPZMf13.04.2023
LIVE – DEMOFreimengenmanager
Folie - 13
goo.gl/iPZMf13.04.2023
Android‘s Sicherheitskonzept
Folie - 14
• Überblick
• Bezug zum Freimengenmanager
• Angriffsszenario: Missbrauch des Freimengenmanagers
• Erste Ansätze für mehr Sicherheit
goo.gl/iPZMf13.04.2023
Sicherheitskonzept im Überblick
Folie - 15
• Application Sandboxing
• Sehr freien Zugriff auf Betriebssystemkomponenten
• Rechteanforderung bei Installation- Deny-all Prinzip- Bestätigung durch den Benutzer- Danach keine Anzeige/Abfrage mehr
goo.gl/iPZMf13.04.2023
Android Freimengenmanager
Folie - 16
• Angeforderte Berechtigungen- Lesen/Senden von SMS-Nachrichten- Verarbeiten ausgehender Anrufe- Lesen der Kontaktdaten- Überwachung des Telefonstatus- SMS-Nachrichten empfangen
• Nur durch Benachrichtigungen sichtbar
goo.gl/iPZMf13.04.2023
simpleMissbrauch des Freimengenmanagers
User‘s Android Device
User web server
Keyboard sniffer
Web browser
mTAN manipulation
Native SMS listener
New SMS listener
Folie - 17
goo.gl/iPZMf13.04.2023
advancedMissbrauch des Freimengenmanagers
Folie - 18
User‘s Android Device
Userweb
server
Keyboard sniffer
Web browser
mTAN manipulation
Native SMS listener
New SMS listener
Native SMS listener
goo.gl/iPZMf13.04.2023
Erste Ansätze für mehr Sicherheit
Folie - 20
• Priorisierte Intents können überwacht werden
• Priorität 0 = Letzter, Priorität 1000 = Erster
• Überwachung der abgearbeiteten Intents- Broadcast-Receiver für alle sinnvollen Broadcast-Intents- Erster, Letzter- Entdecken von modifizierten, gelöschten und
(eingeschleusten) Intents
Stefan Bürger
ANDROIDFREIMENGENMANAGER
Abschlusspräsentation Bakk-Arbeit
goo.gl/iPZMf
goo.gl/iPZMf13.04.2023
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<application android:icon="@drawable/icon" android:label="@string/app_name" android:name=".fmApp">
<receiver android:name=".call.CallReceiver">
<intent-filter android:priority="0">
<action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
</intent-filter>
</receiver>