For Enterprise. Attacking BYOD Enterprise Mobile Security Solutions. Vincent Tan Senior Security Consultant



Similar documents
Security Guide. BlackBerry Enterprise Service 12. for ios, Android, and Windows Phone. Version 12.0

Good for Enterprise Good Dynamics

BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: Security Note

Weak Spots in Enterprise Mobility Management Dennis Schröder

MDM, COPE, BYOD, MAM, MIM, PIM???

BYOD Guidance: BlackBerry Secure Work Space

Enterprise Mobility Management

How To Manage A Mobile Device Management (Mdm) Solution

How To Write A Mobile Device Policy

Enterprise Apps: Bypassing the Gatekeeper

BYPASSING THE ios GATEKEEPER

ANY TIME ANY PLACE ANY WHERE. JOEL SWEENEY and SHAUN BENNETTS XPERTEX

Auditing the Security and Management of Smart Devices. ISACA Dallas Meeting February 13, 2014

ios Testing Tools David Lindner Director of Mobile and IoT Security

Penetration Testing for iphone Applications Part 1

Kaspersky Security for Mobile

Mobile Application Security Testing ASSESSMENT & CODE REVIEW

BYOD Guidance: Good Technology

Healthcare Buyers Guide: Mobile Device Management

Practical Attacks against Mobile Device Management (MDM) Michael Shaulov, CEO Daniel Brodie, Security Researcher Lacoon Mobile Security

The Security of MDM systems. Hack In Paris 2013 Sebastien Andrivet

Kony Mobile Application Management (MAM)

BYOD: End-to-End Security

Total Enterprise Mobility

BlackBerry Enterprise Service 10. Universal Device Service Version: Administration Guide

Managing and Securing the Mobile Device Invasion IBM Corporation

Ensuring the security of your mobile business intelligence

Technical Whitepaper. Secure Docs

When enterprise mobility strategies are discussed, security is usually one of the first topics

White Paper. Protecting Mobile Apps with Citrix XenMobile and MDX. citrix.com

perspective The battle between MDM and MAM: Where MAM fills the gap? Abstract - Payal Patel, Jagdish Vasishtha (Jags)

VMware Horizon Workspace Security Features WHITE PAPER

Mobile Device Management Solution Hexnode MDM

Mobile device and application management. Speaker Name Date

BYOD. and Mobile Device Security. Shirley Erp, CISSP CISA November 28, 2012

IBM Endpoint Manager for Mobile Devices

The increasing popularity of mobile devices is rapidly changing how and where we

CDW PARTNER REVIEW GUIDE MOBILE DEVICE MANAGEMENT

EndUser Protection. Peter Skondro. Sophos

RFI Template for Enterprise MDM Solutions

Secure, Centralized, Simple

ArcGIS Server Security Threats & Best Practices David Cordes Michael Young

ADDING STRONGER AUTHENTICATION for VPN Access Control

{ipad Security} for K-12. Understanding & Mitigating Risk. plantemoran.com

Securing Office 365 with MobileIron

Enterprise Mobility Suite Overview. Joe Kuster Catapult Systems

Workday Mobile Security FAQ

ABSTRACT' INTRODUCTION' COMMON'SECURITY'MISTAKES'' Reverse Engineering ios Applications

MOBILE SECURITY. As seen by FortConsult. Lars Syberg Head of Security Services

Enterprise Mobility Management for Financial Sector

White Paper. Anywhere, Any Device File Access with IT in Control. Enterprise File Serving 2.0

MobileIron. Hendrik Van De Velde Exclusive Mobile Eco-system

How To Secure Your Mobile Device

IT Self Service and BYOD Markku A Suistola

OWA vs. MDM. Once important area to consider is the impact on security and compliance policies by users bringing their own devices (BYOD) to work.

Enterprise Mobility Management Migration Migrating from Legacy EMM to an epo Managed EMM Environment. Paul Luetje Enterprise Solutions Architect

Frequently Asked Questions & Answers: Bring Your Own Device (BYOD) Policy

BYOD in the Enterprise

Introduction to the Mobile Access Gateway

How To Protect Your Mobile Device From Attack

Integrating Cisco ISE with GO!Enterprise MDM Quick Start

Cortado Corporate Server

Preparing for GO!Enterprise MDM On-Demand Service

The ForeScout Difference

Mobile Access Software Blade

Feature List for Kaspersky Security for Mobile

BYOD AND NEXT- GENERATION MOBILE SECURITY

Mobile Security Solution BYOD

AGENDA. Background. The Attack Surface. Case Studies. Binary Protections. Bypasses. Conclusions

[BRING YOUR OWN DEVICE POLICY]

Mobile First Government

Smart Givaudan. From BYOD experience to new mobile opportunities

Microsoft Enterprise Mobility Suite

MDM: Enabling Productivity in the world of mobility. Sudhakar S Peddibhotla Director of Engineering, Good Technology

