Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Securing iOS (and what is up with Provisioning)

Jeremy Foo
September 23, 2013

Securing iOS (and what is up with Provisioning)

Superficial overview of how Apple secure's iOS and also what provisioning is all really about.

Jeremy Foo

September 23, 2013
Tweet

More Decks by Jeremy Foo

Other Decks in Technology

Transcript

  1. #import <Foundation/Foundation.h> int main(int argc, char *argv[]) { ! @autoreleasepool

    { ! ! NSLog(@"Hello World!"); ! } ! ! return 0; } Instructions
  2. Info leak Buffer overflow Privilege confusion Unvalidated input Race conditions

    Dangling pointers Privilege escalation Access Control Control
  3. Info leak Buffer overflow Privilege confusion Unvalidated input Race conditions

    Dangling pointers Privilege escalation Access Control Control
  4. “The crux of the problem lies in the assumption that

    any program executing on a system on the user's behalf should have the exact same abilities and permissions as any other program executing on behalf of the same user.”
  5. “Untrusted code is everywhere, and the only defense seems to

    be tedious user training and anti-virus software — the latter assuming it's fully updated, and assuming the anti-virus makers have had time to deconstruct each latest virus and construct a defense for it.”
  6. “The laptops are also possibly the first time that a

    mainstream computing product has been willing to give up compatibility with legacy programs in order to achieve strong security. As an example, you'll find that talk about anti-virus and anti-spyware technology is conspicuously absent from the Bitfrost specification, because the security platform on the XO laptops largely renders these issues moot.”
  7. Dictate your battlefield Security Philosophy Reduce vectors for attack “Know

    your enemy and know yourself and you can fight a hundred battles without disaster.” - Sun Tzu
  8. NAND NOR iBoot / Baseband OS / Apps /dev/disk0s1 /

    hfs ro 0 1 /dev/disk0s2 /private/var hfs rw,nosuid,nodev 0 2 Filesystem
  9. Sandbox Profile TrustedBSD No internet No network Pure Computation No

    filesystem writes No writes except temporary Safari Javascript JIT