Mobile OS Security
Mobile OS Security
Mobile OS Security
SUMANAND Su_andy44@rediffmail.com
Background
1.5 billion mobile phone users (ITU) Mobile device capabilities are significantly advanced than those in the past PDA + Cell Phone = Smartphone Key question
Are we going to face the same level of threat to security of mobile devices as that of in desktop environment?
Background
Introduction
Mobile Malware
Security research on mobile networks has focused largely on routing issues, and more recently on protocol security.
Information Theft
Flood the device Drain Power Attacks (Battery Exhaustion or Sleep Deprivation Torture)
Introduction
Evolution of Symbian OS
1997 - 32 bit EPOC Platform (Psion Software Inc) Psion Series 5 PDA 1998 Symbian A spin-off from Psion Software Inc. Co-owned by Psion, Nokia, Eriksson, Motorola The motive behind this spin-off was to develop an advanced software platform for a new combination of consumer products called smartphones which would combine telephony and computing capability 1999 EPOC named as Symbian OS Co-owned by Psion, Nokia, Sony-Eriksson, Motorola, Matsushita (Panasonic), Samsung and Siemens.
Symbian OS
Hard RTOS based on layered/micro-kernel architecture StrongARM architecture (ARM9 running over 100 MHZ) Program storage (flash memory) ; OS storage flash ROM
Symbian OS
Micro-kernel uses client/server session based IPC Servers mediate access to shared resources and services Kernel deals with memory allocation and IPCs Proactive defense mechanism
Symbian OS Architecture
Architectural Overview
Core
System Layer
Application Engines User Interface Software Applications All layers communicate with each other using Client/Server Mechanism
Platform Security
Categories of trust
Capability Model
A capability is an access token that corresponds to permission to access sensitive system resources. (Entity of protection)
Capability Rules
Rule 1: Every process has a set of capabilities and its capabilities never Rule 2: A process cannot load a DLL with a smaller set of capabilities than
.. ..
itself.
Certification
capabilities required
DLL
Requested capabilities
Certificate
capabilities that can be granted
SIS
EKA2 kernel is the key component of TCB Multi-threaded and pre-emptive multitasking RTOS kernel IPC mechanism Client/Server Sessions Special accessor and copy functions Thread stacks and heaps are private chunks When the kernel allocates memory to a process, it overwrites it with zeroes to prevent any private data from the previous owner being accessible to the new process. DBMS Window Server Kernel Server
Kernel mediated sessions
File Server
Application
The kernel
Parameter passing in IPC request the length is checked, even in the case of a pointer, to ensure that the server will not read or write more than the client expected to disclose : any attempt to read before the pointers address or after its length will fail. EKA2 also takes advantage of the ARMv6 never-execute bit in the page permissions when supported by the hardware. This is used to deny execution of code from stacks, heaps and static data.
Data Caging
Data caging allows applications on a Symbian OS device to have private data which is not accessible by other applications. It is about file access control. Opposite to traditional Access Control List, it is Fixed Access Control Policy.
regardless of the drive.
The access rules of a file are entirely determined by its directory path,
1. 2. 3. 4.
Four different sets of rules have been identified which are represented by four directory hierarchies under the root \: \sys ; Only TCB processes can read and write \resource ; All processes can read but only TCB processes can write \private ; All program are provided a private sub directory regardless of their level of trust. Only process owner and TCB processes can read and write All other root files and directories ; Public space
Windows CE OS
Win CE 5.0 is a hard RTOS Base OS functionality is provided by kernel which includes process, thread, memory and file management Kernel acts as a conduit for the rest of the core OS Windows CE kernel uses a paged virtual-memory system to manage and allocate program memory. The kernel also allocates memory to the stack for each new process or thread.
Memory Architecture
ROM stores the entire operating system (OS), as well as the applications that come with the OS design. The OS loads all read/write data into RAM. When OS executes programs directly from ROM, it saves program on RAM and reduces the time needed to start an application, because the OS does not have to copy the program into RAM before launching it. The maximum size for the RAM file system is 256 MB, with a maximum size of 32 MB for a single file.
The maximum size for the RAM file system is 256 MB, with a maximum size of 32 MB for a single file. However, a databasevolume file has a 16-MB limit. The maximum number of objects in the object store is 4,000,000.
The boundary between the object store and the program RAM is movable.
Windows Mobile 5.0 RAM is used exclusively for running programs. Flash memory is used for storage of programs and data. Result: extended battery life but slower performance
OS Security
Componentization: OS loads only required components Module Certification: Windows CE exposes a function called OEMCertifyModule, if implemented; this function gives OEM the ability to verify the trust level of a process or a DLL within the OS. The file system can be either a RAM and ROM file system or a ROM only file system. The system registry stores the data about applications, user configuration settings and preferences, passwords. System registry is readable.
Mobile Malware
Cabir: June 20, 2004, Symbian OS, Bluetooth worm DUTS: July 17, 2004, Win CE, File sharing and email virus BRADOR: August 5, 2004, Win CE, requires manual installation, first know backdoor Qdial: August 12, 2004, Symbian OS, replicates through Mosquitoes game, sends SMS to premium rate numbers Skulls: November 21, 2004, Symbian OS, trojan that replicates through file sharing networks Velasco: December 29, 2004, Symbian OS, Bluetooth worm Locknut (Gavno): February 1, 2005, Symbian OS, replicates via download from Symbian patch sites CommonWarrior: March 7, 2005, Symbian OS, spreads over Bluetooth/MMS Dampig: March 8, 2005, Symbian OS, malicious file dropper Cardtrap: September 20, 2005, Symbian OS, Trojan that spreads to users PC through phones memory card
Comparative Review
Symbian: ARM processors running 100-200 MHz Win CE: ARM and Intel processors running 200-400 MHz Symbian: OS kernel runs in privileged mode, with each app has its own address space Win CE: Shared RAM and flash ROM, use eXecute In Place (XIP) scheme Symbian: TCB contains file system Win CE: Hierarchical file system accessible through kernel functions Symbian: Symbian specific frameworks/libraries Win CE: Windows API Symbian: Fairly well designed Win CE: Lack of processs address space protection
Memory Management
File System
Development
Security
Audit Trail
Conclusion
As the user base of these devices grows over time, the possibility of serious threats will be imminent. Openness facilitates to both third party developers and malware writers Control the software distribution channel Biggest concern is the hijacking of radio facilities of mobile device Mobile worms and viruses will be a greater challenge in future unless safeguards become a standard provision on the new devices. Solution: Antivirus software for mobile devices