Pentesting iphone & ipad Apps Hack In Paris 2011 June 17

Building Secure Mobile Applications Using MaaS360 SDK and IBM Worklight

Securing Patient Data in Today s Mobilized Healthcare Industry. A Good Technology Whitepaper

Tom Schauer TrustCC cell

Kaspersky Lab Mobile Device Management Deployment Guide

GETS AIRWATCH MDM HANDBOOK

IT Resource Management vs. User Empowerment

How To Use A Microsoft Mobile Security Software For A Corporate Account On A Mobile Device

Getting Started with the iscan Online Data Breach Risk Intelligence Platform

Mobile App Management:

Key Requirements of Enterprise Mobility Management Solutions

Cisco Mobile Collaboration Management Service

ForeScout MDM Enterprise

Guidance End User Devices Security Guidance: Apple ios 7

Transcription:

For Enterprise Attacking BYOD Enterprise Mobile Security Solutions Vincent Tan Senior Security Consultant

whoami Sunny Singapore Senior Security Consultant @ Vantage Point Security 4+ years hacking stuff professionally, specializing in mobile & exotic stuff 1

Agenda 1. ios Applications in General 2. What is BYOD? Why BYOD? Who uses BYOD? 3. Security Features of BYOD Solutions 4. Good Technology 5. ios Jailbreaks / Attack Vectors 6. Story of Alice & Bob Local & Network Attacks against Good EMS 2

ios Applications > 1.4m Applications 1 in ios App Store ~10% in Business Category 35% of Enterprises have an Enterprise App Store 2 Simple vs Complex Functionality Mobile application capabilities have not caught up with device capabilities Maybe 10% of apps have advanced functionality MDM, Soft Tokens, Payment Applications, HomeKit. 1 http://www.zdnet.com/article/ios-versus-android-apple-app-store-versus-google-play-here-comes-the-next-battle-in-the-app-wars/ 2 https://go.apperian.com/rs/300-eoj-215/images/apperian%202016%20executive%20enterprise%20mobility%20report_final_20160216.pdf?aliid=16373787 3

BYOD BYOD? What and Why? 4

BYOD https://www.apperian.com/resources/2016-executive-enterprise-mobility-report/ 5

BYOD BYOD? What and Why? BYOD Adoption 74% using or adopting BYOD Governments Enterprise Mobile Security MAM (Mobile Application Management) MIM (Mobile Information Management) MDM (Mobile Device Management) http://www.zdnet.com/article/research-74-percent-using-or-adopting-byod/ 6

prevent employees from opening files in unsecured apps, backing up business data to personal cloud-based services, or copying and pasting business... Protection Claims Detect OS tampering and other policy violations remotely lock or wipe the device. Protect mobile apps and servers from being hacked 7

Enterprise Mobile Security Features Jailbreak Device PIN JB Detection Application VPN Password App Wipe / Lock Encryption 8

Good Technology Acquired by Blackberry in Nov 2015 Top 5 EMS Solution Providers 9

Good Technology Acquired by Blackberry in Nov 2015 Top 5 EMS Solution Providers GFE received CC EAL4+ in 2013 and GD solution in 2016 GD platform used as a foundation to the GCS to replace GFE GD platform allows developers to create and distribute apps that integrates with the GD services framework 11

GFE GFE vs GCS GCS Email Good Work MDM File Share Local File Storage Only Good Share Access enterprise file share Instant Messaging Good Connect Intranet Access Good Access Cloud Deployment Integrated MAM Common Platform 12

ios Jailbreaks ios Versions 7.0 7.0.6 7.1 7.1.2 8.0 8.1 8.0 8.3 8.1.3 8.4 9.0 9.0.2 9.1 9.3.3b 10b Jail Broken? evasi0n7 Pangu Pangu8 TaiG TaiG Pangu9 Not Public Not Public Non-Jailbroken Devices? Resign via developer certificate But apps will need to be reactivated 13

What about root? You ve got to be root?! Check out Stefan Esser s talk on ios 678 Security - A Study In Fail Physical Access DROPOUTJEEP (think NSA, GCHQ) Lost Devices / Stolen Devices Remote Attacks Jailbreakme.com v1 / 2 / 3 State sponsored / Corporate Espionage 1 http://www.tripwire.com/state-of-security/vulnerability-management/creating-iphone-rootkits-and-like-the-nsas-dropout-jeep/ 2 https://blog.fortinet.com/post/ios-malware-does-exist 14

Attack Vector Not normal pen testing Not just setting proxy and using Burp I m not attacking the application Changing the environment in which the application runs. Not new. API Hooking and DLL Injections on Windows. LD_PRELOAD on Linux. I m just doing it on ios. 15

Swizzler How do I change the Environment? Built an App More precisely a Dynamic Library (aka tweak) DYLD_INSERT_LIBRARIES=Swizzler Loads itself before an application starts Control all functionalities of an application 16

