Fachbereich 3 Informatik. Bachelorarbeit. über das Thema

Größe: px
Ab Seite anzeigen:

Download "Fachbereich 3 Informatik. Bachelorarbeit. über das Thema"

Transkript

1 Fachbereich 3 Informatik Bachelorarbeit über das Thema Modellierung von Informationen zur Interprozesskommunikation in Android-Anwendungen für Datenflussdiagramme Autor: Florian Thomas fthomas@tzi.de Matrikelnummer: Erstgutachter: Zweitgutachter: Dr. Karsten Sohr Prof. Dr. Ute Bormann Abgabedatum:

2 INHALTSVERZEICHNIS I Inhaltsverzeichnis I Inhaltsverzeichnis II II Abbildungsverzeichnis III Listing-Verzeichnis IV Abkürzungsverzeichnis IV V VII 1 Einleitung Ziel der Arbeit Vorgehen Kapitelübersicht Grundlagen Informationssicherheit Android Interprozesskommunikation Bedrohungsmodell Unerlaubtes Empfangen von Intents Unerlaubtes Senden von Intents Entwurf der Benchmark Anwendungen Activities Intents Pending Intents Services Statische Analyse IDE-Probleme Verwendete Tools Dare Epicc Android Threat Modeling Platform der Universität Bremen Fazit Validierung und Evaluation von Epicc Benchmarks Auswertung Einführung der Erweiterung von Epicc Anpassungen des Datenmodells Implementierungsdetails Explizite Intents Senden impliziter Intents Empfangen impliziter Intents Evaluation der Implementierung Testdurchführung Android-Anwendungen für Datenflussdiagramme Seite II

3 INHALTSVERZEICHNIS Testauswertung Vollständigkeit der Daten im Datenflussdiagramm Fazit und Ausblick 55 6 Quellenverzeichnis 57 Android-Anwendungen für Datenflussdiagramme Seite III

4 VERZEICHNISSE II Abbildungsverzeichnis Abb. 1 Auflistung aller Rechte, die von der Android Anwendung (App) benötigt werden Abb. 2 Auswahl einer passenden App für eine Videodatei Abb. 3 Beispielgraph zum IDE-Problem (Quelle: [Bodb]) Abb. 4 Übersicht zum Analyseablaufs Abb. 5 UML-Diagramm des Modells der Threat Modeling Platform (Ausschnitt) Abb. 6 UML-Diagramm des neu entworfenen Modells (Ausschnitt) Abb. 7 Erzeugtes Datenflussdiagramm zu Adobe Reader Abb. 8 Datenflussdiagramm zur App StartActivity Abb. 9 Datenflussdiagramm zur App StartActivity Android-Anwendungen für Datenflussdiagramme Seite IV

5 VERZEICHNISSE III Listing-Verzeichnis Lst. 1 Beispielcode zum IDE-Problem (Quelle: [Bodb]) Lst. 2 StartActivity - relevanter Quellcode (MainActivity) Lst. 3 StartActivity - Epicc Ausgabe Lst. 4 StartActivity2 - relevanter Quellcode (MainActivity) Lst. 5 StartActivity2 - Epicc Ausgabe Lst. 6 StartLinkedActivity - relevanter Quellcode (StartLinkedActivity) Lst. 7 StartLinkedActivity - Epicc Ausgabe Lst. 8 StartLinkedActivity2 - relevanter Quellcode (StartLinkedActivity21).. 22 Lst. 9 StartLinkedActivity2 - Epicc Ausgabe Lst. 10 SendBroadcast - relevanter Quellcode (SendBroadcastActivity) Lst. 11 SendBroadcast - Epicc Ausgabe Lst. 12 SendBroadcastWithPermission - relevanter Quellcode (MainActivity). 24 Lst. 13 SendBroadcastWithPermission - Epicc Ausgabe Lst. 14 BroadcastReceiver - relevanter Quellcode (Manifest) Lst. 15 BroadcastReceiver - Epicc Ausgabe Lst. 16 BroadcastReceiver2 - relevanter Quellcode (MainActivity) Lst. 17 BroadcastReceiver2 - Epicc Ausgabe Lst. 18 BroadcastReceiver3 - relevanter Quellcode (BroadcastReceiver3) Lst. 19 BroadcastReceiver3 - Epicc Ausgabe Lst. 20 BroadcastReceiverWithPermission - relevanter Quellcode () Lst. 21 BroadcastReceiver3 - Epicc Ausgabe Lst. 22 BroadcastReceiverWithPermission2 - relevanter Quellcode (Manifest). 29 Lst. 23 BroadcastReceiverWithPermission2 - Epicc Ausgabe Lst. 24 RandomIntent - relevanter Quellcode (MainActivity) Lst. 25 RandomIntent - Epicc Ausgabe Lst. 26 ViewImageViaIntent - relevanter Quellcode (ViewImageViaIntent) Lst. 27 ViewImageViaIntent - Epicc Ausgabe Lst. 28 PendingIntent - relevanter Quellcode (activity) Lst. 29 PendingIntent - Epicc Ausgabe Lst. 30 PendingIntent2 - relevanter Quellcode (MainActivity) Lst. 31 PendingIntent2 - Epicc Ausgabe Lst. 32 StartService - relevanter Quellcode (StartService) Lst. 33 StartService - Epicc Ausgabe Lst. 34 StartBinder - relevanter Quellcode (BindingActivity) Lst. 35 StartBinder - Epicc Ausgabe Lst. 36 AIDL - relevanter Quellcode (MainActivity) Lst. 37 AIDL - Epicc Ausgabe Lst. 38 AidlClient - relevanter Quellcode (MainActivity) Lst. 39 AidlClient - Epicc Ausgabe Lst. 40 AidlServer - relevanter Quellcode (IRemote.aidl) Lst. 41 AidlServer - relevanter Quellcode (ArithmeticService) Lst. 42 AidlServer - Epicc Ausgabe Lst. 43 Epicc - Manifest Lst. 44 Epicc - Einleitung der Kommunikationsauflistung Android-Anwendungen für Datenflussdiagramme Seite V

6 VERZEICHNISSE Lst. 45 Epicc - Senden eines expliziten Intents Lst. 46 Epicc - aidl Service Lst. 47 Epicc - Senden eines impliziten Intents Lst. 48 Epicc - dynamischer Receiver mit Berechtigung Lst. 49 Epicc - dynamischer Receiver Android-Anwendungen für Datenflussdiagramme Seite VI

7 VERZEICHNISSE IV Abkürzungsverzeichnis AIDL Android Interface Description Language API Application Programming Interface APK Android Package App Android Anwendung DFD Datenflussdiagramm DVM Dalvik Virtual Machine GUI Graphical User Interface IDE Interprocedural Distributive Environment IPC Inter-process communication IFDS interprocedural, finite, distributive, subset PNG Portable Network Graphics TZI Technologie-Zentrum Informatik Android-Anwendungen für Datenflussdiagramme Seite VII

8 Kapitel 1 Einleitung 1 Einleitung In den letzten zehn Jahren haben Smartphones einen gewaltigen Sprung in ihrer Entwicklung gemacht und sind für jeden erschwinglich geworden. Fast jeder besitzt mindestens ein solches Gerät und ist somit immer erreichbar, was zur Folge hat, dass sie kaum noch aus dem Alltag wegzudenken sind. Für die Besitzer von Smartphones und Tablets ergibt sich deshalb die Frage nach der Sicherheit ihres Gerätes und der darauf gespeicherten persönlichen oder beruflichen Daten. Bei dieser Betrachtung ist besonders das Android Betriebssystem relevant, da es nicht nur in Smartphones, sondern auch in Tablets, Wearables und Autos Anwendung findet. Darüber hinaus ist es mit einem Marktanteil von 70 Prozent im dritten Quartal des Jahres 2014 innerhalb Europas vertreten und somit das dort am weitesten verbreitete Betriebssystem für mobile Geräte [Mil]. Durch die hohe Verbreitung des Betriebssystems entsteht ein großer Anreiz, Apps zu entwickeln, die ihre Nutzer ausspionieren und die Daten über das Internet weitergeben, um dort verkauft oder ausgenutzt zu werden. Aus diesem Grunde ist es wichtig, sich mit dem Thema zu beschäftigen und zu versuchen, solche Apps zu identifizieren, um mögliche Schäden zu vermeiden. 1.1 Ziel der Arbeit Ziel dieser Arbeit ist es, Interprozesskommunikationen in Android-Anwendungen aufzudecken und so zu modellieren, dass sie von der gegebenen Threat Modeling Platform der Universität Bremen übernommen und als Kanten in einem Datenflussdiagramm dargestellt werden können. Die Darstellung soll dabei Kommunikationen über sowohl einzelne als auch mehrere Apps hinweg erfassen können. Die extrahierten Datenflussdiagramme können später zur Analyse der IT-Sicherheit genutzt und entsprechend weiterverarbeitet werden. Dazu wird ein Datenmodell entworfen, welches das bereits existierende der Threat Modeling Platform erweitert und alle neu gesammelten Informationen darstellen kann. Um diese zu erhalten, sollen mit einem geeigneten Werkzeug statische Datenflussanalysen durchgeführt werden. Die erhaltenen Ergebnisse dieser Analysen werden anschließend zur Erweiterung des Datenmodells genutzt. Dabei bezieht die Analyse möglichst viele Komponenten der Apps sowie deren Kommunikationsmöglichkeiten im Android Betriebssystem mit ein. Die gefundenen Kommunikationen sollen im abschließend generierten Datenflussdiagramm als Kante dargestellt werden. Abschließend soll das Ergebnis dieser Arbeit evaluiert werden, um zu bestätigen, dass alle Android-Anwendungen für Datenflussdiagramme Seite 1

9 Kapitel 1 Einleitung erfassbaren Informationen korrekt verarbeitet und in das neue Modell überführt worden sind. 1.2 Vorgehen Das Herangehen an die Arbeit beginnt mit dem Evaluieren des vorhandenen Tools Epicc, das zur Analyse der Apps genutzt werden soll. Das Programm wird an der Pennsylvania State University entwickelt [?] und soll zur Darstellung der Kanten Interprozesskommunikationen innerhalb von Apps finden. Dazu werden verschiedene Apps implementiert, die einzelne oder später auch mehrere Kommunikationsmöglichkeiten besitzen. Anschließend wird Epicc mit diesen Apps getestet, um festzustellen, ob und welche Fälle erkannt werden und wie viel Informationen gesammelt werden. Sollten diese nicht ausreichen, wird das Tool so angepasst, dass weitere Informationen ausgegeben werden können. Diese sollen anschließend so gefiltert werden, dass nur die Hinweise auf mögliche Kommunikationsvorgänge übrig bleiben. Diese werden in ein neu entwickeltes Zwischenformat gebracht, das von der Threat Modeling Platform verarbeitet werden kann, um die Interprozesskommunikationen darstellen zu können. Die Übernahme neuer von Epicc gesammelter Informationen durch die Anwendung setzt eine Erweiterung des bestehenden Datenmodells und eine Veränderung der zu Grunde liegenden Architektur voraus. Im letzten Schritt muss die vorgenommene Implementierung evaluiert werden, um festzustellen, ob die von Epicc erhobenen Daten vollständig und korrekt übernommen worden sind. Der Benchmark wird zur Evaluation der eigenen Implementierung um Apps aus dem Google Play Store erweitert werden. 1.3 Kapitelübersicht Der Aufbau der Arbeit gliedert sich im Anschluss an die Einleitung in ein Grundlagenkapitel, das dem Leser das nötige Wissen vermittelt, um im folgenden Kapitel der Beschreibung des Benchmarks, der Tools und insgesamt dem Verlauf der Arbeit folgen zu können. Im Anschluss an die Evaluation des Tools Epicc mit dem Benchmark wird das neue Datenmodell beschrieben und nachfolgend werden Implementierungsdetails zu dem in dieser Arbeit entwickelten Tool genauer ausgeführt. Abschließend wird die neue Implementierung ebenfalls evaluiert und es wird ein Fazit gezogen sowie ein Ausblick für die weitere Bearbeitung des Problems gegeben. Android-Anwendungen für Datenflussdiagramme Seite 2

