So now we've examined the threat landscape a bit, and we've had a brief information security review. Let's start discussing our mobile platforms here. We're going to begin with I a Wes and then move on to Android. Now, during the section, I will be mixing our lecture with some exercises using RV EMS.
So be sure you have them downloaded and running. Bearing in mind that hex skipped. The M is only gonna run on Mac hardware.
But if you don't have a Mac Tory, a lot of the tools we introduce are gonna be available on mostly next Destro's, including the ones we talked about earlier in the course. But if we use a specific OS during an exercise, I'll be sure to let you know what you need to get yourself. I've been running
all right, we're gonna start here with a brief history lesson, and then we're going to discuss the architecture in depth.
So as you may know, I OS is an operating system developed by Apple in 2007 to run on its Apple hardware. It's based on the Mac OS, and it was the first iteration of the touch centric mobile operating system. IOS was installed on the first iPhone, which ran IOS version 1.15
And throughout the years we've seen versions to through 12 which offered different types of user enhancements and security updates.
The latest version is Iowa's 13 which was announced in June 2019. It was released the beta testers in July, and it will most likely be pushed to the user community in the coming months.
In 2008 the APP store was open, which served as a digital platform for uses to browse and download APS developed for IOS with Apple's software development kit.
As of 2017 the APP store has over three million APS for download, which, of course, is one of the reasons why we're here to analyze the malicious ones. Okay, let's move into the IOS architecture. So as you know, Apple IOS utilizes a multi touch interface
and using the interface, we can use simple gestures with our fingers to operate the device and even use our own voice or face to control different features and applications.
The IOS is divided up into four layers. These layers provide different layers of abstraction and have their own components which we're going to break down the bottom. Most layer layer one Here is the core operating system layer. This layer interacts with the hardware, which is a physical chip on the device.
The core operating system layer is the foundation of our operating system, and it provides us access to a low level operating system. Service is and has several components,
so let's do this. Let's make a chart of all the layers and all the components. You can have it later for reference. So we've got
first our core OS layer
court OS layer, and it provides us access to the OSX. Colonel provides us access to different low level drivers,
provides us access to sockets. Network sockets,
Power management features
Security is encrypting and decrypting data through the use off cryptographic functions. So there you go. There's our core os layer.
Our second layer is the core. Service is layer. This is a layer that gives us abstraction to access. Service is provided to us by the OS layer.
Our core service is Layer also has several components, so let's go ahead and list those out there. We've got core
in here. We've got access to collections,
which is a data management feature.
We've got the address book
that's pretty self explanatory.
Access to networking.
This is going to tell us if the phone is on WiFi or if it's Bluetooth settler. If a specific host can be accessed, our server can access it the basic overall state of the network
Sequel Light. Ask how light
that gives us access to the sequel, database
This gives us information about the location and orientation of our device. So there you have it. There's our core service is
the third layer is our court media layer. This is the layer that provides multimedia service is it holds graphics libraries, and it's made up of the following components. Let's list them out.
And so our media layer.
This gives us access to open G O,
which is for creating two D and three d. You've got our audio.
This gives us access to a couple different components. Audio mixing, audio recording the core audio
video for video playback,
pdf rendering engines
animation. So this gives us support for animating the use and other contents. So there you go, there you have it. That's our immediately our fourth layer, which is the coca touch layer that gives us access. Toothy actual interface. We can installing. Use the applications like any of the games, contacts, APS, notifications. And, of course, it supports multi touch capability.
So the Coke touch layer has the following components. Let's list those out.
Okay, so this gives us access to controllers,
the controllers component. This allows us to manipulate and change behavior of our application. We've got alerts, interacts with the messaging service just in case something goes wrong with her application localization.
That's if we want to make an app for where we located in the world.
We've got the Web use. This allows us to
interact with each Tamil content image picker
manipulates images and allows us to control what we could do with images. We've got the people picker
that interacts with the
address book framework.
And lastly, we've got the
events. Of course, these are events where you touch, pull, drag, slide, all those different types of events you want to work with.
And that is the coca touch layer. So you may be asking yourself. Okay, well, you've explained these frameworks and components and layers. But what does it all mean? Why's it all important?
Well, try to think of it from a forward engineering standpoint. If I build an IOS application from the ground up, I might use any one of the layers or frameworks or components to get my application up and running. We'll malware authors air doing the exact same thing. They're using the same frameworks that we are,
so the better. I understand the architecture in the different components and frameworks that offered within the architecture,
the better I can analyze their applications.