system security; web security; mobile security; Android; WebView; IAB
de
IAB; WebView; Android; App Analysis
en
Abstract:
In-App-Browser (IABs) sind häufig verwendete Komponenten in mobilen Anwendungen, die es App-Entwicklern ermöglichen, Webinhalte in nativen Anwendungen anzuzeigen. Neben der einfachen Darstellung von Webinhalten bieten solche Komponenten der Anwendung Funktionen wie das Einfügen von JavaScript-Code und den Zugriff auf die Cookies der Website. Während diese Funktionen für Entwickler nützlich sind, e...
In-App-Browser (IABs) sind häufig verwendete Komponenten in mobilen Anwendungen, die es App-Entwicklern ermöglichen, Webinhalte in nativen Anwendungen anzuzeigen. Neben der einfachen Darstellung von Webinhalten bieten solche Komponenten der Anwendung Funktionen wie das Einfügen von JavaScript-Code und den Zugriff auf die Cookies der Website. Während diese Funktionen für Entwickler nützlich sind, ermöglichen sie es potenziell unerwünschten Anwendungen (PUAs), bösartige Aktivitäten auf gutartigen Websites durchzuführen, wie z. B. Session-Hijacking durch JavaScript-Injection. In dieser Arbeit wird ein neuartiger Ansatz zur Analyse von App-to-Web-Interaktionen in Android WebView, der primäre integrierten IAB-Komponente in Android, vorgestellt. Wir verwenden eine Kombination aus statischen und dynamischen Analysetechniken, um zunächst den Bauplan einer Anwendung zu erstellen und dann die App mithilfe dessen zu Codeabschnitten zu navigieren, bei denen IABs gestartet werden. Unsere kontrollierte Umgebung ermöglicht es uns, die Interaktionen zwischen der Anwendung und dem Webinhalt aufzuzeichnen und so Falsch-Positive zu minimieren. Wir implementieren unseren Ansatz in Form eines Prototyps namens IABInspect und wenden ihn auf 1.000 beliebte Android-Anwendungen an. Insgesamt konnten wir 508 IAB-Aufrufe in 196 Anwendungen dynamisch auslösen und in 50 Anwendungen eine Injektion von JavaScript-Code finden. Unsere Ergebnisse zeigen, dass die Verwendung von WebViews in Android-Anwendungen allgegenwärtig ist und dass das Einfügen von JavaScript-Code eine gängige Praxis ist, was den Bedarf an weiterer Forschung in diesem Bereich unterstreicht.
de
In-app browsers (IABs) are heavily used components in mobile applications that allow app developers to display web content in native applications. Apart from simply rendering web content, such components provide the application with capabilities like the injection of JavaScript code and access to the website's cookies. While these features are useful for developers, they also allow potentially unw...
In-app browsers (IABs) are heavily used components in mobile applications that allow app developers to display web content in native applications. Apart from simply rendering web content, such components provide the application with capabilities like the injection of JavaScript code and access to the website's cookies. While these features are useful for developers, they also allow potentially unwanted applications (PUAs) to perform malicious activities on benign websites, such as session hijacking using JavaScript injection. This thesis presents a novel approach to analyzing app-to-web interactions in Android WebView, the main built-in IAB component in Android. We use a combination of static and dynamic analysis techniques to first build a blueprint of an application and then dynamically drive the execution of the application to calls where IABs are launched. Our controlled environment allows us to record the interactions between the app and the web content, effectively minimizing false positives. We implement our approach as a prototype called IABInspect and apply it to 1,000 popular Android applications. In total, we are able to dynamically trigger 508 IAB launch calls in 196 applications and find an injection of JavaScript code in 50 applications. Our results show that the use of WebViews is ubiquitous in Android applications and that the injection of JavaScript code is a common practice, underscoring the need for further research in this area.