ios Security Architecture Swizzler Substrate 17

Swizzler 18

Swizzler 19

Swizzler 20

Swizzler 21

What else can you control? 22

Jailbreak Jailbreak Detection App Device PIN Password App DLP

Local Attacks 26

Jailbreak Device PIN JB Detection Jailbreak Detection Password App Wipe / Lock Encryption 27

Jailbreak Device PIN JB Detection Password App Wipe / Lock Encryption Device PIN Jailbreak Jailbreak Detection Password Encryption App Wipe / Lock 29

Blacklist of Files FILE *file = fopen("/applications/cydia.app", "r"); if (file) { fclose(file); return JAILBROKEN; } file = fopen("/usr/bin/ssh", "r"); if (file) { fclose(file); return JAILBROKEN; } FILE *replaced_fopen (const char *filename, const char *mode) { if (blockpath(filename)) { errno = ENOENT; return NULL; } } bool blockpath(const char *fpath) { NSArray *denypatterns = [[NSArray alloc] initwithobjects: @"Cydia", @"lib/apt", @"/private/var/lib/apt", @"/var/lib/apt", @"/var/tmp/cydia.log", @"/etc/apt/", @"/var/cache/apt. } 30

Prohibited Functions int pid = fork(); if(pid>=0) { return JAILBROKEN; } pid_t replaced_fork(void){ if (disablejbdectection()) { return -1; } pid_t ret = orig_fork(); return ret; } 31

if ([[UIApplication sharedapplication] canopenurl:[nsurl URLWithString:@"cydia://package/com.example.package"]]) { return JAILBROKEN; } NSURL openurl + (id)urlwithstring:(nsstring *)URLString{ NSRange range = [URLString rangeofstring:@"cydia options:nsregularexpressionsearch NSCaseInsensitiveSearch]; if (range.location!= NSNotFound) { return nil; } } return %orig; 32

Jailbreak Detection Jailbreak Detection Methods Blacklist of files Directories Symbolic Links Prohibited Commands File System URL Handles Kernel Parameters 33

GT::GeneralUtilityClass::constructStringList ( GT::GeneralUtilityClass::tamper_detection_method_t, std::vector<std::string, std::allocator<std::string> > ) Jailbreak / Policy Implementation 34

Jailbreak / Policy Implementation GD::GDSecureStorage::handleWrongPwd GD::GDSecureStorage::wipeDevice GD::PolicyProcessor::processLockAction GD::GDLibStartupLayer::checkPartialCompliance GD::PolicyComplianceChecker::checkComplianceUnlocked GD::PolicyComplianceChecker::checkComplianceLocked 35

Jailbreak Device PIN JB Detection Password App Wipe / Lock Encryption Password Bruteforce 36

Jailbreak Device PIN JB Detection Password App Wipe / Lock Encryption Device PIN Jailbreak Jailbreak Detection Password Encryption App Wipe / Lock 38

Jailbreak Device PIN JB Detection Disable App Lock & Password App Wipe / Lock Encryption Device Wipe 39

Jailbreak Device PIN JB Detection Password App Wipe / Lock Encryption Device PIN Jailbreak Jailbreak Detection Password Encryption App Wipe / Lock 41

Jailbreak Device PIN JB Detection ization Password App Wipe / Lock Encryption 42

Jailbreak Device PIN JB Detection Password App Wipe / Lock Encryption Device PIN Jailbreak Jailbreak Detection Password Encryption App Wipe / Lock 44

Network Attacks 46

Jailbreak Device PIN JB Detection Application VPN Password App Wipe / Lock Encryption 47

Application VPN 48

GD Network 49

GD Network Communications Two methods of communication with the enterprise application server, 1. GDHttpRequest 2. Native URL Loading (NSURL, NSMutableURL, etc.) 50

51

Part of the GD SDK #import <GDNETiOS.h> Easy to enable proxy GDHttpRequest [GDHttpRequest enablehttpproxy:ip withport:port]; [GDHttpRequest disablepeerverification]; 52

Native URL Loading Enabled via GDURLLoadingSystem Class [GDURLLoadingSystem enablesecurecommunication] Enabled by default Proxying traffic is harder Doesn t obey ios network proxy settings Swizzle [NSURLConnection initwithrequest] 53

Hooking the Network SSL over TCP HTTP(S) Traffic 54

Does everything suck? Local device access is important, but remote attacks possible. https://www.youtube.com/watch?v=stiho2xooim Be careful of USB chargers. BadUSB. Intranet == Internet Additional security checks on apps 55

Take Aways! Think outside the box to break the box! BYOD Policy helps to a certain extent, but such attacks will always be possible. Do not blindly trust what the vendors sell you. https://github.com/vtky/swizzler 56

Thank You! vincent.vtky@outlook.com https://www.linkedin.com/in/vincenttky @vincent_tky 57