10 Kapitel 2 Grundlagen 2 Grundlagen Dieses Kapitel erklärt die Grundlagen, die zum Verständnis der Arbeit wichtig sind. Begonnen wird mit dem Begriff Informationssicherheit (Abschnitt 2.1), gefolgt von einer Übersicht zum Android Betriebssystem und seinen Komponenten (Abschnitt 2.2). Nachfolgend werden die Kommunikationsmöglichkeiten von Android detailliert beschrieben (Abschnitt 2.3) und daraus abgeleitete Angriffsszenarien (Abschnitt 2.4) und Benchmarks (Abschnitt 2.5) als Vorbereitung auf das Kapitel 3 kurz genannt. Abschließend werden verwendete Methoden (Abschnitt 2.6 und 2.7) und Tools (Abschnitt 2.8) erläutert. 2.1 Informationssicherheit Das Thema dieser Arbeit ordnet sich dem Oberthema der Informationssicherheit unter, hier mit Bezug auf Android-Anwendungen. Der Begriff Sicherheit besitzt in diesem Umfeld zwei Bedeutungen, die beispielsweise im Englischen durch verschiedene Begriffe voneinander abgegrenzt sind. Zum einen existiert der Ausdruck Safety, der Aussagen über die Funktions- und Betriebssicherheit macht, im Folgenden jedoch von geringerer Wichtigkeit ist. Zum anderen der Begriff Security, der die richtige Bedeutung des Wortes für diesen Kontext wiedergibt. Er beschreibt die Sicherung eines IT-Systems gegen Angriffe oder unabsichtliche Fehlbedienung [BSG] einer Anwendung. Dies geschieht im Rahmen dieser Arbeit insoweit, dass die Analyse bestehender Apps dem Aufdecken von Schwachstellen oder ungewolltem Schadcode dienen kann. Es wird somit vorrangig ein Schutz für die Apps und ihre Daten und nicht für das gesamte System vorgestellt. 2.2 Android Um mögliche Schwachstellen in einem Android System aufdecken zu können, muss man die Funktionsweise, Zusammensetzung und Kommunikationsmöglichkeiten des Systems selbst und seiner Apps verstehen. Dazu wird im Folgenden ein kurzer Überblick über die genannten Aspekte gegeben. Android ist ein von der von Google gegründeten Open Handset Alliance [OHA] entwickeltes Betriebssystem, das auf Linux basiert, dessen Quellcode offen einsehbar ist und das vorrangig für Smartphones verwendet wird. Viele Hersteller nutzen eine für die eigenen Ansprüche angepasste Version des Betriebssystems auf ihren Geräten und statten diese mit einer Auswahl an meist selbst entwickelten Apps aus. Android-Anwendungen für Datenflussdiagramme Seite 3

11 Kapitel 2 Grundlagen Die auf dem Smartphone installierbaren Apps sind in der Programmiersprache Java geschrieben und werden zusätzlich von vielen Drittanbietern auf einem der dafür vorgesehenen Marktplätze angeboten. Dazu gehört unter anderem der offizielle Marktplatz Google Play Store [Gooc] oder der Amazon App-Shop [Ama]. Neben dem oft kostenlosen Erwerb einer App in diesen Shops besteht außerdem die Möglichkeit, sie als Installationsdatei (Android Package (APK)) direkt aus dem Internet herunterzuladen, beispielsweise von einem Blog, auf dem ein Student seine selbst geschriebene App vorstellt. Mit der großen und unüberschaubaren Auswahl an Anbietern von Apps kommt jedoch auch das Risiko, dass nicht jede vollständig auf Schadsoftware untersucht werden kann, bevor sie auf das Gerät gelangt. Eine solche Untersuchung ist zum Teil sehr zeitaufwendig und es existieren noch keine Analysen, die eine hundertprozentige Garantie für die Sicherheit einer App geben können. Aus diesem Grund gibt es im Android Betriebssystem Mechanismen, die die Daten des Nutzers und die Apps untereinander schützen sollen. Als erste Schutzmaßnahme läuft eine App in einer virtuellen Umgebung (Dalvik Virtual Machine (DVM)), in der sie nur Zugriff auf die eigenen Daten hat, da allgemein angenommen wird, dass jede App schädlich ist. Um diese Möglichkeiten zu erweitern, muss ein Entwickler im Manifest seiner App Rechte definieren, die er erhalten möchte, wie zum Beispiel den Zugriff auf das Internet. Jede App benötigt ein solches Manifest, da dieses wie ein Inhaltsverzeichnis funktioniert. Die meisten Komponenten der App werden dort aufgelistet und weitere Informationen, wie die Version der App, angegeben. Der Nutzer bekommt diese angeforderten Rechte vor der Installation angezeigt und muss entscheiden, ob er der App soweit vertraut, dass er diese Anfragen bestätigen möchte, ansonsten wird der Vorgang abgebrochen. Durch eine sinngemäße Gruppierung von ähnlichen Rechten, wie zum Beispiel dem Durchsuchen von auf dem Gerät gespeicherten Bildern und dem Auslesen der SD-Karte des Telefons zur Obergruppe Fotos/Medien/Dateien, soll die Übersichtlichkeit der Auflistung bewahrt werden (siehe Abbildung 1). Sollte eine App beispielsweise zur Bearbeitung von Fotos nach dem Recht fragen, das Internet nutzen zu dürfen, könnte dies ein Indiz dafür sein, dass die App nicht seriös ist. Das ist allerdings nicht sicher und oftmals ist die Liste an Berechtigungen zu umfangreich oder zu allgemein, sodass der Nutzer keine Lust hat, sie vollständig zu lesen oder sich ausreichend zu informieren und sie stattdessen einfach bestätigt. Hinzu kommt, dass durch Ausnutzung von Kommunikationsfunktionen (Interprozesskommunikation, siehe Kapitel 2.3) zwischen Apps, die das Betriebssystems bereitstellt, der Mechanismus der Berechtigungsvergabe nicht mehr aussagekräftig genug ist. Sollte der Nutzer sich beispielsweise eine App zum Anzeigen von Fotos und eine zum Surfen im Android-Anwendungen für Datenflussdiagramme Seite 4

12 Kapitel 2 Grundlagen Abbildung 1: Auflistung aller Rechte, die von der App benötigt werden Web installieren, so benötigt erstere Rechte zum Öffnen von auf dem Smartphone gespeicherten Fotos und letztere nur das Recht, Daten in das Internet zu senden und von dort zu empfangen. In bestimmten Fällen reicht das allerdings schon aus, da die Foto App ihre Daten an die Internet App weitergeben kann, welche diese verschickt. Das genannte Beispiel zeigt nur eine von vielen Möglichkeiten, die Interprozesskommunikation auszunutzen, da neben der unerwünschten Kommunikation zwischen zwei Apps auch intern verschickte Nachrichten mitgelesen, gestohlen oder ersetzt werden können. Ein Erkennen von unerlaubten Kommunikationen in diesem Kontext erfordert folglich eine genauere Einsicht in die verwendeten Komponenten. Zu den wichtigsten Komponenten gehören Activities, Services und Broadcast Receiver, deren Funktionalität im Folgenden kurz beschrieben werden soll. Content Provider werden an dieser Stelle vernachlässigt, da sie nicht in der Lage sind, Nachrichten (Intents) zu verschicken oder zu empfangen. Intents sind Pakete, die Angaben zum Empfänger sowie Daten für diesen enthalten und für die Kommunikation in Android genutzt werden (Intents werden in Kapitel 2.3 genauer beschrieben). Eine Anwendung besteht meist aus mehreren Activities [Gooa], die für die Darstellung einer für den Nutzer sichtbaren Bildschirmoberfläche (Graphical User Interface (GUI)) Android-Anwendungen für Datenflussdiagramme Seite 5

13 Kapitel 2 Grundlagen und deren Funktionalität zuständig sind. Je Funktion existiert meist eine Activity, zum Beispiel für das Anzeigen eines Fotos. Ein Knopfdruck auf teilen würde daraufhin eine neue Activity starten, die die gewünschte Aufgabe bearbeiten kann und nicht zu der aktuellen App gehören muss. Des Weiteren stellt Android Services zur Verfügung [Goof], die im Hintergrund laufend Aufgaben, zum Beispiel einen Download für eine App, erledigen können. Wenn dies vom Entwickler absichtlich oder teils unabsichtlich so festgelegt wird, kann der Service einer App auch von anderen genutzt werden, indem die Schnittstelle zur Nutzung des Services für fremde Apps freigegeben wird. Die Definition eines Services kann im Code oder auf der Grundlage einer AIDL-Datei (Android Interface Description Language) erfolgen, die knapp vorgibt, welche Funktionalität mindestens vom Service angeboten werden muss. Aus der AIDL-Datei kann direkt Code generiert werden, was die Implementierung eines Services über mehrere Apps hinweg vereinfacht. Neben den auf unbestimmte Dauer laufenden Hintergrundservices gibt es gebundene Services, die ebenfalls eine Aufgabe für eine andere Komponente erfüllen, deren Laufzeit jedoch auf die Bearbeitungszeit dieser Aufgabe beschränkt ist. In der Umsetzung wird dieser Unterschied ebenfalls deutlich, weil jeweils andere Methoden für das Versenden der unterschiedlichen Intents genutzt werden (startservice und bindservice) [Goob]. Den dritten grundlegenden Bestandteil bilden die Broadcast Receiver [Good], die für das Empfangen von Intents innerhalb des Systems gedacht sind und diese an Activities oder Services weiterreichen. Ein Broadcast beschreibt das Versenden eines Intents ohne festes Ziel (implizit) innerhalb des Systems, sodass dieses oder der Nutzer einen Empfänger anhand der mitgegebenen Aufgabe identifizieren muss. Um Intents empfangen zu können, muss man dies entweder direkt im Code (dynamisch) oder alternativ im Manifest der App angeben. 2.3 Interprozesskommunikation Android bietet Entwicklern eine Vielzahl von Möglichkeiten, um mit den Komponenten ihrer oder fremder Apps kommunizieren zu können. Dies fördert die Wiederverwendbarkeit einzelner Module und die Zusammenarbeit von Apps verschiedener Entwickler. Zentraler Baustein der Kommunikation sind verschiedene Arten von Intents, die einerseits dafür zuständig sind Activities und Services zu starten oder letztere zu stoppen und zu binden. Binden bezeichnet das Verknüpfen einer Komponente mit dem Service, um ihn nutzen zu können. Andererseits dienen Intents der Nachrichtenübermittlung in Form eines Pakets, das verschiedene Daten enthalten kann. Android-Anwendungen für Datenflussdiagramme Seite 6

