Black Box Version 1.0 Bedienungsanleitung

Stöbern Sie online oder laden Sie Bedienungsanleitung nach Vernetzung Black Box Version 1.0 herunter. Inside Apple`s MDM Black Box Why am I here? Benutzerhandbuch

  • Herunterladen
  • Zu meinen Handbüchern hinzufügen
  • Drucken
  • Seite
    / 31
  • Inhaltsverzeichnis
  • LESEZEICHEN
  • Bewertet. / 5. Basierend auf Kundenbewertungen
Seitenansicht 0
Inside Apple’s
MDM
Black Box
David Schuetz, Senior Consultant
aka Darth Null
@schuetzdj
Why am I here?
• Have customers who need MDM
• Ask questions like “How secure is it?”
We’d like to be able to answer them
• To answer, need to understand it
• Protocol wasn’t published
So we thought we’d share.
So why am I here today?
In a nutshell, we have customers who need mobile device management
capabilities, especially for iOS platforms. As security consultants helping
them to design the most secure deployment possible, they naturally ask
us “How secure IS this system?” And, frankly, we’d like to be able to
give them a good answer.
But to answer that question well, we have to understand just how MDM
works. Unfortunately, the protocol hasn’t been openly published, so not
many people really understand it that well. We understand it (at least,
we feel like we do), and so we thought we’d share so that others can
build on our knowledge and better help their organizations and
customers.
Seitenansicht 0
1 2 3 4 5 6 ... 30 31

Inhaltsverzeichnis

Seite 1 - Why am I here?

Inside Apple’s MDM Black BoxDavid Schuetz, Senior Consultant aka Darth [email protected]@schuetzdjWhy am I here?• Have customers

Seite 2 - Configuration

Authenticate Response• Server can decline enrollment• A blank plist is a valid “ok” response<?xml version="1.0" encoding="UTF-8"

Seite 3 - Configuration Profiles

Commands and ResponsesCommand List• Configuration–Install and Remove Configuration Profiles–Install and Remove Provisioning Profiles• Status–Device In

Seite 4 - Over-the Air Delivery

New in iOS 5• Configuration–Install, update, remove applications–Apply Configuration Settings–Apply Redemption Code• Status–List Managed Applications•

Seite 5 - Management

Client Initial Connection• Simple “status” message• Identifies self via UDID• Triggers server to provide command<plist version="1.0">

Seite 6 - Notifications - Client

Generic Response• Returned for many commands–Basically, anything other than a query cmd• If not Acknowledged, likely will get error msg<plist versi

Seite 7 - MDM Notifications

DIY MDM ServerDIY Server• Fewer than 500 lines of python• Uses standard libraries, plus:–web.py –APNSWrapper.py–OpenSSL (command-line)• Simple command

Seite 8 - Enrollment

DIY Server• Very rough:–Implements all commands–But not all responses–Only one device at a time -- “last in wins”• No guarantees• Good starting point

Seite 9 - Authenticate

MDM Limitations• User can terminate MDM relationship–Will lose whatever MDM installed–Corporate profile settings, etc.–But now the device tells MDM wh

Seite 10 - Token Update

Interesting Bugs?• Clearing passcode delay bug –Doesn’t immediately interrupt delay–Doesn’t clear failure count• Don’t mistype your new passcode the f

Seite 11 - Responses

Security Concerns• No command authentication–“Sign message” option not enforced• SSL authentication–Appears to accept any cert with ‘trusted’ root–MIT

Seite 12 - Command Flow

iOS ConfigurationEnd User Controls• Basic stuff• Passcodes, restrictions, etc.• Entered by user, can be removed by user• May password protect settings

Seite 13 - Command Format

Good Security Findings• Things you can’t do:–Install profile on locked device–Read installed profile details • List profiles gives meta-data only–Unlo

Seite 14 - Response - Device Info

Overwrite MDM Profile• Can’t install profile on locked device• Can install when device unlocked• If you reinstall the MDM profile...• ...it re-enrol

Seite 15 - DIY MDM

Man in the Middle• Use standard MITM techniques–Wi-Fi trickery, forge SSL cert, etc.• Or, since you have physical access to device:–Get onto device –A

Seite 16 - Mini MDM

Push Profile to Device• Can’t send the push message• But can instruct device to poll–MDMOutstandingActivities.plist• The “Status: Idle” message–Place

Seite 17 - Missing Features

Send Clear Passcode• Wait for another chance at device• DFU boot, force MDM poll• Evil server sends ClearPasscode• Now device fully unlocked–Browse ev

Seite 18 - Lock Out Bug

Isn’t this a bit crazy?• Yes. Yes, it is.• For a high-value target, not unheard of.• Levels of difficulty:–Access via DFU: Pretty difficult–Putting se

Seite 19 - Possible Attacks

Evil Lackey• Change:–“Hotel” to “Office”–“Maid” to “Passed-over Deputy to the Deputy”–“Hotel Bar” to “Office Gym”• Advantages:–Longer time-frame for a

Seite 20 - That’s not

But that’s not all...• Remember I said:–“Can’t install a profile to a locked device”That’s not entirely true

Seite 21 - Evil Maid Attack

Keybags• Literally a container of encryption keys• Used to decrypt protected data• (Also used for syncing and for remote unlock)• Lock: delete in-memo

Seite 22 - Duplicate MDM Profile

Implications• Device appears locked to user• Processes “privileged” MDM commands–Can Install Profile, and re-enroll in MDM• Access protected files via

Seite 23 - Re-Installing MDM

Configuration Profiles• Good for IT management• Install standard profile on many devices• Can be locked with password–But won’t preclude other persona

Seite 24 - Covering Your Tracks

To Sum Up...So... “How secure is it?”• Actually, not too bad.• Some limitations and some holes–No serious conceptual flaws–Issues should be reasonably

Seite 25 - Evil Maid

Bibliography / Links• Apple docs:–Troubleshooting Push Notifications–Local and Push Notification Programming Guide–Over-the-Air Profile Delivery and C

Seite 26 - Evil Lackey

New in iOS 5• Restrictions:–Force password for all iTunes purchases–Restrict Siri, iCloud backup / sync / photo stream–Restrict diagnostic data, rejec

Seite 27

Mobile Device ManagementMDM Basics• OTA + Push Notifications• Sends profiles directly to device• Can update enterprise in minutes• No reliance on end-

Seite 28

Overview• Enroll device–Installs profile linking device to MDM• MDM server pushes message–“Hey, call me” • Device connects to server–“You rang?”• Serv

Seite 29 - So What?

Notifications - Server• Short message –Payload <= 256 bytes• Sent in JSON format • Addressed by the DeviceToken• Signed by originator and sent to A

Seite 30 - To Sum Up

EnrollmentEnrollment Profile• Easily created in IPCU• URLs for enrollment and server–iOS 5 requires SSL, iOS4 works with just http://• Associate with

Seite 31 - Bibliography / Links

Enrollment - Network• Authenticate–Identifies device to server–MDM server may decline• TokenUpdate–Sends tokens to server–Enables push notification–Ke

Kommentare zu diesen Handbüchern

Keine Kommentare