Time
3 hours 58 minutes
Difficulty
Beginner
CEU/CPE
4

Video Transcription

00:00
Okay, so let's go through these questions together. I have my hex capes of'em up and ready to go. I've already navigated to the lab folder and also have a document that has the questions in it so that we can record the findings. Okay, so let's begin. Question one. What is the hash of the program?
00:17
Okay, so that is pretty easy, right? We just do it MD five
00:23
and we get the hash. Okay, so that's easy enough.
00:31
Okay, Is the Mau were known. Okay, well, there's three ways we can do this, right? We can look at virus Total. We could search Google and we get scanning with a V. So let's see if Google knows anything about this hash here.
00:53
Okay? Nothing from Google. Let's see, a virus total knows anything about it.
01:00
Search.
01:07
Okay, No matches found. So at this point, we go ahead and scan it if it's not a sensitive application, or we can just continue. So let's just continue.
01:19
So is the Mau were known while at the moment.
01:23
No,
01:23
it isn't the moment
01:30
Clearly have a problem typing.
01:33
Okay. Are there any interesting strings in this malware? Okay, well, let's go ahead and unpack it right to do that. We just unzip it like we did in previous examples.
01:45
Let's look at our directory structure. Came our Mauer down A p A.
01:52
So we go into the mouth were folder. We should have a payload director. Correct?
01:56
Yes, we D'oh! Okay, let's dive into the payload directory.
02:00
There's arm our app.
02:08
So now we need the excusable name.
02:13
Where is he? Execute a ble.
02:17
Okay, so we don't have an execute. Will name, name? Malware. So how do we find out what the execute a ble name is? While we can use the p analyst utility or the pl utility
02:30
Mashpee
02:32
info dot p list. Right. And this should give us the executed all name.
02:40
Okay, so here we go. CF bundle, execute Herbal. No icon. So that is our executed will name. So that's what we want to use on the string.
02:50
Okay. Or that's what we're gonna use with the strings command. Right? So are there any interesting strings? Let's look
03:01
okay. Lots of output here.
03:04
So now we can go through and come take a look at what the strings are to see if there's anything really interesting
03:10
we could do this manually, or we could search for some artifacts. So why don't we search for some artifacts first, http, for example,
03:23
we'll grab for http.
03:30
Okay, So here we go. We got a ton of interesting. You are else here. Basically, what we could do is search any one of these an open source and see if we get any data back
03:40
so constantly We want to revisit this question. Is the malware known Well know right now, But I bet you if we take this domain or any, any one of those domains, actually, and it will come up with something, maybe. Hopefully you never know.
04:00
Yeah,
04:00
I messed up the screen. Okay,
04:04
that's fine. Just go back here,
04:11
okay? Sorry. Are there any interesting strings? Yes. There are
04:15
lots of domains.
04:21
We could go ahead and search for different things. Let's see. Um,
04:32
let's grab this. No icon. What is this supposed to be doing?
04:36
What is the name of this application?
04:41
Okay, so we've got some different names here.
04:44
It's even calling this no icon update that I PS. So it looks like it may be getting another application somewhere, So why don't we take that.
04:55
No icon
04:59
I p a
05:01
and look at some context around it.
05:04
Yeah, so look at this. It looks like it's going to look at this 80 page that I p a could be getting that again with no icon update.
05:15
It's using this bundle in some way. This user bundle?
05:23
Yes. So there are lots of interesting, interesting strings here. Um, looks for
05:30
other packages. Other i p A. They should say.
05:39
Okay, what is the applications name and how is it displayed to the user? Okay, well, I think we already looked at the application name. We know it's no icon,
05:46
but
05:47
these are just assumptions. Right?
05:50
Let's confirm that with by looking at the pl you to look at the P list and for that P lis, right? That's what we wanted to You look at the
06:01
Okay. So
06:06
the execute herbal is no icon. We know that. So let's go up
06:13
and look at some of the keys here.
06:16
Ha ha. Look at this.
06:19
The bundle display name is passbook,
06:25
so it looks like it may be installing itself as passbook even know the name of the application is no icon. And that kind of gives you a clue, right? No, icon.
06:41
It's definitely very interesting.
06:51
Look at this. So this bundle identify WR here is dot com wheeling, hidden icon launch and the status is hidden. So this is not even going to come up on our springboard when we launch it.
07:09
So the applications name is no one con. However,
07:14
the application
07:16
is not displayed to the user,
07:24
so those are definitely some interesting things that we could check out.
07:27
Okay. What type of Africa application is this?
07:30
Swift. Okay, So what? Basically, we're talking about what language is this in, right, What language is developed in? Well, this is pretty easy. We can use O'Toole for that. We could search the symbols. We could search the classes. We could search the library's. So let's start with the libraries.
07:46
O'Toole,
07:47
Dash l
07:50
Now I can
07:53
in grip for swift.
07:57
Okay, So doesn't make use of any swift libraries. Okay, so let's search the symbols now.
08:13
Okay, so no symbols.
08:15
Okay, so let's search classes now.
08:30
Okay.
08:33
No classes. So what kind of application is this? Probably objective C.
08:39
Objective C.
08:43
But we can go ahead and bare by that with other tools as well. Okay, so we really only scratched the surface of this application. You can go ahead and search classes, libraries, symbols, strings, lots of different things to search out the functionality of this program. So I definitely encourage you to go ahead offline. Do that.
09:01
And if you have any questions, feel free to ask me.
09:05
So in this lab, we took a look at the application. Malware Got I p A. And based on some of the findings, we have a general hypothesis that this application is gonna install in the user device. But it may be hidden. Has several domains that it may connect to two over the Internet. It also made download some other APS in some way.
09:22
So it's, um, next steps. We could use O'Toole and NM to dump the symbols and libraries of the program,
09:28
and we could look at the classes to confirm or reject our theories. Or lastly, we could use a tool like Hopper and begin to interpret the functions of the program.

Up Next

Mobile Malware Analysis Fundamentals

In the Mobile Malware Analysis Fundamentals course, participants will obtain the knowledge and skills to perform basic malware analysis on mobile devices. Participants will perform these tasks by learning and implementing tools and techniques while examining malicious programs.

Instructed By

Instructor Profile Image
Brian Rogalski
CEO of Hexcapes
Instructor