14 Kapitel 2 Grundlagen Dabei können diese entweder an ein bestimmtes Ziel, zum Beispiel eine Activity (explizit), oder ohne festes Ziel (implizit) mit einem bestimmten Zweck (Action) verschickt worden sein. Dieser gibt beispielsweise an, dass das verschickte Paket ein anzuzeigendes Bild enthält, damit das Betriebssystem die Nachricht nur noch an Apps weiterreicht, die dieses auch verarbeiten können. Der Inhalt des Paketes (Data) kann noch durch weitere Spezifikationen erweitert werden, wie das Format des Bildes (Type), weitere Informationen zur verarbeitenden Komponente (Category) oder andere Daten, die später genutzt werden können (Extras) [Good]. Durch das implizite Verschicken von Informationen kann es passieren, dass das Betriebssystem mehrere Apps findet, die für die gewünschte Operation in Frage kommen. In diesem Fall muss der Nutzer eine Entscheidung treffen und auswählen, welche genutzt werden soll (siehe Abbildung 2). Sollten hingegen mehrere Services in Frage kommen, so ist für den Nutzer nicht sichtbar, welcher vom System gewählt wurde. Dies stellt ein Sicherheitsrisiko dar, widerspricht den Androidrichtlinien für Entwickler [Gooe] und ist ab der Android Version 5.0 (Application Programming Interface (API) Level 21) grundsätzlich verboten. Abbildung 2: Auswahl einer passenden App für eine Videodatei Die App, welche den Intent letztlich erhält, kann die darin enthaltenen Daten weiterverarbeiten, darf dies jedoch nur mit den eigenen Berechtigungen tun. Sollte es notwendig sein, dass bestimmte Rechte innerhalb der Verarbeitung erforderlich sind, so kann die Nachricht Android-Anwendungen für Datenflussdiagramme Seite 7

15 Kapitel 2 Grundlagen als Pending Intent verschickt werden. Das bedeutet, dass die App, die die Nachricht erhält, die Rechte der sendenden App für die Dauer der Bearbeitung erhält. Dieser Schritt setzt somit ein Vertrauen voraus, dass die übertragenen Rechte rechtmäßig genutzt werden. Weiterhin sollte der Pending Intent geschützt werden, indem man die Zielkomponenten direkt spezifiziert oder spezielle Rechte fordert, um den Intent erhalten zu dürfen. 2.4 Bedrohungsmodell Nach der Einführung der Kommunikationsmöglichkeiten und Komponenten des Android Betriebssystems soll ein kurzer Überblick über konkrete Angriffspunkte gegeben werden. Dieser Abschnitt orientiert sich an dem Paper Analyzing Inter-Application Communication in Android [CPFGW] und führt die dort gegebenen Beispiele aus, da Epicc vor genau den hier genannten Angriffsmethoden warnen kann Unerlaubtes Empfangen von Intents Broadcasts sind so ausgelegt, dass sie potentiell von allen Komponenten empfangen werden können, wenn diese nur einen entsprechenden Intent-Filter definiert haben. Ohne einen zusätzlichen Schutz durch Berechtigungen ist es somit leicht, Broadcasts mitzulesen, ohne dass der Nutzer dies mitbekommt (Broadcast Theft). Ähnlich zum zuvor genannten Szenario können sich Activities von bösartigen Apps für die impliziten Intents von anderen Apps registrieren. Diese können den Inhalt der Intents auslesen, wenn der Nutzer versehentlich oder auf Grund eines geschickt gewählten Namens die falsche App auswählt (siehe Abbildung 2). Einen besonderen Fall bilden hier die Apps, die darüber hinaus dem Nutzer optisch vortäuschen, eine andere App zu sein, um so beispielsweise Nutzernamen und Passwort zu erhalten, die für die App gedacht waren, die der Nutzer ursprünglich starten wollte (Activity Hijacking). Genau wie Activities können auch Services sich für das Empfangen von Intents registrieren. Sie haben jedoch aus Sicht des Angreifers den Vorteil, dass der Nutzer keinen Einfluss auf die Wahl des Services hat, der den Intent empfangen soll und den Auswahlprozess nicht einmal mitbekommt. Dieser ist darüber hinaus noch zufällig und bietet keinen Schutz gegen das unerlaubte Ansprechen durch schadhafte Komponenten (Service Hijacking). Die getroffene Auswahl des Nutzers oder des Systems für eine Activity oder einen Service kann sich in der Folgezeit noch weiter auswirken. Ein jetzt gebundener Service oder eine ausgewählte und als Standardanwendung für diesen Dateityp festgelegte App, beispielsweise zum Öffnen von Videodateien, können so agieren wie der ursprüngliche Android-Anwendungen für Datenflussdiagramme Seite 8

16 Kapitel 2 Grundlagen Empfänger des Intents, damit sie weitere Anfragen erhalten und so Informationen weitergeben können. Der Empfang eines Intents durch eine unberechtigte Anwendung kann neben der direkten Weitergabe von Informationen noch dazu führen, dass Rechte anderer Komponenten durch geschicktes Anfragen und Abfangen des Intents missbraucht werden oder diese komplett übernommen werden. Letzteres ist beim erfolgreichen Empfangen von Pending Intents der Fall, die dem Empfänger alle Rechte des Senders übertragen Unerlaubtes Senden von Intents Alternativ zum Mitlesen oder Abfangen von Nachrichten können diese auch mit Absicht ins System geschickt werden, um dort Schaden zu verursachen. Im Fokus stehen hier die Broadcast Receiver, die auf das Empfangen von ins System geschickten Nachrichten ausgelegt sind und als von außerhalb der eigenen App ansprechbar (exported) markiert sind. Vertrauen diese einem Intent blind, so kann leicht eine ungewollte Aktion durch die weiterverarbeitende Komponente ausgelöst werden oder es wird in Folgeschritten auf falschen oder schadhaften Daten weitergearbeitet (Malicious Broadcast Injection). Ein impliziter oder expliziter Intent kann auch direkt zu einer exported Activity gelangen, was zur Folge hat, dass diese gestartet wird. Einerseits können durch die Activity andere Komponenten beeinflusst oder Daten geändert oder beschädigt werden. Andererseits kann, ohne Wissen des Nutzers, aus einer schadhaften App zu einer anderen Anwendung gewechselt werden. Dieser könnte dort zum Beispiel Änderungen vornehmen, die nicht für diese App gedacht waren und so selbst Schaden verursachen, indem er ungewollt Daten verändert oder löscht. Letztlich ist es noch möglich, dass die aufgerufene Activity sensible Daten an die schadhafte App zurückgibt, wenn sie ihre Arbeit beendet hat (Malicious Activity Launch). Auch Services, die als exported markiert wurden, können, wenn sie nicht ausreichend durch Berechtigungen geschützt werden, unrechtmäßig ausgenutzt werden. Die Probleme, die entstehen können, decken sich mit den zuvor genannten der Activities. Es kann ebenfalls zu ungewollter Veränderung oder dem Löschen von Daten sowie der Weitergabe von Informationen kommen. Zusätzlich stellen Services dem Aufrufer Methoden zur Verfügung, die dieser Nutzen kann, um an weitere Daten zu gelangen oder anderen Schaden zu verursachen (Malicious Service Launch). 2.5 Entwurf der Benchmark Anwendungen Nachdem in den vorangegangenen Abschnitten des Kapitels Grundlagenwissen gesammelt worden ist, lässt sich nun ein Satz von minimalistischen Apps erstellen, die jeweils Android-Anwendungen für Datenflussdiagramme Seite 9

17 Kapitel 2 Grundlagen eine Möglichkeit der Interprozesskommunikation nutzen. Die entstandene Sammlung soll während der weiteren Arbeit als Benchmark für fremde und eigene Tools verwendet werden, um zu prüfen, ob diese die Merkmale der Apps erkennen. Der Benchmark lässt sich in die folgenden vier Oberkategorien Activities, Intents, Pending Intents und Services einteilen, die in Abschnitt 3.1 genauer aufgelöst werden. Es wird zu jeder Kurzbeschreibung eine Referenz zum entstandenen Benchmark gegeben. Dort folgt eine genauere Beschreibung Activities Das Starten einer Activity während der Laufzeit kann klar vorgegeben sein (siehe Benchmark B1 im Kapitel 3.1) oder von einem Faktor wie zum Beispiel dem Zufall abhängen (B2, B12). Zusätzlich kann das Erkennen von gestarteten Activities durch verschachtelte Aufrufe über mehrere Komponenten hinweg erfolgen (B3 und B4) Intents Beim Versenden von Intents kann dies implizit (B5) über einen Broadcast oder explizit geschehen (B1). Zusätzlich können sie durch eine Berechtigung geschützt sein (B6, B10, B11), um festzulegen, wer diese empfangen darf. Zum Empfangen eines Intents muss dies im Manifest (B7) oder direkt im Code (B8) beim System angemeldet werden. Bei einer Registrierung im Manifest lassen sich weitere Spezifikationen zur Art des Inhalts des Intents machen (B9), zum Beispiel Format des enthaltenen Bildes als Portable Network Graphics (PNG) Datei (data:mimetype). Außer eigenen Komponenten als Empfänger lässt sich ein Intent auch implizit an fremde Apps, zum Beispiel einen Bildbetrachter, schicken (B13). Dazu wird mindestens eine Action angegeben, die den Inhalt eines Intents beschreibt Pending Intents Pending Intents können entweder an eigene Komponenten innerhalb einer App (B14) oder an eine fremde Komponente (B15) weitergereicht werden Services Die Definition eines Services kann als Klasse im Code erfolgen, für andere nutzbar gemacht werden (exported=true, B16) und gegebenenfalls eine Schnittstelle (Binder, B17) zur Verfügung stellen, die bestimmte Funktionen für andere Komponenten nutzbar macht. Android-Anwendungen für Datenflussdiagramme Seite 10

