Giving Mobile Security the Boot

Total Page:16

File Type:pdf, Size:1020Kb

Giving Mobile Security the Boot Giving Mobile Security the Boot Jonathan Levin http://Technologeeks.com (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Plan • Android Boot Chain • iOS Boot Chain • TrustZone • iOS & TrustZone • Android & TrustZone (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! morpheus@Zepyhr$ whoami (一点儿宣传 ☺) • 深入解析 Android • Available (in Chinese!) End of 2016 – Including N • http://NewAndroidBook.com/ Volume I (available) Volume II (soo-N) morpheus@Zepyhr$ whoami (一点儿宣传 ☺) • 深入解析Mac OS X & iOS 操作系统 • http://NewOSXBook.com/ • Plenty of useful reversing tools – jtool – procexp – filemon • But book terribly outdated! Boot Chains of Trust (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Boot Chains of Trust The Android Boot Sequence • Exact flow varies with vendor, but can be generalized • Components (except ROM) easily extracted from OTA Kernel BootROM SBL ABoot + initrd (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Android Boot: The BootROM • Very specific per chipset manufacturer • Not much is known about ROMs • But not really relevant for our discussion, either • Contain a hard coded public key( 公钥) of manufacturer Kernel BootROM SBL ABoot + initrd (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Boot Chains of Trust Android Boot: SBL • Vendor specific, but usually same operation: – Initialize subsystems (baseband, DSP, GPU, TZ) – Locate Android Boot • Signed with private key( 与私钥) of manufacturer – Signature is first link in chain of trust – May contain another public key of manufacturer or same. Kernel BootROM SBL ABoot + initrd (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Boot Chains of Trust Android Boot: ABoot • Commonly* based off of open source Little Kernel – May be customized by vendor • Supports FASTboot or other (e.g. ODIN) for flashing • May or may not be unlockable ( 解鎖) – If unlocked: • Effaces data (to ensure user data won’t be compromised) • Breaks chain of trust (any kernel can be loaded) • Usually blows a Qfuse to indicate void warranty Kernel BootROM SBL ABoot + initrd * - Samsung, others have custom loaders (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Boot Chains of Trust Android Boot: Kernel + initrd • Kernel is same ol’ Linux, but compiled for ARMv7/v8 • InitRD ( 初始 RAM 磁盘) contains root (/) file system – /init daemon and other vital daemons – /init.rc configuration files – SEPolicy (SELinux 的策略) which is enforced on device • Crucial components for security so bundled together – Kernel + initrd is in one partition – Aboot verifies hash of partition before loading (if locked) Kernel BootROM SBL ABoot + initrd (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Boot Chains of Trust Android Boot: DM-Verity • Extends boot-chain by taking hash of /system – /system is read-only, so in theory should not be modified • /system mounted through device mapper, as dm# device • All I/O flows through device mapper, verifies hashes – Incorrect hash causes I/O error • In practice nice idea, but utterly useless ( 不中用) – System-less root methods root but leave /system untouched. Kernel BootROM SBL ABoot /system + initrd (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! The iOS Boot Sequence iOS Boot Sequence • All boot components are encrypted – 32-bit: IMG3 64-bit: IMG4 (DER) • All boot components are validated – Slightest error sends device to recovery (and forced upgrade!) • 64-bit boot sequence still not broken* • 64-bit systems bolstered with Kernel Patch Protection (9.0) – Feeble (but valiant) attempt to prevent runtime kernel patches BootROM LLB iBoot Kernel * - no public ROM/iLLB/iBoot exploit presently known (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! The iOS Boot Sequence iOS Boot: The BootROM • Read only memory component, “Apple SecureROM” – Contains harded coded public key of Apple • Wasn’t that secure in A4 devices (<= iPhone 4) – Limera1n allows bypass and full ROM dump • Considerably better in A5 and later devices (>=4S) • Virtually unknown in A7 and later devices (5S+, 64-bit) – Theoretically dumpable via JTAG BootROM LLB iBoot Kernel (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! The iOS Boot Sequence iOS Boot: iLLB • Low Level Bootloader • Functions as stage 1 bootloader • Provides basic USB functionality (e.g. DFU) • Loads iBoot BootROM LLB iBoot Kernel (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! The iOS Boot Sequence iOS Boot: iBoot • Main component of boot process • Initializes all sub components • Spawns several threads (poweroff, idle, USB, ...) • Provides full USB functionality, HFS+, and more • 64-bit version also communicates with SEP • Locates and loads kernelcache, but refuses arguments • Logs to serial console, then turns it off • Turns GID access off • Validates SHSH (< iOS5) or APTicket (>=iOS5) BootROM LLB iBoot Kernel (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! The iOS Boot Sequence iOS Boot: KernelCache • /System/Library/Caches/com.apple.kernelcaches/ • Prelinks all kernel extensions ( 内核,包括所有的扩展) • Kernel extension loading otherwise disabled • Benefits: – Speed (prelinking) – Security (kernel + kexts authenticated, no other kexts allowed) BootROM LLB iBoot Kernel (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Validating components: SHSH • User updates/restores device • iBoot gets image (IPSW), parses it, generates request Key Value ApBoardID From IPSW ApChipID From Device ApECID Exclusive Chip ID ApProductionMode true (unfortunately) ApSecurityDomain From IPSW UDID Unique Device Identifier HostPlatformInfo iTuneshost OS identifier Locality en_US,zh_CN, etc.. VersionInfo libauthinstall-a.b.c.d.e • iTunes POSTs to http://www.gs.apple.com • Apple signs with their private key. • iBoot stores in NAND firmware partition SCAB container https://www.theiphonewiki.com/wiki/SHSH_Protocol Validating components: SHSH • Serious vulnerability: Replay – Protocol is plaintext, so easy to capture blobs – Store safely for a rainy day – When you want to bypass, fake gs.apple.com (e.g. /etc/hosts) • Widely used before iOS 5 for downgrades ( 降級) – iFaith – Saurik’s cydia server (built-in functionality) – TinyUmbrella (TSS Server) (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Validating components: APTicket • Same as SHSH, but image now contains ApNonce Key Value ApBoardID From IPSW ApChipID From Device ApECID Exclusive Chip ID ApNonce Random From iBoot(!) 隨機 產生 ApProductionMode true (unfortunately) ApSecurityDomain From IPSW ApTicket true UDID Unique Device Identifier HostPlatformInfo iTuneshost OS identifier Locality en_US,zh_CN, etc.. VersionInfo libauthinstall-a.b.c.d.e • iBoot stores in firmware partition and /System/Library/Caches – Nonce prevents replay unless iBoot can be pwned (e.g. Odysseus) (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! iOS 10b1: Think different • For the first time, kernelcache is not encrypted • Provides a first look at “missing pieces” – Jettisoned segments (e.g. KLD, __PRELINK_INFO) – KPP: Kernel Patch Protection (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! iOS 10b1: Think different • Mistake? Intentional? Only Cupertino knows... But I say: 废话... * Edit – Apple apparently took this seriously and did open the 32-bit chain (but NOT 64) in 10b2. (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! TrustZone & ELx (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! TrustZone 技 • Hardware support for a trusted execution environment • Provides a separate “secure world” 安全世界 – Self-contained operating system – Isolated from “non-secure world” • In AArch64, integrates well with Exception Levels (例外層級) – EL3 only exists in the secure world – EL2 (hypervisor) not applicable in secure world. (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Trust Zone Architecture (Aarch32) 非安全世界 安全世界 Source: ARM documentation (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Android uses of TrustZone • Cryptographic hardware backing (keystore, gatekeeper) – Key generation, storage and validation are all in secure world – Public keys accessible in non-secure world • DRM ( 数字版权管理) - special case crypto hardware backing) • Hardware backed entropy – PRNG ( 随机数发生器) code • 安全 NFC 通信通道 (Android Pay) • Kernel and boot chain integrity (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! Samsung uses of TrustZone • TrustZone is a fundamental substrate for KNOX – Trusted Integrity Measurement Attestation (TIMA) provides • Client Certificate Management (CCM) – Extends keystore by hardware backing • Periodic Kernel Measurement (PKM ) 周期内核测量 – Similar to iOS’s KPP – periodically checks kernel page hashes » 会定期 检查内核校验和 • Realtime Kernel Protection (RKP) 实时内核保护 – Intercepts events from kernel using traps to secure monitor (SMC) – 捕获任何恶意活动 (C) 2016 Jonathan Levin & Technologeeks.com - Share freely, but please cite source! iOS Uses of TrustZone • 32-bit: Apparently, none(?) – No SMC instructions in decrypted kernelcache • 64-bit: KPP – Long thought
Recommended publications
  • Porting Darwin to the MV88F6281 Arming the Snowleopard
    Porting Darwin to the MV88F6281 ARMing the SnowLeopard. Tristan Schaap 1269011 Apple Inc. Platform Technologies Group Delft University of Technology Dept. of Computer Science Committee: Ir. B.R. Sodoyer Dr. K. van der Meer Preface! 3 Introduction! 4 Summary! 5 Building a new platform! 6 Booting iBoot! 7 Building the kernelcache! 8 Booting the kernel! 10 THUMBs down! 16 Conclusion! 18 Future Work! 19 Glossary! 20 References! 21 Appendix A! 22 Appendix B! 23 Skills! 23 Process! 26 Reflection! 27 Appendix C! 28 Plan of Approach! 28 2 Preface Due to innovative nature of this project, I have had to limit myself in the detail in which I describe my work. This means that this report will be lacking in such things as product specific- and classified information. I would like to thank a few people who made it possible for me to successfully complete my internship at the Platform Technologies Group at Apple. First off, the people who made this internship possible, John Kelley, Ben Byer and my manager John Wright. Mike Smith, Tom Duffy and Anthony Yvanovich for helping me through the rough patches of this project. And the entirety of Core OS for making my stay an unforgettable experience. 3 Introduction About the Platform Technologies Group As it was described by a manager: “We do the plumbing, if we do our jobs right, you never see it.”. The Platform Technologies Group, a subdivision of the Core OS department, works on the embedded platforms that Apple maintains. Here, platforms are brought up and the embedded kernel and lower level support for the platforms is maintained.
    [Show full text]
  • UNITED STATES DISTRICT COURT for the Western District of Michigan
    Case 1:12-mj-00304-JGS Doc #4 Filed 10/09/12 Page 1 of 5 Page IDiffllED- GR . October 9, 2012 3:46PM AO 93 (Rev. 12109) Search and Seizure Warrant TRACEY CORDES, CLERK U.S. DISTRICT COURT WESTERN DISTRICT OF MICHIGAN BY: dmh /____ _____ UNITED STATES DISTRICT COURT for the Western District of Michigan In the Maner of the Search of (8riefl.v describe the property to be searched or identify the person by name and address) Case No. 1: 12-mj-304 an Apple 1-Phone model A 1332 with IC # SEARCH AND SEIZURE WARRANT To: Any authorized law enforcement officer An application by a federal law enforcement officer or an attorney for the government requests the search of the following person or property located in the Western District of Michigan (identify thl! person or describe the property to be searched and giw its location): One black-colored Apple 1-Phone telephone bearing model# A 1332 and IC # ••••. recovered from····· bedroom localed at····· The person or property to be searched, described above, is believed to conceal (id('ntif:v til(' pason ur dt•saib~t the property to be sei=ed): historical information regarding call activity, "phone book" directory information. stored voice-mails and text messages. and electronic files, photographs, and video images I find that the affidavit(s). or any recorded testimony, establish probable cause to search and seize the person or property. YOU ARE COMMANDED to execute this warrant on or before ·---··- ... Sep~ l9. ~1.2. ··--· ·--..... (not to I!.T,'el!d I-I days) gf in the daytime 6:00 .a.m.
    [Show full text]
  • Cache Attacks on the Apple A10 Fusion Soc
    iTimed: Cache Attacks on the Apple A10 Fusion SoC Gregor Haas, Seetal Potluri, and Aydin Aysu Department of Electrical and Computer Engineering North Carolina State University fghaas, spotlur2, [email protected] Abstract—This paper proposes the first cache timing side- devices which cannot be obtained legally [8]. Additionally, channel attack on one of Apple’s mobile devices. Utilizing Apple ensures that applications cannot arbitrarily interact a recent, permanent exploit named checkm8, we reverse- with other applications or the operating system by strictly engineered Apple’s BootROM and created a powerful toolkit for running arbitrary hardware security experiments on Ap- enforcing the allowed inter-process communication (IPC) ple’s in-house designed ARM systems-on-a-chip (SoC). Using interfaces. As shown in the literature [9], even determining this toolkit, we then implement an access-driven cache timing which interfaces exist is a challenging research problem. attack (in the style of PRIME+PROBE) as a proof-of-concept In the context of hardware security research on iPhones, illustrator. useful resources such as documentation or development The advanced hardware control enabled by our toolkit allowed us to reverse-engineer key microarchitectural details tools are even rarer than for software security research. For of the Apple A10 Fusion’s memory hierarchy. We find that the one, Apple does not release any detailed documentation SoC employs a randomized cache-line replacement policy as for their in-house designed hardware modules. Some in- well as a hardware-based L1 prefetcher. We propose statistical formation can be found in Apple’s patents for a dynamic innovations which specifically account for these hardware voltage frequency modulation (DVFM) module [10], secure structures and thus further the state-of-the-art in cache timing attacks.
    [Show full text]
  • Red Hat Enterprise Linux Openstack Platform 7 Bare Metal Provisioning
    Red Hat Enterprise Linux OpenStack Platform 7 Bare Metal Provisioning 安装、配置和使用 Bare Metal Provisioning(Ironic) OpenStack Team Red Hat Enterprise Linux OpenStack Platform 7 Bare Metal Provisioning 安装、配置和使用 Bare Metal Provisioning(Ironic) OpenStack Team [email protected] 法律通告 Copyright © 2017 Red Hat, Inc. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/ . In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries. Linux ® is the registered trademark of Linus Torvalds in the United States and other countries. Java ® is a registered trademark of Oracle and/or its affiliates. XFS ® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries. MySQL ® is a registered trademark of MySQL AB in the United States, the European Union and other countries. Node.js ® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
    [Show full text]
  • From Cves to Proof: Make Your USB Device Stack Great Again
    From CVEs to proof: Make your USB device stack great again Ryad Benadjila1, Cyril Debergé2, Patricia Mouy1, Philippe Thierry1 [email protected] [email protected] 1 ANSSI 2 IRSN Abstract. Nowadays, many devices embed a full USB stack, whose main components are made of software elements dealing with hardware IPs. USB sticks, hard-disk drives, smartphones, vehicles, industrial automa- tons, IoT devices: they all usually offer a USB physical connection, and a USB software driver dealing with it. In critical environments where attackers are able to tamper with this interface, any exploitable software Run Time Error (RTE) such as a buffer overflow might lead to a remote code execution on the vulnerable device, usually in privileged mode. This is even worse when the USB stack runs from a BootROM [12,45], yielding unpatchable software. This matter of fact exhibits the need for a portable RTE-free USB stack with concrete proofs: the current article proposes an open-source implementation of such a stack using the Frama-C frame- work [35], with proofs and various use cases (DFU, HID, mass storage, and more to come). Beyond providing the mere implementation, we bring a generic methodology to adapt complex protocols software stacks to Frama-C with strong embedded contexts constraints. 1 Introduction Software is becoming the core component of many systems, from small embedded devices to bigger desktop Personal Computers. Even for what seems to be simple and low-level tasks, dedicated hardware with hard- wired logic circuits are almost always driven by pieces of software that tend to become more and more complex.
    [Show full text]
  • Iboot-G2s.Pdf
    Web Enabled Power Switch Models: iBoot-G2S iBoot-G2+ March 2021 Congratulations on purchasing the best network controlled power switch available. This manual covers two models, iBoot-G2+ and iBoot-G2S. This manual refers to the iBoot-G2+ and notes the changes for the iBoot-G2S. Web Setup and Control: Simple browser interface for one click reboot and all configuration. iBoot Cloud Service: Control all your iBoots from a single sign-on. Eliminates port-forwarding and security issues. Telnet: setup and control of all fuctions. Allows easy scripting. Network Switch: Built-in 2 Port 10/100 Network Switch (iBoot-G2S only). Eliminates need for extra router port and simplifies installation. Expansion: Add low cost iBoot-EXP units for up to three outlets controlled. I/O Control: Control or Monitor your own digital Inputs and Outputs. Use inputs to control the local AC outlet. iBoot-G2+ AutoPing: Automatic monitoring and action for failed equipment. Graceful Shutdown: attempt a soft shutdown or reboot before controlling power. Disable Off: To prevent accidental off state of an outlet. Event Scheduling: Power actions on regular intervals. (14 events) Management Utility: Easy Setup, Firmware upgrades and Reset to Factory Default Easy Software Integration: Use the DxP Protocol to build your own custom applications. Control Software: Create batch files or Shortcuts to control power. URL control: Create your own website link to control power. API control: Control and setup Utalizing the cloud registration *API protocol is detailed in a separate document iBoot-G2S 1. Table of Contents 1. Table of Contents .................................... 1 8. iBoot Cloud Service .............................. 27 2.
    [Show full text]
  • An Analysis on Ios Jailbreak
    An analysis on iOS Jailbreak 1. Introduction • What is iOS Jailbreak iOS is Apple's mobile operating system, which is derived from Mac OS X, with which it shares the Darwin foundation, and is therefore a Unix-like operating system. Being developed originally for the iPhone, it then has been used on the iPod Touch, iPad and Apple TV as well. So in this report iOS is specifically refer to the mini-operation system that run on the iDevices (iPhone, iPod, iPad and Apple TV. In this little apple operation system, there are four abstraction layers: the Core OS layer, the Core Services layer, the Media layer, and the Cocoa Touch layer, which in total will roughly use 500 megabytes of the devices’ storage. For security and commercial reasons and considerations, Apple does not permit the OS to run on third- party hardware and also has a limitation on the usage of iOS on these iDevices. Therefore iOS has been subject to a variety of different hacking methods focusing on attaching functionality not supported by Apple. This hacking procedure is called iOS Jailbreak. • Why to Jailbreak—a Self-redemption Jailbreaking is a process that allows these iDevices users to gain the root access to the command line of the iOS operating system, in order to remove usage and access limitations imposed by Apple. Once jailbroken, iPhone users are able to download extensions and themes that are unavailable through the App Store (via installers such as Cydia) and perform other tasks that are not possible on store-bought devices, including installing non-Apple operating systems such as Linux, running multi-task on old version of iDevices (the new Generation of store-bought devices includes this function).
    [Show full text]
  • Ios-Security-Guide.Pdf
    iOS Security iOS 9.3 or later May 2016 Contents Page 4 Introduction Page 5 System Security Secure boot chain S y s t e m S o f t w a r e A uthorization S e c u r e E n c l a v e T o u c h I D Page 10 Encryption and Data Protection Hardware security features File Data Protection Passcodes Data Protection classes Keychain Data Protection Access to Safari saved passwords Keybags Security Certifications and programs Page 18 App Security App code signing Runtime process security Extensions App Groups Data Protection in apps Accessories HomeKit HealthKit Secure Notes Apple Watch Page 28 Network Security TLS VPN Wi-Fi Bluetooth Single Sign-on AirDrop security Page 32 Apple Pay Apple Pay components How Apple Pay uses the Secure Element How Apple Pay uses the NFC controller Credit and debit card provisioning Payment authorization Transaction-specific dynamic security code Contactless payments with Apple Pay Paying with Apple Pay within apps Rewards cards Suspending, removing, and erasing cards iOS Security—White Paper | May 2016 2 Page 39 Internet Services A p p l e I D i M e s s a g e F a c e T i m e i C l o u d i C l o u d K e y c h a i n S i r i C o n t i n u i t y Spotlight Suggestions Page 52 Device Controls Passcode protection i O S p a i r i n g m o d e l Configuration enforcement Mobile device management (MDM) Shared iPad Apple School Manager D e v i c e E n r o l l m e n t Apple Configurator 2 Supervision Restrictions R e m o t e W ipe Lost Mode Activation Lock Page 59 Privacy Controls Location Services Access to personal data P r i v a c y p o l i c y Page 60 Conclusion A commitment to security Page 61 Glossary Page 63 Document Revision History iOS Security—White Paper | May 2016 3 Introduction Apple designed the iOS platform with security at its core.
    [Show full text]
  • Ios Security Decoded.Key
    iOS Security Decoded Dave Test Classroom and Lab Computing Penn State ITS Feedback - http://j.mp/psumac33 Why care about iOS Security? 800M • 800 million iOS 600M devices activated 400M • 130 million in last year 200M • 98% of Fortune 500 0M Sep '10 Oct '11 Mar '12 Sep '12 Jan '13 Jun '13 Oct '13 Jun '14 Definitions Public and Private Keys Certificate AES-256 Definitions Public and Private Keys • Two mathematically linked keys • One is public and can be used to encrypt data • One is private and can be used by the recipient to decrypt data. ! Definitions AES-256 and SHA-1 • Two specs for encrypting data • AES-256 generates 256 bit keys • SHA-1 generates 160 bit keys ! Definitions Certificates and Certificate Authorities • A certificate is an electronic document used to prove the ownership of a public key. • A certificate authority (CA) is a trusted group who digitally signs a certificate to signify its veracity. ! iOS Security Decoded Secure Boot Chain Hardware Security Software Security Network Security Best Practices Secure Boot Chain � Starts at power on. Each step verifies the next. If any step fails, device enters Device Firmware Upgrade (DFU) mode. Secure Boot Chain Step 1 - Boot ROM ! • Implicitly trusted • Cannot be changed • Verifies signature of next Low-Level Bootloader via embedded Apple Root CA public key • Runs Low-Level Bootloader ! Secure Boot Chain Step 2 - Low-Level Bootloader (LLB) ! • Lowest level of code on device that can be updated • Verifies signatures of firmware and iBoot • Runs iBoot Secure Boot Chain Step 3 - iBoot ! • Verifies signature of iOS Kernel (XNU) • Starts kernel • If kernel verification fails, device goes into Recovery Mode (Connect to iTunes Mode) Secure Boot Chain Baseband and Secure Enclave have their own secure boot chain processes which run before the kernel is loaded.
    [Show full text]
  • Assurance Activity Report for Apple Filevault 2 on T2 Systems Running Macos Catalina 10.15
    Assurance Activity Report for Apple FileVault 2 on T2 systems running macOS Catalina 10.15 Apple FileVault 2 on T2 systems running macOS Catalina 10.15 Security Target Version 2.5 collaborative Protection Profile for Full Drive Encryption – Authorization Acquisition, Version 2.0e collaborative Protection Profile for Full Drive Encryption – Encryption Engine, Version 2.0e AAR Version 1.9, April 2021 Evaluated by: 2400 Research Blvd, Suite 395 Rockville, MD 20850 Prepared for: National Information Assurance Partnership Common Criteria Evaluation and Validation Scheme 1 © 2021 Apple Inc., All rights reserved. This document may be reproduced and distributed only in its original entirety without revision. The Developer of the TOE: Apple Inc. The Author of the Security Target: Acumen Security, LLC. The TOE Evaluation was Sponsored by: Apple Inc. Evaluation Personnel: Danielle Canoles Rutwij Kulkarni Dayanandini Pathmanathan Acumen Security, LLC. Common Criteria Version Common Criteria Version 3.1 Revision 5 Common Evaluation Methodology Version CEM Version 3.1 Revision 5 2 © 2021 Apple Inc., All rights reserved. This document may be reproduced and distributed only in its original entirety without revision. Revision History VERSION DATE CHANGES 1.0 November 2020 Initial Release 1.1 December 2020 Update based on updated ST 1.2 January 2021 Internal Review 1.3 February 2021 Updates based on updated ST and AGD 1.4 March 2021 Internal Review 1.5 March 2021 Updates based on updated vendor documents 1.6 March 2021 Updates based on updated ST 1.7 April 2021 Updates based on validator feedback 1.8 April 2021 Updates bases on validator feedback 1.9 April 2021 Updates bases on validator feedback 3 © 2021 Apple Inc., All rights reserved.
    [Show full text]
  • Processing Iphones Richard Gilleland Sacramento Police Department [email protected]
    Processing iPhones Richard Gilleland Sacramento Police Department [email protected] This document describes the Jonathan Zdziarski method for processing iPhones. Jonathan Zdziarski has designed a number of tools (along with great documentation) that can be used to both remove the passcode from an iPhone as well as to image an iPhone. Zdziarski offers his tools and documentation free to law enforcement through his website which is located at ‘www.iphoneinsecurity.com/’. Once an account has been established at iphonesecurity.com, users have access to the tools and documentation that Zdziarski has created. Access to these tools is necessary to process iPhones using this method. I highly recommend reading ‘iPhone Forensic Investigative Methods.pdf’ by Zdziarski for a comprehensive description of processing iPhones. This document is not meant to take the place of Zdziarski’s comprehensive publication, it is simply meant to provide a short / detailed description for processing iPhones. Prior to processing an iPhone, its firmware version must first be established. An iPhone’s firmware can be determined in both a Windows environment and a Mac environment. The following steps can be used to determine the phones firmware version in a Windows environment. Go to page 6 of this document for instructions in a Mac environment. Page 2 Determining iPhone Firmware Version - Windows Page 6 Determining iPhone Firmware Version - Mac Page 10 Removing the iPhone's Pass Code Page 15 Imaging the iPhone Page 23 Working with the Image File Pages 27 / 28 Cheat Sheets 1 Determining iPhone Firmware Version Firmware determined using Windows XP OS; System requirements; Windows XP iTunes (I used version 9.1.1.12 for this test) Internet access (* This method may not work for Vista and Windows 7 systems) 1.
    [Show full text]
  • XNU: a Security Evaluation XNU: a Security Evaluation
    XNU: a security evaluation XNU: a security evaluation D Keuper (s1019775) University of Twente and Certified Secure December 13, 2012 Abstract The XNU kernel is the kernel that powers Apple's OS X and iOS operating system. Originally developed by Next, but later acquired by Apple it has been around for more then twenty years. It is only since the introduction of code signing on iOS that hackers have developed a real interest in XNU. Prior to iOS 2.0 only a handful of articles were published on XNU in the context of security. In the past few years the interest of hackers increased by the popularity of jailbreaking (the process of removing the security restrictions of iOS) and iOS security is often discussed at the various security conferences. The interest of hackers in the XNU kernel has not gone unnoticed by Apple, which started to harden the security of their XNU kernel. In the latest releases of their operating systems they added different mitigation techniques such as kernel ASLR. The latest release of OS X (Mountain Lion) and iOS (6) are hardened with new protection mechanisms, which should reduce the risk of successful exploitation. In this thesis we describe all techniques that are meant to protect the kernel from attackers and their implementation. We argue the effectiveness of those techniques and how an attacker might try to circumvent them. We conclude this thesis with a comparison with other kernels, our opinion on the current security state of the XNU kernel and some recommendations on how to further improve the security.
    [Show full text]