Android (in)security. Having fun with Android. Sarantis Makoudis



Similar documents
Pentesting Android Apps. Sneha Rajguru

The OWASP Foundation

OWASP NZ Day 2011 Testing Mobile Applications

Mobile Application Hacking for Android and iphone. 4-Day Hands-On Course. Syllabus

Beginners Guide to Android Reverse Engineering

AppUse - Android Pentest Platform Unified

Hacking your Droid ADITYA GUPTA

Mobile Application Security and Penetration Testing Syllabus

Reversing Android Malware

SYLLABUS MOBILE APPLICATION SECURITY AND PENETRATION TESTING. MASPT at a glance: v1.0 (28/01/2014) 10 highly practical modules

Pentesting Android Mobile Application

ANDROID SECURITY ATTACKS AND DEFENSES ABHISHEK DUBEY I ANMOL MISRA. ( r öc) CRC Press VV J Taylor & Francis Group ^ "^ Boca Raton London New York

Tushar Dalvi Sr. Security Engineer at LinkedIn Penetration Tester. Responsible for securing a large suite mobile apps

Advanced ANDROID & ios Hands-on Exploitation

Bypassing SSL Pinning on Android via Reverse Engineering

Allow Installation from Unknown Sources

Mercury User Guide v1.1

Mobile Application Hacking for ios. 3-Day Hands-On Course. Syllabus

APPLICATION SECURITY: FROM WEB TO MOBILE. DIFFERENT VECTORS AND NEW ATTACK

Blackbox Android. Breaking Enterprise Class Applications and Secure Containers. Marc Blanchou Mathew Solnik 10/13/

How to break in. Tecniche avanzate di pen testing in ambito Web Application, Internal Network and Social Engineering

Kaspersky Fraud Prevention: a Comprehensive Protection Solution for Online and Mobile Banking

The Top Web Application Attacks: Are you vulnerable?

TACKYDROID. Pentesting Android Applications in Style

Penetration Testing in Romania

Running a Program on an AVD

Android Programming and Security

This session was presented by Jim Stickley of TraceSecurity on Wednesday, October 23 rd at the Cyber Security Summit.

Kaspersky Lab Mobile Device Management Deployment Guide

Jordan Jozwiak November 13, 2011

The "Eclipse Classic" version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended.

Smartphone Pentest Framework v0.1. User Guide

Security Testing. Vulnerability Assessment vs Penetration Testing. Gabriel Mihai Tanase, Director KPMG Romania. 29 October 2014

Mobile Application Security: Who, How and Why

MXview ToGo Quick Installation Guide

Android Security Evaluation Framework

COURSE NAME: INFORMATION SECURITY INTERNSHIP PROGRAM

An Introduction to Android. Huang Xuguang Database Lab. Inha University

BSIDES Las Vegas Secret Pentesting Techniques Shhh...

Android Geek Night. Application framework

Building, Testing & Deploying Android Apps with Jenkins

Creating Stronger, Safer, Web Facing Code. JPL IT Security Mary Rivera June 17, 2011

ASL IT SECURITY BEGINNERS WEB HACKING AND EXPLOITATION

Islamic University of Gaza. Faculty of Engineering. Computer Engineering Department. Mobile Computing ECOM Eng. Wafaa Audah.

How Attackers are Targeting Your Mobile Devices. Wade Williamson

Securing the Internet of Things: Mapping Attack Surface Areas Using the OWASP IoT Top 10

How to Install Applications (APK Files) on Your Android Phone

VM Application Debugging via JTAG: Android TRACE32 JTAG Debug Bridge ADB Architecture Stop-Mode implications for ADB JTAG Transport Outlook

SOMETHING PHISHY IS GOING ON!

Malware Analysis for Android Operating

Excellence Doesn t Need a Certificate. Be an. Believe in You AMIGOSEC Consulting Private Limited


Securing Your Web Application against security vulnerabilities. Ong Khai Wei, IT Specialist, Development Tools (Rational) IBM Software Group

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I)

Enterprise Application Security Workshop Series

CRYPTUS DIPLOMA IN IT SECURITY

ASL IT Security Advanced Web Exploitation Kung Fu V2.0

Developing for MSI Android Devices

Android Application Repackaging

MASTER'S THESIS. Android Application Security with OWASP Mobile Top James King 2014

Android Development. Marc Mc Loughlin

Silk Test Testing Mobile Web Applications

CompTIA Mobile App Security+ Certification Exam (Android Edition) Live exam ADR-001 Beta Exam AD1-001

Penetration Testing: Lessons from the Field

Learning security through insecurity

Detecting and Defending Against Security Vulnerabilities for Web 2.0 Applications

Securing your Mobile Applications. Karson Chan Security Consultant

Graduate presentation for CSCI By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu )

ABC LTD EXTERNAL WEBSITE AND INFRASTRUCTURE IT HEALTH CHECK (ITHC) / PENETRATION TEST

Mobile Security Framework

Lab 4 In class Hands-on Android Debugging Tutorial

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет

HP AppPulse Mobile. Adding HP AppPulse Mobile to Your Android App

How To Run A Hello World On Android (Jdk) On A Microsoft Ds.Io (Windows) Or Android Or Android On A Pc Or Android 4 (

Recon and Mapping Tools and Exploitation Tools in SamuraiWTF Report section Nick Robbins

Web Application Hacking (Penetration Testing) 5-day Hands-On Course

Web Application Vulnerability Testing with Nessus

Example of Standard API

KASPERSKY SECURITY INTELLIGENCE SERVICES. EXPERT SERVICES.

Course Content: Session 1. Ethics & Hacking

Tera Term Telnet. Introduction

labs Attacking JAVA Serialized Communication By: Manish S. Saindane

Customize Mobile Apps with MicroStrategy SDK: Custom Security, Plugins, and Extensions

Bank Hacking Live! Ofer Maor CTO, Hacktics Ltd. ATC-4, 12 Jun 2006, 4:30PM

STABLE & SECURE BANK lab writeup. Page 1 of 21

Forensics II. Android reverse engineering Logs [repetition]

Introduction to Android. CSG250 Wireless Networks Fall, 2008

Now SMS/MMS Android Modem Quick Start Guide

Threat Intelligence Pty Ltd Specialist Security Training Catalogue

Mobile Security. Luther Knight Mobility Management Technical Specialist, Europe IOT IBM Security April 28, 2015.

Application Security Testing. Erez Metula (CISSP), Founder Application Security Expert

Smartphone market share

Transcription:

Android (in)security Having fun with Android Sarantis Makoudis

About Me BSc in Digital Systems, University of Piraeus, 2010 MSc in Information Security, Royal Holloway, University of London,2012 Penetration Tester at 7Safe, part of PA Consulting, since September 2012 Pretty much a geek, with a great love for IT, movies and boardgames.

Agenda Android Basics Data Interception by malicious Keyboard Malicious I/O Capture Authentication Bypass Malicious Code injection Phishing attacks Defences

Android Basics

Android Architecture

Android Debug Bridge... Or adb for short. Part of the Android SDK. Client, Server, daemon Used during development The main tool used for Android debugging (and hacking!)

ADB Commands Adb (dis)connect <IP>: connects a device (or VM) to the host machine. Adb devices: List of all currently connected devices. Adb shell: Opens a shell on the host machine for the connected device. Adb shell c <command>: Executes directly a shell command on the connected device. Adb am start <>: Start an activity of an already installed application. Adb tcpip <port>: Opens an adb daemon listener on the given port.

Demos..Let s pray to the demo gods that they will be nice with me today... Android Emulator: AndroVM, produced by Daniel Fages (@madcdan) androvm.org Android Version: 4.1.1 Jelly Bean Merchant Application: produced by Matthew Seaward, really thankful that he borrowed it to me for this presentation.

Data Interception by Malicious Keyboard

Google Play store or third party sites Anyone can upload their applications on the store Are you sure about their origin? Keyboards are one of those applications... Google shows a warning when you try to install it. But I want those cool emoticons! I am sure that nothing will be wrong!...or, is it?

Live Demo

Malicious I/O Capture

A second way of capturing user input. Less visible than a third party keyboard. Manipulating the devices display drivers to send also the input to the attacker. Represents the position of a touch or swipe on an x, y base. Down-side: Physical access to the phone, the make and model of phone must be known to interpret the data.

Live Demo

Analysis of data on screen

Authentication Bypass

As you have seen, our application contains a Login screen. Android provides the developer with a variety of different tools Being so open and friendly can also be the downside for Android application Developers. Android allows us to bypass the authentication of the application in more than one ways. Here we will see two different scenarios: A simple SQL injection or the use of am command to bypass the authentication (rooted phone needed) More on Authentication bypass later on...

Live Demo

Malicious Code Injection

Android applications are Java at heart Any tools that work for Java work for them plus many more... Dex2jar Transforms.dex files to.jar files Jar files can be then decompiled with any Java Decompiler But... The code produced isn t complete and as a result can not be recompiled Smali & baksmali An assembler/dissassembler for the dex files Generates a dissassembled code in smali format, which is close to Java We can inject code, reassemble it and install it normally! APKManager A script/tool that utilises the smali/baksmali tools, signs and install apks plus much more...

Live Demo

Phishing Attacks

This time we will do the things different... Live Demo

Defences

Defences OWASP Top 10 Code obfuscation Don t download third-party applications from suspicious sources! If you have to do it, at least check the manifest.xml for anything phishy or even decompile the app (yeah, it s that easy...) Close applications that you don t trust before using your e-banking App. Don t hand your phone to suspicious looking guys (like me or anyone in this room!) :P

I would like to thank: Steven van der Baan Aleksander Gorkowienko Matthew Seaward For their help during the research and development of these demos, as well as their innovative ideas!

Questions?

THANK YOU!!! Sarantis Makoudis sarantis.makoudis@gmail.com @SMakoudis www.7safe.com