18 Kapitel 2 Grundlagen Neben der Definition im Code kann ein Service durch eine AIDL-Datei vorgegeben werden. Falls dieser beispielsweise von einer großen Zahl an anderen Komponenten genutzt werden soll, erleichtert dies die Verbreitung. Dabei kann der Service bereitgestellt (B20) und von einer fremden Komponente (B19) oder innerhalb der App (B18) verwendet werden. 2.6 Statische Analyse Die Untersuchung der Apps innerhalb der Arbeit erfolgt in Form einer statischen Analyse. Das bedeutet, dass die Anwendung als APK-Datei vorliegt und noch nicht auf einem Gerät installiert ist. APK-Dateien werden nach der Entwicklung einer App erstellt und enthalten alle für die Installation auf dem Gerät relevanten Daten. Dabei wurde unter anderem der von Menschen lesbare Quellcode in unlesbaren, für Maschinen interpretierbaren Bytecode umgewandelt (kompilieren). Im Anschluss an das initiale Entpacken der APK-Datei folgt, als Vorverarbeitungsschritt für Epicc, das Dekompilieren der erhaltenen Dateien. Das beschreibt das Zurückführen von Bytecode in Quellcode, was jedoch nicht verlustfrei passiert. Es gehen Informationen wie Kommentare oder Variablenbenennungen verloren. Trotzdem können die entstandenen Dateien im nächsten Schritt analysiert werden. Zur Durchführung einer statischen Analyse ist es somit nicht nötig, dass die App auf dem Gerät installiert ist und ausgeführt wird [Goe][Kos]. Dies bedeutet im Umkehrschluss, dass keine Laufzeitinformationen, wie zum Beispiel die Auslastung der Netzwerkverbindung, zur Verfügung stehen. Dennoch lassen sich aus dem Programmcode Erkenntnisse ziehen, da Schlüsselwörter der Programmiersprache (hier: Java) oder Muster und Blöcke im Code bekannte Auffälligkeiten ausweisen können. Weiter lassen verwendete Datenstrukturen wie zum Beispiel Intents und deren Initialisierung bzw. Veränderung Rückschlüsse auf mögliche Kommunikationen zu. 2.7 IDE-Probleme IDE-Probleme (Interprocedural Distributive Environment) stammen aus der Klasse der IFDS-Probleme (interprocedural, finite, distributive, subset), die 1995 von Reps, Horwitz und Sagiv definiert worden sind [RHS]. Die Grundidee besteht aus der Reduktion von Programmanalyse-Problemen in Erreichbarkeitsprobleme innerhalb von Graphen [Boda]. Dazu wird ein Graph aufgebaut, der den Programmfluss darstellt und der mit Erreichbarkeitsanalysen durchsucht wird. Android-Anwendungen für Datenflussdiagramme Seite 11

19 Kapitel 2 Grundlagen Diese Idee soll im Folgenden an einem kurzen Beispiel verdeutlicht werden. Gegeben sei der Pseudocode aus Listing 1 und die Vorgabe, dass die Rückgabe der Methode secret niemals auf der Konsole ausgegeben werden darf (print). 1 void main ( ) { 2 i n t x = s e c r e t ( ) ; 3 i n t y = 0 ; 4 y = foo ( x ) ; 5 p r i n t ( y ) ; 6 } 7 8 i n t foo ( i n t p ) { r eturn p ; } Listing 1: Beispielcode zum IDE-Problem (Quelle: [Bodb]) Die Analyse des gegebenen Codes liefert den Graph in Abbildung 3. Dargestellt wird die Änderung des Inhalts der Variablen x und y in Abhängigkeit vom Programmfluss durch die Anweisungen aus Listing 1. Die 0 beschreibt eine leere wahre Aussage und dient beispielsweise der Beschreibung von unbedingten Startwerten. Dies ist in der ersten illegalen Informationsflusskante (rot) zu sehen, die von 0 zu x verläuft und angibt, dass der neue Wert von x unabhängig vom Ausgangswert war, da dieser hier direkt überschrieben wird. 0 x y Kontrollfluss int x = secret(); Datenfluss 0 x y illegaler Informationsfluss int y = 0; 0 x y Aufruf 0 p y = foo(x); return p; 0 x y 0 Rückgabe p print(y); Abbildung 3: Beispielgraph zum IDE-Problem (Quelle: [Bodb]) Android-Anwendungen für Datenflussdiagramme Seite 12

20 Kapitel 2 Grundlagen Interessant ist besonders der rot markierte Pfad, der die Lösung des Erreichbarkeitsproblems darstellt und gleichzeitig die Tatsache aufzeigt, dass eine Verletzung der Vorgabe vorliegt. Folgt man der Rückgabe der Methode secret, so wird diese zu Beginn in die Variable x geschrieben und anschließend der Methode foo übergeben. Die Rückgabe von foo, die x entspricht, wird in die Variable y geschrieben und letztlich mit Hilfe von print auf der Konsole ausgegeben. Das bedeutet, dass die geheimen Informationen aus der Rückgabe von secret für unberechtigte sichtbar werden. Die unerlaubte Weitergabe der Informationen wurde hier erfolgreich aufgedeckt und wird in Epicc auf Kommunikationsflüsse in Apps übertragen. 2.8 Verwendete Tools Dieser Abschnitt gibt einen Überblick über den Nutzen und die Funktionsweise von Epicc und weiterer genutzter Tools Dare Zur initialen Vorverarbeitung einer APK-Datei wird Dare genutzt, das den Bytecode in Java Code dekompiliert. Anschließend liegt die Anwendung in einem für Epicc nutzbaren Format vor Epicc Zur Analyse der Apps wird das Programm Epicc (Effective and Precise Inter Component Communication) der Pennsylvania State University [?] genutzt. Es baut auf Soot [Gro] auf, einem bekannten Codeanalyse-Tool für Java und Android und versucht Interprozesskommunikationen oder allgemeiner den Informationsfluss innerhalb von Android Apps aufzudecken und diesen gegebenenfalls als Risiko einzustufen. Das Erfassen der Kommunikation beschränkt sich innerhalb der Analyse speziell auf die Schnittstellen, sogenannte Exit und Entry Points, an denen Intents verschickt oder empfangen werden können und dem Verweisen dieser aufeinander, falls sie miteinander kommunizieren können. Das Tool verfolgt dabei im Gegensatz zu vielen vergleichbaren Programmen einen Ansatz, der darauf ausgelegt ist, False-Positives, zum Beispiel fälschlicherweise als Kommunikationspartner markierte Punkte in der analysierten Anwendung, zu vermeiden. Gewährleistet wird dies, da der von Soot bereitgestellte IDE- Solver Heros drei spezielle Eigenschaften besitzt, er ist flow-sensitive, context-sensitive und inter-procedural. Der Begriff flow-sensitive bedeutet, dass beispielsweise die Veränderungen an einer Variable, die einen Intent enthält, über den gesamten Programmverlauf beobachtet werden. Android-Anwendungen für Datenflussdiagramme Seite 13

21 Kapitel 2 Grundlagen Sollte der Fall eintreten, dass der Intent mehrmals verschickt und zwischen der Nutzung verändert wird, so kann zu jedem Zeitpunkt genau gesagt werden, welchen Zustand der Intent besitzt [OMJ + 13]. Weiterhin ist der Ansatz context-sensitive, da für jeden Methodenaufruf der Rückgabewert exakt ermittelt wird, anstatt eine allgemeine Menge an möglichen Rückgabewerten über alle Fälle hinweg zu ermitteln. Nimmt man für dieses Beispiel an, dass allen Aufrufen am Ende der Analyse die gleiche Gesamtmenge an möglichen Rückgabewerten zugewiesen wird, so ist das Ergebnis nicht falsch, da der wirkliche Wert in der Menge enthalten ist. Durch die Verallgemeinerung entsteht jedoch das Risiko False-Positves zu erzeugen [OMJ + 13]. Drittens beschreibt inter-procedural die Betrachtung des gesamten Programms oder einer App mit Hilfe eines Kontrollflussgraphen. Dies hat ebenfalls den Vorteil, dass im Verlauf der Analyse zum Beispiel genauere Rückschlüsse über mögliche Werte eines Intents gemacht werden können, anstatt alle denkbaren Wertekombinationen betrachten zu müssen [HB]. In einem ersten Schritt der Analyse durch Epicc erfolgt das Einlesen der zu analysierenden Anwendung und die Aufteilung dieser in kleinste Bestandteile, meist einzelne Anweisungen. Diese dienen dem Aufbau eines Kontrollflussgraphen, der den Ausführungsablauf der App darstellt und der im Folgeschritt in ein IDE-Problem umformuliert werden kann. Die Hauptaufgabe des Programms stellt die Überführung der Eingabe als Inter-process communication (IPC)-Problem in ein IDE-Problem dar, da für dieses eine Lösung effektiv berechnet werden kann. Ein IPC-Problem bezeichnet die Suche nach Kommunikationen zwischen verschiedenen Prozessen. Zuvor findet noch eine String-Analyse statt, die im Code unveränderlich festgelegte Werte herausfiltert, die beispielsweise an wichtige Methoden wie Intent.setAction oder Intent.addCategory übergeben werden. Die Ergebnisse werden im Folgeschritt an einen in Soot enthaltenen IDE-Solver (Heros) weitergegeben, der darauf spezialisiert ist, IDE-Probleme effizient zu lösen. Das Resultat sind zum Beispiel Informationen über einen Intent, die angeben, ob dieser implizit oder explizit verschickt wurde und welche weiteren Daten er enthält. Zusätzlich wird bestimmt, wie viele mögliche Werte der Intent annehmen kann. Dies ist nötig, da ein Broadcast Receiver, der im Intent-Filter die Action A und die Category C definiert, Intents empfangen kann, die entweder die Action A und Category C besitzen oder nur die Action A. Neben dem allgemeinen Auffinden von möglichen Start- oder Endpunkten einer Kommunikation ist Epicc in der Lage, potenzielle Bedrohungen aus dieser Menge herauszufiltern und zu nennen. Zu den erfassten Sicherheitsrisiken gehören das Mitlesen von Broadcasts Android-Anwendungen für Datenflussdiagramme Seite 14

22 Kapitel 2 Grundlagen ( Broadcast Theft (Sniffing), zum Beispiel in B5, B6, B12), das Einschleusen von fremden Broadcasts in das System ( Malicious Broadcast Injection, zum Beispiel in B7, B8, B9, B10, B11) und das unerlaubte Starten ( Malicious Service Launch, zum Beispiel in B16, B17, B18, B20) oder Nutzen von Services ( Service Hijacking, zum Beispiel in B19) Android Threat Modeling Platform der Universität Bremen Die zu erweiternde Software wird im Rahmen des ZertApps Projekts [Zerb] vom Technologie- Zentrum Informatik (TZI) der Universität Bremen und Partnern wie dem Fraunhofer- Institut für Sichere Informationstechnologie, SAP, der datenschutz cert GmbH, Otaris und der Technischen Universität Darmstadt entwickelt. Ziel des Projektes ist es, ein System zu schaffen, das tiefgreifende Analysen von Android Apps durchführen kann, um im Anschluss eine Sicherheitszertifizierung für diese ausstellen zu können. Dies wäre beispielsweise vor der Veröffentlichung einer App im Google Play Store sinnvoll, da so im Vorfeld gefundene Probleme beseitigt werden können und die von Google durchgeführten Maßnahmen oft nicht ausreichen [Zera]. Zu den von der Threat Modeling Platform durchgeführten, über den Stand der Technik hinausgehenden Analysemethoden gehören statische und dynamische Analysen, die speziell auf das Android System ausgelegt sind. Hinzu kommen plattformunabhängige Analysen, die den Fokus auf HTML5 und Java legen. Ergänzend soll das Zusammenspiel von mehreren Apps betrachtet werden. Die Software liegt als Eclipse Plugin vor und ist in der Lage, eine gegebene APK-Datei zu analysieren und eine Datenstruktur aufzubauen, die alle relevanten Informationen zu den Komponenten und dem System enthält. An diese Datenstruktur soll im Verlauf der Arbeit das neu entwickelte Modell angepasst werden. 2.9 Fazit In diesem Kapitel wurden die Grundlagen zum Android Betriebssystem und seinen Komponenten vermittelt. Es wurden Begriffe wie Activity, Broadcast Receiver, Service und Intent eingeführt. Ergänzend wurden verwendete Methoden und Probleme, wie zum Beispiel das IDE-Problem erklärt und genutzte Tools beschrieben. Somit kann nachfolgend, durch die Evaluation von Epicc, mit der Vorbereitung für die Erweiterung des Datenmodells begonnen werden. Android-Anwendungen für Datenflussdiagramme Seite 15

23

24 Kapitel 3 Validierung und Evaluation von Epicc 3 Validierung und Evaluation von Epicc In diesem Kapitel wird beschrieben, wie das verwendete Tool Epicc gegen den beschriebenen Benchmark getestet (Abschnitt 3.1) und evaluiert (Abschnitt 3.2) wurde. 3.1 Benchmarks Als Benchmark wurden verschiedene Apps implementiert, die jeweils eine Information über genau eine Kommunikationsmethode senden oder empfangen können. Als Vorbereitung wurden die zugehörigen APKs der beschriebenen Apps mit Dare dekompiliert. Je Beispiel ist ein Verweis auf die Erwartungen des Epicc-Durchlaufes gegeben, denen die Ergebnisse in gekürzter Form gegenübergestellt werden. Bevor auf die einzelnen Benchmark- Anwendungen genauer eingegangen wird, werden diese mit einer Kurzbeschreibung aufgelistet. B1. StartActivity: Startet auf Knopfdruck eine zweite Activity. B2. StartActivity2: Startet auf Knopfdruck zufällig eine von zwei Activities. B3. StartLinkedActivity: Startet eine Activity über die Java Klasse Util, der Intent wird dort erstellt. Util ist eine in der App enthaltene Klasse. B4. StartLinkedActivity2: Startet eine Activity über die Java Klasse Util, der Intent wird in MainActivity erstellt und an Util weitergegeben. Util ist hier ebenfalls in der App enthalten. B5. SendBroadcast: Verschickt einen selbst definierten Intent per Broadcast (com.example.sendbroadcast). B6. SendBroadcastWithPermission: Verschickt einen Broadcast vom Typ myaction. Der Empfänger benötigt die Berechtigung root.example.mypermission, um den Intent zu erhalten. B7. BroadcastReceiver: Gibt einen Toast aus, wenn ein Intent vom Typ com.example.sendbroadcast empfangen wurde (Intent-Filter im Manifest registriert). B8. BroadcastReceiver2: Gibt einen Toast aus, wenn ein Intent vom Typ com.example.sendbroadcast empfangen wurde (Intent-Filter im Java Code registriert). B9. BroadcastReceiver3: Besitzt in der Deklaration der Intent-Filter im Manifest eine Angabe aller möglichen <data> Spezifikationen (scheme, host, port, path, pathpattern, pathprefix, mimetype). Android-Anwendungen für Datenflussdiagramme Seite 17

25 Kapitel 3 Validierung und Evaluation von Epicc B10. BroadcastReceiverWithPermission: Gibt einen Toast aus, wenn ein Intent vom Typ myaction empfangen wurde (Intent-Filter im Code registriert). Der Empfänger benötigt die Berechtigung root.example.mypermission, um den Intent zu erhalten. B11. BroadcastReceiverWithPermission2: Gibt einen Toast aus, wenn ein Intent vom Typ myaction empfangen wurde (Intent-Filter im Manifest registriert). Der Empfänger benötigt die Berechtigung root.example.mypermission, um den Intent zu erhalten. B12. RandomIntent: Verschickt zufällig einen expliziten Intent (startet zweite Activity) oder impliziten Intent (vom Typ myaction ). B13. ViewImageViaIntent: Erstellt einen Intent mit der Action ACTION VIEW und dem Typ image/png. B14. PendingIntent: Gibt einen Pending Intent von einer Activity an eine zweite weiter. B15. PendingIntent2: Sendet einen Pending Intent an den Alarmmanager, der nach Ablauf einer bestimmten Zeit eine Activity startet, die einen Toast anzeigt. B16. StartService: Enthält einen Service, dessen exported Flag auf true gesetzt wurde und der auf Knopfdruck gestartet werden kann (terminiert nach kurzer Zeit). B17. StartBinder: Enthält einen Service, dessen exported Flag auf true gesetzt wurde und der seine Methode mit Hilfe eines Binders zur Verfügung stellen kann. B18. AIDL: Besitzt einen mittels AIDL-Datei definierten Service, der innerhalb der App implementiert und genutzt wird. B19. AidlClient: Nutzt den per AIDL-Datei definierten Service (CALCULATOR) einer anderen App (AIDLServer). B20. AidlServer: Stellt einen durch eine AIDL-Datei vorgegebenen Service (CALCULATOR) für andere Apps zur Verfügung. Im Folgenden wird auf die aufgelisteten Benchmarks genauer eingegangen, indem relevante Quellcodeabschnitte kurz aufgeführt werden. Zusätzlich erfolgt eine Angabe der Erwartungen an die Analyse, die den tatsächlichen Ergebnissen gegenübergestellt werden. Android-Anwendungen für Datenflussdiagramme Seite 18

26 Kapitel 3 Validierung und Evaluation von Epicc B1. StartActivity Die Beschreibung der Benchmarks und der Erwartungen an diese erfolgt in diesem Abschnitt immer nach einem bestimmten Muster. Daher wird dieses im ersten Beispiel genauer erläutert, um zu verdeutlichen was gezeigt worden ist. Das erste Listing zeigt die Stelle des Quellcodes der App, an der die Kommunikation stattfindet. Diese sollte, wie in den Erwartungen formuliert, durch die Analyse erkannt werden. 1 p u b l i c void s t a r t A c t i v i t y ( View view ) { 2 I n t e n t i n t e n t = new I n t e n t ( t h i s, MainActivity2. c l a s s ) ; 3 s t a r t A c t i v i t y ( i n t e n t ) ; 4 } Listing 2: StartActivity - relevanter Quellcode (MainActivity) Erwartung: Die gestartete Activity sowie die Activity, aus der heraus sie gestartet wurde, sollen erkannt werden, genauso der Ort des Aufrufs (startactivity in MainActivity, Listing 2 Zeile 3). Nach der Beschreibung der Ausgangslage wird die Analyse durchgeführt und das Ergebnis im folgenden Listing gezeigt. Zu sehen sind gefundene Komponenten, die nach Arten, beispielsweise Activities, sortiert sind. Anschließend werden die zugehörigen Kommunikationen aufgeführt. Diese werden jeweils durch einen Spiegelstrich eingeleitet. Die Angabe der Kommunikationen enthält den Sender und mögliche enthaltenen Werte, die darauf schließend lassen, ob es sich um einen impliziten oder expliziten Intent handelt. Weiterhin können noch Zusatzinformationen, wie Berechtigungen, angegeben sein. 1 A c t i v i t i e s : 2 com. example. root. s t a r t a c t i v i t y. MainActivity 3 com. example. root. s t a r t a c t i v i t y. MainActivity2 4 5 com/ example / root / s t a r t a c t i v i t y / MainActivity / s t a r t A c t i v i t y ( Landroid / view /View ; ) 6 I n t e n t value : 1 p o s s i b l e value ( s ) : 7 Package : com/ example / root / s t a r t a c t i v i t y, Class : com/ example / root / s t a r t a c t i v i t y / MainActivity2, Listing 3: StartActivity - Epicc Ausgabe Ergebnis (wie erwartet): Die gestartete Activity (MainActivity2, Listing 3 Zeile 3 und Zeile 7) und die ursprüngliche Activity (MainActivity, Listing 3 Zeile 2 und Zeile 5) mit Aufruf (startactivity, Listing 3 Zeile 5) werden gefunden. Android-Anwendungen für Datenflussdiagramme Seite 19

27 Kapitel 3 Validierung und Evaluation von Epicc B2. StartActivity2 1 p u b l i c void s t a r t A c t i v i t y ( View view ) { 2 i n t x=(math. random ( ) <0.5)? 0 : 1 ; 3 4 I n t e n t i n t e n t ; 5 i f ( x==1){ 6 i n t e n t = new I n t e n t ( t h i s, MainActivity2. c l a s s ) ; 7 } e l s e { 8 i n t e n t = new I n t e n t ( t h i s, MainActivity3. c l a s s ) ; 9 } 10 s t a r t A c t i v i t y ( i n t e n t ) ; 11 } Listing 4: StartActivity2 - relevanter Quellcode (MainActivity) Erwartung: Die beiden möglicherweise gestarteten Activities (MainActivity2 und MainActivity3, Listing 4 Zeile 6 und Zeile 8) sowie die ursprüngliche Activity (MainActivity) sollen erkannt werden, genauso der Ort des Aufrufs (startactivity, Listing 4 Zeile 10). 1 A c t i v i t i e s : 2 com. example. root. s t a r t a c t i v i t y 2. MainActivity 3 com. example. root. s t a r t a c t i v i t y 2. MainActivity2 4 com. example. root. s t a r t a c t i v i t y 2. MainActivity3 5 6 com/ example / root / s t a r t a c t i v i t y 2 / MainActivity / s t a r t A c t i v i t y ( Landroid / view /View ; ) 7 I n t e n t value : 2 p o s s i b l e value ( s ) : 8 Package : com/ example / root / s t a r t a c t i v i t y, Class : com/ example / root / s t a r t a c t i v i t y 2 / MainActivity3, 9 Package : com/ example / root / s t a r t a c t i v i t y, Class : com/ example / root / s t a r t a c t i v i t y 2 / MainActivity2, Listing 5: StartActivity2 - Epicc Ausgabe Ergebnis (wie erwartet): Die beiden Activities, die gestartet werden (MainActivity2, Listing 5 Zeile 3 und Zeile 9 und MainActivity3, Listing 5 Zeile 4 und Zeile 8), die eigentliche Activity (MainActivity, Listing 5 Zeile 2 und Zeile 6) sowie der Ort des Aufrufs (startactivity, Listing 5 Zeile 6) werden gefunden. Android-Anwendungen für Datenflussdiagramme Seite 20

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche etutor Benutzerhandbuch Benutzerhandbuch XQuery Georg Nitsche Version 1.0 Stand März 2006 Versionsverlauf: Version Autor Datum Änderungen 1.0 gn 06.03.2006 Fertigstellung der ersten Version Inhaltsverzeichnis:

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

104 WebUntis -Dokumentation

104 WebUntis -Dokumentation 104 WebUntis -Dokumentation 4.1.9.2 Das elektronische Klassenbuch im Betrieb Lehrer Aufruf Melden Sie sich mit Ihrem Benutzernamen und Ihrem Passwort am System an. Unter den aktuellen Tagesmeldungen erscheint

Mehr

Anleitung. Lesezugriff auf die App CHARLY Termine unter Android Stand: 18.10.2013

Anleitung. Lesezugriff auf die App CHARLY Termine unter Android Stand: 18.10.2013 Anleitung Lesezugriff auf die App CHARLY Termine unter Android Stand: 18.10.2013 CHARLY Termine unter Android - Seite 2 Inhalt Inhalt Einleitung & Voraussetzungen 3 1. Installation und Konfiguration 4

Mehr

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005 Das Software Studio Christian Efinger mobilepoi 0.91 Demo Version Anleitung Erstellt am 21. Oktober 2005 Kontakt: Das Software Studio Christian Efinger ce@efinger-online.de Inhalt 1. Einführung... 3 2.

Mehr

Drucken aus der Anwendung

Drucken aus der Anwendung Drucken aus der Anwendung Drucken aus der Anwendung Nicht jeder Großformatdruck benötigt die volle Funktionsvielfalt von PosterJet - häufig sind es Standarddrucke wie Flussdiagramme und Organigramme die

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Hilfedatei der Oden$-Börse Stand Juni 2014

Hilfedatei der Oden$-Börse Stand Juni 2014 Hilfedatei der Oden$-Börse Stand Juni 2014 Inhalt 1. Einleitung... 2 2. Die Anmeldung... 2 2.1 Die Erstregistrierung... 3 2.2 Die Mitgliedsnummer anfordern... 4 3. Die Funktionen für Nutzer... 5 3.1 Arbeiten

Mehr

Handbuch für Gründer. Daniela Richter, Marco Habschick. Stand: 21.02.2013. Verbundpartner:

Handbuch für Gründer. Daniela Richter, Marco Habschick. Stand: 21.02.2013. Verbundpartner: Daniela Richter, Marco Habschick Stand: 21.02.2013 Verbundpartner: Inhaltsverzeichnis 1. Allgemeines...3 2. Zugang zur Gründungswerkstatt...4 3. Login...5 4. Meine Werkstatt...6 5. Businessplan...7 5.1.

Mehr

Dokumentation Schedulingverfahren

Dokumentation Schedulingverfahren Dokumentation Schedulingverfahren von Norbert Galuschek Gordian Maugg Alexander Hahn Rebekka Weissinger June 23, 2011 1 Contents 1 Aufgabe 3 2 Vorgehensweise 4 2.1 Warum Android.......................

Mehr

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler Downloadfehler in DEHSt-VPSMail Workaround zum Umgang mit einem Downloadfehler Downloadfehler bremen online services GmbH & Co. KG Seite 2 Inhaltsverzeichnis Vorwort...3 1 Fehlermeldung...4 2 Fehlerbeseitigung...5

Mehr

Dokumentation IBIS Monitor

Dokumentation IBIS Monitor Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt

Mehr

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen 9 3 Web Services 3.1 Überblick Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen mit Hilfe von XML über das Internet ermöglicht (siehe Abb.

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Technische Dokumentation SilentStatistikTool

Technische Dokumentation SilentStatistikTool Technische Dokumentation SilentStatistikTool Version 1.0 Marko Schröder 1115063 Inhalt Einleitung... 3 Klasse Program... 3 Klasse ArgumentHandler... 3 Bereitgestellte Variablen... 3 Bereitgestellte Methoden...

Mehr

Fraunhofer FOKUS ADPSW-INSTALLATION. Abiturdaten-Prüfsoftware. Version 3.0.1, 7. Mai 2013 FRAUNHOFER-INSTITUT FÜR OFFENE KOMMUNIKATIONSSYSTEME FOKUS

Fraunhofer FOKUS ADPSW-INSTALLATION. Abiturdaten-Prüfsoftware. Version 3.0.1, 7. Mai 2013 FRAUNHOFER-INSTITUT FÜR OFFENE KOMMUNIKATIONSSYSTEME FOKUS Fraunhofer FOKUS FRAUNHOFER-INSTITUT FÜR OFFENE KOMMUNIKATIONSSYSTEME FOKUS ADPSW-INSTALLATION Abiturdaten-Prüfsoftware Version 3.0.1, 7. Mai 2013 IN ZUSAMMENARBEIT MIT ADPSW-INSTALLATION Abiturdaten-Prüfsoftware

Mehr

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH MORE Profile Pass- und Lizenzverwaltungssystem erstellt von: Thorsten Schumann erreichbar unter: thorsten.schumann@more-projects.de Stand: MORE Projects GmbH Einführung Die in More Profile integrierte

Mehr

2. Im Admin Bereich drücken Sie bitte auf den roten Button Webseite bearbeiten, sodass Sie in den Bearbeitungsbereich Ihrer Homepage gelangen.

2. Im Admin Bereich drücken Sie bitte auf den roten Button Webseite bearbeiten, sodass Sie in den Bearbeitungsbereich Ihrer Homepage gelangen. Bildergalerie einfügen Wenn Sie eine Vielzahl an Bildern zu einem Thema auf Ihre Homepage stellen möchten, steht Ihnen bei Schmetterling Quadra das Modul Bildergalerie zur Verfügung. Ihre Kunden können

Mehr

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 -

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 - Matrix42 Use Case - Sicherung und Rücksicherung persönlicher Version 1.0.0 23. September 2015-1 - Inhaltsverzeichnis 1 Einleitung 3 1.1 Beschreibung 3 1.2 Vorbereitung 3 1.3 Ziel 3 2 Use Case 4-2 - 1 Einleitung

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Barcodedatei importieren

Barcodedatei importieren Barcodedatei importieren Inhaltsverzeichnis 1 Schnittstelle Barcodedatei importieren... 2 1.1 Funktion... 2 1.2 Konfiguration... 2 1.2.1 Lizenz... 2 1.2.2 Einstellungen... 2 1.2.3 Vorarbeiten... 3 1.2.3.1

Mehr

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager email-rückläufer Script. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager email-rückläufer Script. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager 7 combit Relationship Manager email-rückläufer Script Inhalt Einleitung 3 Notwendige Anpassungen 3 crm Solution

Mehr

Erweiterung AE WWS Lite Win: AES Security Verschlüsselung

Erweiterung AE WWS Lite Win: AES Security Verschlüsselung Erweiterung AE WWS Lite Win: AES Security Verschlüsselung Handbuch und Dokumentation Beschreibung ab Vers. 1.13.5 Am Güterbahnhof 15 D-31303 Burgdorf Tel: +49 5136 802421 Fax: +49 5136 9776368 Seite 1

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

Informatik Kurs Simulation. Hilfe für den Consideo Modeler Hilfe für den Consideo Modeler Consideo stellt Schulen den Modeler kostenlos zur Verfügung. Wenden Sie sich an: http://consideo-modeler.de/ Der Modeler ist ein Werkzeug, das nicht für schulische Zwecke

Mehr

ANDROID. Analyse der Android Plattform. Andre Rein, Johannes Florian Tietje. 28. Oktober 2010. FH-Gieÿen-Friedberg Android Praktikum

ANDROID. Analyse der Android Plattform. Andre Rein, Johannes Florian Tietje. 28. Oktober 2010. FH-Gieÿen-Friedberg Android Praktikum Analyse der Android Plattform Andre Rein, Johannes Florian Tietje FH-Gieÿen-Friedberg Android Praktikum 28. Oktober 2010 Topics 1 Übersicht Android Plattform Application Framework Activities und Services

Mehr

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3

Mehr

DELFI. Benutzeranleitung Dateiversand für unsere Kunden. Grontmij GmbH. Postfach 34 70 17 28339 Bremen. Friedrich-Mißler-Straße 42 28211 Bremen

DELFI. Benutzeranleitung Dateiversand für unsere Kunden. Grontmij GmbH. Postfach 34 70 17 28339 Bremen. Friedrich-Mißler-Straße 42 28211 Bremen Grontmij GmbH Postfach 34 70 17 28339 Bremen Friedrich-Mißler-Straße 42 28211 Bremen T +49 421 2032-6 F +49 421 2032-747 E info@grontmij.de W www.grontmij.de DELFI Benutzeranleitung Dateiversand für unsere

Mehr

Dokumentation zur Versendung der Statistik Daten

Dokumentation zur Versendung der Statistik Daten Dokumentation zur Versendung der Statistik Daten Achtung: gem. 57a KFG 1967 (i.d.f. der 28. Novelle) ist es seit dem 01. August 2007 verpflichtend, die Statistikdaten zur statistischen Auswertung Quartalsmäßig

Mehr

Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten

Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten Version 1.0 Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten In unserer Anleitung zeigen wir Dir, wie Du Blogbeiträge

Mehr

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel 2016. für Mac. amac-buch Verlag

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel 2016. für Mac. amac-buch Verlag Anton Ochsenkühn amac BUCH VERLAG Ecxel 2016 für Mac amac-buch Verlag 2 Word-Dokumentenkatalog! Zudem können unterhalb von Neu noch Zuletzt verwendet eingeblendet werden. Damit hat der Anwender einen sehr

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Benutzerhandbuch. ZFG Viewer App. (Version 1.x.x)

Benutzerhandbuch. ZFG Viewer App. (Version 1.x.x) Benutzerhandbuch ZFG Viewer App (Version 1.x.x) ZORN INSTRUMENTS e.k. Benzstraße. 1, 39576 Stendal (Germany) Tel.: +49 3931 25273 0 Fax: +49 3931 25273-10 www.zorn-instruments.de info@zorn-instruments.de

Mehr

Verschlüsseln von Dateien mit Hilfe einer TCOS-Smartcard per Truecrypt. T-Systems International GmbH. Version 1.0 Stand 29.06.11

Verschlüsseln von Dateien mit Hilfe einer TCOS-Smartcard per Truecrypt. T-Systems International GmbH. Version 1.0 Stand 29.06.11 Verschlüsseln von Dateien mit Hilfe einer TCOS-Smartcard per Truecrypt T-Systems International GmbH Version 1.0 Stand 29.06.11 Impressum Herausgeber T-Systems International GmbH Untere Industriestraße

Mehr

Einsatz von xalerator. bei den. Ergo Direkt Versicherungen. Bereich Versicherungstechnik/Leben

Einsatz von xalerator. bei den. Ergo Direkt Versicherungen. Bereich Versicherungstechnik/Leben Einsatz von xalerator bei den Ergo Direkt Versicherungen Bereich Versicherungstechnik/Leben Einführung Die Ergo Direkt Versicherungen wurden 1984 als Finanzdienstleistungs-Segment des Quelle Versandhandels

Mehr

Anleitung zur Verwendung der VVW-Word-Vorlagen

Anleitung zur Verwendung der VVW-Word-Vorlagen Anleitung zur Verwendung der VVW-Word-Vorlagen v1.0. Jun-15 1 1 Vorwort Sehr geehrte Autorinnen und Autoren, wir haben für Sie eine Dokumentenvorlage für Microsoft Word entwickelt, um Ihnen die strukturierte

Mehr

Protect 7 Anti-Malware Service. Dokumentation

Protect 7 Anti-Malware Service. Dokumentation Dokumentation Protect 7 Anti-Malware Service 1 Der Anti-Malware Service Der Protect 7 Anti-Malware Service ist eine teilautomatisierte Dienstleistung zum Schutz von Webseiten und Webapplikationen. Der

Mehr

Zahlen auf einen Blick

Zahlen auf einen Blick Zahlen auf einen Blick Nicht ohne Grund heißt es: Ein Bild sagt mehr als 1000 Worte. Die meisten Menschen nehmen Informationen schneller auf und behalten diese eher, wenn sie als Schaubild dargeboten werden.

Mehr

Universität Heidelberg EDV-Abteilung der Medizinischen Fakultät Mannheim. labtima 2.6. Bedienungsanleitung für Benutzer

Universität Heidelberg EDV-Abteilung der Medizinischen Fakultät Mannheim. labtima 2.6. Bedienungsanleitung für Benutzer 2.6 Bedienungsanleitung Autor: Felix Dittgen Stand: 03.09.2012 Inhaltsverzeichnis 1 Einleitung... 2 1.1 Abkürzungen... 2 1.2 Ansprechpartner... 2 1.3 URL von... 2 2 Bedienungsanleitung... 3 2.1 An-/Abmelden...

Mehr

Bitte unbedingt lesen! Update-Dokumentation

Bitte unbedingt lesen! Update-Dokumentation Bitte unbedingt lesen! Update-Dokumentation Enthaltene Programmänderungen DMP Assist Version 4.88 Inhaltsverzeichnis 1 Systemvoraussetzungen... 2 2 Datensicherung vor dem Update... 3 3 Die Installation

Mehr

ROFIN App Benutzerhandbuch. Version 1.0

ROFIN App Benutzerhandbuch. Version 1.0 ROFIN App Benutzerhandbuch Version 1.0 Inhaltsverzeichnis 1. Beschreibung 2. Passwort und Einstellungen 3. Support Tab 4. Vertriebs Tab 5. Web Tab 6. Häufig gestellte Fragen BESCHREIBUNG Die ROFIN App

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

Anleitung für Autoren auf sv-bofsheim.de

Anleitung für Autoren auf sv-bofsheim.de Anleitung für Autoren auf sv-bofsheim.de http://www.sv-bofsheim.de 1 Registrieren als Benutzer sv-bofsheim.de basiert auf der Software Wordpress, die mit einer Erweiterung für ein Forum ausgestattet wurde.

Mehr

FMGate Installation & Benutzung 2016-04

FMGate Installation & Benutzung 2016-04 FMGate Installation & Benutzung 2016-04 Downloads Stand 2016-04. Transit und FMGate werden kontinuierlich weiterentwickelt. Aktuelle Service Packs, Installationsanleitungen, Benutzerdokumentationen und

Mehr

Updateseite_BuV-PlugIn-NERZ-Gesamt

Updateseite_BuV-PlugIn-NERZ-Gesamt Autoren Dipl.-Ing. H. C. Kniß Dipl.-Math. L. Givorgizova Ersteller Geschäftsstelle NERZ e. V. Kölner Straße 30 D-50859 Köln Version: 5.0 Stand: 15.02.2013 Status: akzeptiert 1 Allgemeines 1.1 Änderungsübersicht

Mehr

Virtueller Campus. Virtueller Campus Horw mit interaktiver Steuerung. HowTo: Externe Bibliotheken

Virtueller Campus. Virtueller Campus Horw mit interaktiver Steuerung. HowTo: Externe Bibliotheken Virtueller Campus Virtueller Campus Horw mit interaktiver Steuerung Bachelor Diplomarbeit FS 2013 Inhaltsverzeichnis 1. EINLEITUNG... 1 2. VORBEDINGUNGEN... 1 3. ORDNERSTRUKTUR ERWEITERN... 1 4. PROJEKT

Mehr

Informationen zur Verwendung von Visual Studio und cmake

Informationen zur Verwendung von Visual Studio und cmake Inhaltsverzeichnis Informationen zur Verwendung von Visual Studio und cmake... 2 Erste Schritte mit Visual Studio... 2 Einstellungen für Visual Studio 2013... 2 Nutzung von cmake... 6 Installation von

Mehr

Dokumentation PuSCH App. android phone

Dokumentation PuSCH App. android phone Dokumentation PuSCH App android phone Inhaltsverzeichnis Mit dem PuSCH App am Smartphone wird das Bestellen deutlich vereinfacht und beschleunigt! Die PuSCH App ist eine mobile Erweiterung zum Partnerportal

Mehr

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. Der Serienversand Was kann man mit der Maske Serienversand machen? 1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. 2. Adressen auswählen,

Mehr

Mobile Intranet in Unternehmen

Mobile Intranet in Unternehmen Mobile Intranet in Unternehmen Ergebnisse einer Umfrage unter Intranet Verantwortlichen aexea GmbH - communication. content. consulting Augustenstraße 15 70178 Stuttgart Tel: 0711 87035490 Mobile Intranet

Mehr

Installation der Demoversion vom M-Doc AutoSigner

Installation der Demoversion vom M-Doc AutoSigner Mentana-Claimsoft AG Seite 1 Installation der Demoversion vom M-Doc AutoSigner Version 1.0 Mentana-Claimsoft AG Seite 2 Inhaltsverzeichnis 1 Installation der Demoversion von M-Doc AutoSigner... 3 2 Installation

Mehr

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen.

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Übersicht Struts Forms Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Allgemeines Autor: Sascha Wolski http://www.laliluna.de/tutorials.html

Mehr

Installation OMNIKEY 3121 USB

Installation OMNIKEY 3121 USB Installation OMNIKEY 3121 USB Vorbereitungen Installation PC/SC Treiber CT-API Treiber Einstellungen in Starke Praxis Testen des Kartenlesegeräts Vorbereitungen Bevor Sie Änderungen am System vornehmen,

Mehr

GEONET Anleitung für Web-Autoren

GEONET Anleitung für Web-Autoren GEONET Anleitung für Web-Autoren Alfred Wassermann Universität Bayreuth Alfred.Wassermann@uni-bayreuth.de 5. Mai 1999 Inhaltsverzeichnis 1 Technische Voraussetzungen 1 2 JAVA-Programme in HTML-Seiten verwenden

Mehr

Bildquelle: http://bild2.qimage.de/diamant-computergesteuerte-naehmaschine-foto-bild-86314142.jpg

Bildquelle: http://bild2.qimage.de/diamant-computergesteuerte-naehmaschine-foto-bild-86314142.jpg Bildquelle: http://bild2.qimage.de/diamant-computergesteuerte-naehmaschine-foto-bild-86314142.jpg Unsere digitale Welt konfrontiert uns mit einer Unmenge an computergesteuerten Geräten, Maschinen und Steueranlagen.

Mehr

Windows 8.1. Grundkurs kompakt. Markus Krimm, Peter Wies 1. Ausgabe, Januar 2014. inkl. zusätzlichem Übungsanhang K-W81-G-UA

Windows 8.1. Grundkurs kompakt. Markus Krimm, Peter Wies 1. Ausgabe, Januar 2014. inkl. zusätzlichem Übungsanhang K-W81-G-UA Markus Krimm, Peter Wies 1. Ausgabe, Januar 2014 Windows 8.1 Grundkurs kompakt inkl. zusätzlichem Übungsanhang K-W81-G-UA 1.3 Der Startbildschirm Der erste Blick auf den Startbildschirm (Startseite) Nach

Mehr

1. Einleitung. 1.1. Was ist die App Listini. 1.2. Was benötigen Sie dazu. 1.3. Wie gehen Sie vor

1. Einleitung. 1.1. Was ist die App Listini. 1.2. Was benötigen Sie dazu. 1.3. Wie gehen Sie vor 1. Einleitung 1.1. Was ist die App Listini Die App Listini ist eine Anwendung für Ihr ipad oder Ihr Android-Gerät, welche Ihnen das Lesen und das Nachschlagen in Preislisten, Katalogen sowie der Fotogalerie

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen

Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen Dateiname: ecdl5_01_02_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Access

Mehr

Dokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser

Dokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser Dokumentation Black- und Whitelists Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser Inhalt INHALT 1 Kategorie Black- und Whitelists... 2 1.1 Was sind Black- und Whitelists?...

Mehr

Hilfe Bearbeitung von Rahmenleistungsverzeichnissen

Hilfe Bearbeitung von Rahmenleistungsverzeichnissen Hilfe Bearbeitung von Rahmenleistungsverzeichnissen Allgemeine Hinweise Inhaltsverzeichnis 1 Allgemeine Hinweise... 3 1.1 Grundlagen...3 1.2 Erstellen und Bearbeiten eines Rahmen-Leistungsverzeichnisses...

Mehr

Mail-Signierung und Verschlüsselung

Mail-Signierung und Verschlüsselung Mail-Signierung und Verschlüsselung ab Release-Version 2013.02, ein kostenlos zur Verfügung gestelltes Feature! Elektronische Post ist aus unserem privaten und beruflichen Leben nicht mehr wegzudenken.

Mehr

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 Die Installation der FuxMedia Software erfolgt erst NACH Einrichtung des Netzlaufwerks! Menüleiste einblenden, falls nicht vorhanden Die

Mehr

Enigmail Konfiguration

Enigmail Konfiguration Enigmail Konfiguration 11.06.2006 Steffen.Teubner@Arcor.de Enigmail ist in der Grundkonfiguration so eingestellt, dass alles funktioniert ohne weitere Einstellungen vornehmen zu müssen. Für alle, die es

Mehr

14.4.2016. Technische Hochschule Georg Agricola WORKSHOP TEIL 3. IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt

14.4.2016. Technische Hochschule Georg Agricola WORKSHOP TEIL 3. IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt 14.4.2016 Technische Hochschule Georg Agricola WORKSHOP TEIL 3 IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt Inhaltsverzeichnis 1. Kurzfassung zur Projekterstellung... 2 2. Morse-Tabelle...

Mehr

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente Autorisierung Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente Dokumentation zum Referat von Matthias Warnicke und Joachim Schröder Modul: Komponenten basierte Softwareentwickelung

Mehr

Dialyse Benchmark - Online so funktioniert s

Dialyse Benchmark - Online so funktioniert s Datenanalyse Dialyse Dialyse Benchmark - Online so funktioniert s Der Online-Dienst Dialyse Benchmark ist im Mitglieder -Bereich auf der Internetseite (www.kvhessen.de, https://mitglieder.kvh.kv-safenet.de/

Mehr

ANLEITUNG GERÄTEREGISTRATION AN KRZ.SMK

ANLEITUNG GERÄTEREGISTRATION AN KRZ.SMK ANLEITUNG GERÄTEREGISTRATION AN KRZ.SMK ANDROID Anleitung zur Einrichtung von KRZ.smK (sichere mobile Kommunikation) am Beispiel eines Nexus 7 von Asus Seite 1 von 13 Copyright Copyright 2015 KRZ-SWD.

Mehr

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014) Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...

Mehr

ACHTUNG: Voraussetzungen für die Nutzung der Funktion s-exposé sind:

ACHTUNG: Voraussetzungen für die Nutzung der Funktion s-exposé sind: ACHTUNG: Voraussetzungen für die Nutzung der Funktion s-exposé sind: - Upgrade auf FLOWFACT Version Performer CRM 2014 R2 (ab Juli erhältlich) - Mindestens SQL Server 2005 - vorhandene Installation von.net

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

Ein mobiler Electronic Program Guide

Ein mobiler Electronic Program Guide Whitepaper Telekommunikation Ein mobiler Electronic Program Guide Ein iphone Prototyp auf Basis von Web-Technologien 2011 SYRACOM AG 1 Einleitung Apps Anwendungen für mobile Geräte sind derzeit in aller

Mehr

Software Engineering. Sommersemester 2012, Dr. Andreas Metzger

Software Engineering. Sommersemester 2012, Dr. Andreas Metzger Software Engineering (Übungsblatt 2) Sommersemester 2012, Dr. Andreas Metzger Übungsblatt-Themen: Prinzip, Technik, Methode und Werkzeug; Arten von Wartung; Modularität (Kohäsion/ Kopplung); Inkrementelle

Mehr

Anzeige von eingescannten Rechnungen

Anzeige von eingescannten Rechnungen Anzeige von eingescannten Rechnungen Wenn Sie sich zu einer Eingangsrechnung die eingescannte Originalrechnung ansehen möchten, wählen Sie als ersten Schritt aus Ihrem Benutzermenü unter dem Kapitel Eingangsrechnung

Mehr

Speicher in der Cloud

Speicher in der Cloud Speicher in der Cloud Kostenbremse, Sicherheitsrisiko oder Basis für die unternehmensweite Kollaboration? von Cornelius Höchel-Winter 2013 ComConsult Research GmbH, Aachen 3 SYNCHRONISATION TEUFELSZEUG

Mehr

BILDER TEILEN MIT DROPBOX

BILDER TEILEN MIT DROPBOX Bilder teilen mit Dropbox für registrierte User Mit Dropbox schiebt man Daten in einen virtuellen Ordner im Internet, auf den Freunde von jedem PC aus zugreifen können. 1. Bilder anschauen Beschreibung

Mehr

Windows Vista Security

Windows Vista Security Marcel Zehner Windows Vista Security ISBN-10: 3-446-41356-1 ISBN-13: 978-3-446-41356-6 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41356-6 sowie im Buchhandel

Mehr

Animierte Fotoshow mit Fotostory 3

Animierte Fotoshow mit Fotostory 3 Frank Herrmann Animierte Fotoshow mit Fotostory 3 Programmname / Version: Fotostory 3 Hersteller / Download: Microsoft http://www.microsoft.com/downloads/details.aspx?displaylang=de&familyid=92755126-a008-49b3-b3f4-6f33852af9c1

Mehr

inviu routes Installation und Erstellung einer ENAiKOON id

inviu routes Installation und Erstellung einer ENAiKOON id inviu routes Installation und Erstellung einer ENAiKOON id Inhaltsverzeichnis inviu routes... 1 Installation und Erstellung einer ENAiKOON id... 1 1 Installation... 1 2 Start der App... 1 3 inviu routes

Mehr

Beschreibung und Bedienungsanleitung. Inhaltsverzeichnis: Abbildungsverzeichnis: Werkzeug für verschlüsselte bpks. Dipl.-Ing.

Beschreibung und Bedienungsanleitung. Inhaltsverzeichnis: Abbildungsverzeichnis: Werkzeug für verschlüsselte bpks. Dipl.-Ing. www.egiz.gv.at E-Mail: post@egiz.gv.at Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Beschreibung und Bedienungsanleitung Werkzeug für verschlüsselte bpks

Mehr

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016 L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016 Referentin: Dr. Kelly Neudorfer Universität Hohenheim Was wir jetzt besprechen werden ist eine Frage, mit denen viele

Mehr

Scanning- Reservationslösung Gemeinden Benutzerhandbuch

Scanning- Reservationslösung Gemeinden Benutzerhandbuch Scanning- Reservationslösung Gemeinden Benutzerhandbuch Scan Center Version 1.1-02.02.2009 1 von 15 Inhaltsverzeichnis 1 Beschreibung der Applikation...3 1.1 Benutzerverwaltung...3 1.2 Importmodul...3

Mehr

Anwendung des ID-Changer

Anwendung des ID-Changer Anwendung des ID-Changer Tel: +49 (0)491 6008 700 Fax: +49 (0)491 6008 99 700 Mail: info@ entwicklung.eq-3.de Version 1.2 eq-3 Entwicklung GmbH Maiburger Straße 36 26789 Leer Autor: eq-3 Entwicklung GmbH

Mehr

SIMP 1.01 Protokollspezifikation (Mindestanforderung)

SIMP 1.01 Protokollspezifikation (Mindestanforderung) SIMP 1.01 Protokollspezifikation (Mindestanforderung) Autor: Harald Pittesser, Dokumentversion: 0.5 beta Eigenschaften SIMP (Simple Instant Message Protocol) ist ein Instant Message Protokol welches folgende

Mehr

Auswahl eines Erhebungsinstruments aus der Rubrik Methoden und Instrumente aus dem Verfahren der externen Evaluation :

Auswahl eines Erhebungsinstruments aus der Rubrik Methoden und Instrumente aus dem Verfahren der externen Evaluation : Auswahl eines Erhebungsinstruments aus der Rubrik Methoden und Instrumente aus dem Verfahren der externen Evaluation : Verwenden Sie eine für Ihre Fragestellung relevante Auswahl an Instrumenten aus dem

Mehr

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt 1. Vorbetrachtungen... 2 2. Die Installation... 2 3. Einstellungen - Erstellung der Verknüpfung... 3 3.1 Benutzung des Konfigurationsprogramms

Mehr

PDF-Druck und PDF-Versand mit PV:MANAGER

PDF-Druck und PDF-Versand mit PV:MANAGER PDF-Druck und PDF-Versand mit PV:MANAGER Installation und Erste Schritte Limex Computer GmbH. Alle Rechte vorbehalten Übersicht Mit der Version 5.4 bietet PV:MANAGER eine neue, direkte Unterstützung für

Mehr

SDS Softmine Document Safe. Webfrontend Quick Start Guide Version 2.1 Revision 2

SDS Softmine Document Safe. Webfrontend Quick Start Guide Version 2.1 Revision 2 SDS Softmine Document Safe Webfrontend Quick Start Guide Version 2.1 Revision 2 Inhalt 1 Aufrufen des Frontends...3 2 Anmelden am Frontend...3 3 Überblick der Funktionen...3 4 Das Archiv...5 4.1 Suchen

Mehr

Bedienungsanleitung: Onlineverifizierung von qualifiziert signierten PDF-Dateien

Bedienungsanleitung: Onlineverifizierung von qualifiziert signierten PDF-Dateien Sie haben von der VR DISKONTBANK GmbH ein signiertes PDF-Dokument (i.d.r. eine Zentralregulierungsliste mit dem Status einer offiziellen Rechnung) erhalten und möchten nun die Signatur verifizieren, um

Mehr

mit attraktiven visuellen Inhalten

mit attraktiven visuellen Inhalten Besser bloggen mit attraktiven visuellen Inhalten Copyright 2015 und für den Inhalt verantwortlich: Online Marketing Services LCC. 108 West 13th Street 19801 Wilmington USA Google Doodles die modifizierten

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Anleitung für den Elektronischen Lesesaal der Martin-Opitz Bibliothek

Anleitung für den Elektronischen Lesesaal der Martin-Opitz Bibliothek Anleitung für den Elektronischen Lesesaal der Martin-Opitz Bibliothek Der elektronische Lesesaal umfasst derzeit über 3.400 digitale Dokumente aus dem Bereich der deutschen Kultur und Geschichte im östlichen

Mehr

SRH - Kurzinformation

SRH - Kurzinformation SRH - Kurzinformation Dieses Dokument gibt eine Übersicht über das Shockley/Read/Hall-Programm, im folgenden SRH- Programm genannt. Bei dem SRH-Programm handelt es sich um ein Java Programm, welches in

Mehr

Wo möchten Sie die MIZ-Dokumente (aufbereitete Medikamentenlisten) einsehen?

Wo möchten Sie die MIZ-Dokumente (aufbereitete Medikamentenlisten) einsehen? Anleitung für Evident Seite 1 Anleitung für Evident-Anwender: Einbinden der MIZ-Dokumente in Evident. Wo möchten Sie die MIZ-Dokumente (aufbereitete Medikamentenlisten) einsehen? Zunächst müssen Sie entscheiden,

Mehr

Aufklappelemente anlegen

Aufklappelemente anlegen Aufklappelemente anlegen Dieses Dokument beschreibt die grundsätzliche Erstellung der Aufklappelemente in der mittleren und rechten Spalte. Login Melden Sie sich an der jeweiligen Website an, in dem Sie

Mehr

User Manual Data 24. Login und Layout

User Manual Data 24. Login und Layout User Manual Data 24 Login und Layout Auf der Loginseite www.kern.data24.ch geben Sie Ihren Benutzernamen sowie Ihr Kennwort in die beiden Felder ein. Mit Klick auf den Button «Anmeldung» werden Ihre Daten

Mehr

Mobile App Development. - Alarm -

Mobile App Development. - Alarm - Mobile App Development - Alarm - Inhalt Alarme AlarmManger Wake locks 2 Alarm Alarm Oft ist es notwendig eine App zu starten, auch wenn der Benutzer nicht mit ihr interagiert Starten von Activities zu

Mehr

Sichern auf den zentralen TSM-Servern unter Windows. Sichern auf den zentralen TSM-Servern unter Windows

Sichern auf den zentralen TSM-Servern unter Windows. Sichern auf den zentralen TSM-Servern unter Windows Sichern auf den zentralen TSM-Servern unter Windows v. 1.0 Juni 2016 1 Inhaltverzeichnis Vorwort... 3 Daten über die grafische Benutzungsschnittstelle (GUI) sichern... 4 Daten über die grafische Benutzerschnittstelle

Mehr