WEBVTT

1
00:00:00.000 --> 00:00:02.080
<v Speaker 1>All right, let's dive in. Today. We're taking a deep

2
00:00:02.200 --> 00:00:04.080
<v Speaker 1>dive into mobile app security.

3
00:00:04.320 --> 00:00:05.799
<v Speaker 2>Ooh sounds interesting.

4
00:00:06.160 --> 00:00:09.720
<v Speaker 1>Yeah, specifically for Android and iOS devices. You know, keeping

5
00:00:09.759 --> 00:00:11.640
<v Speaker 1>all that sensitive info on our phone.

6
00:00:11.480 --> 00:00:14.640
<v Speaker 2>Safe very important these days, right, And I've.

7
00:00:14.519 --> 00:00:18.079
<v Speaker 1>Been looking through these guides and technical documents. We have, oh.

8
00:00:17.719 --> 00:00:19.960
<v Speaker 2>Wow, some serious stuff it is.

9
00:00:20.000 --> 00:00:22.760
<v Speaker 1>I even came across a security testing tool called drozer

10
00:00:23.239 --> 00:00:23.839
<v Speaker 1>for Android.

11
00:00:24.039 --> 00:00:24.679
<v Speaker 2>Drozer.

12
00:00:24.879 --> 00:00:26.600
<v Speaker 1>Yeah sounds pretty intense, right, it.

13
00:00:26.519 --> 00:00:29.440
<v Speaker 2>Does definitely need an expert to break all that down.

14
00:00:29.440 --> 00:00:33.119
<v Speaker 1>Well, that's why you're here. So from this mountain of info,

15
00:00:33.359 --> 00:00:36.039
<v Speaker 1>what's the biggest thing our listeners should know about mobile

16
00:00:36.039 --> 00:00:37.359
<v Speaker 1>app security? Hmmmm?

17
00:00:37.840 --> 00:00:40.759
<v Speaker 2>The biggest thing, Well, I'd say it's that security isn't

18
00:00:40.799 --> 00:00:41.679
<v Speaker 2>just a one time thing.

19
00:00:41.719 --> 00:00:43.479
<v Speaker 1>Okay, not a set it and forget it kind of

20
00:00:43.479 --> 00:00:44.320
<v Speaker 1>deal exactly.

21
00:00:44.399 --> 00:00:48.119
<v Speaker 2>It's more like building a house, you know. I like

22
00:00:48.159 --> 00:00:51.000
<v Speaker 2>that you need a strong foundation, and then you got

23
00:00:51.039 --> 00:00:53.840
<v Speaker 2>to keep building those walls making sure everything inside is protected.

24
00:00:54.159 --> 00:00:57.000
<v Speaker 1>So like, what are the foundation and walls when it

25
00:00:57.039 --> 00:00:57.399
<v Speaker 1>comes to.

26
00:00:57.359 --> 00:01:00.920
<v Speaker 2>Our phones, Well, the operating systems Android iOS, those are

27
00:01:00.960 --> 00:01:02.759
<v Speaker 2>your foundation, makes sense.

28
00:01:02.600 --> 00:01:05.680
<v Speaker 1>They have built in security features. But then you need

29
00:01:05.920 --> 00:01:10.319
<v Speaker 1>strong walls, like strong passwords being careful about which apps

30
00:01:10.359 --> 00:01:11.760
<v Speaker 1>get what permissions right.

31
00:01:11.920 --> 00:01:13.719
<v Speaker 2>Those permissions can be tricky.

32
00:01:13.480 --> 00:01:16.599
<v Speaker 1>And understanding how apps use your data that's important too.

33
00:01:16.840 --> 00:01:19.640
<v Speaker 2>It's easy to forget our phones are mini computers packed

34
00:01:19.640 --> 00:01:21.680
<v Speaker 2>with sensitive information exactly.

35
00:01:21.840 --> 00:01:24.519
<v Speaker 1>Yeah, and that's why knowing the strengths and weaknesses of

36
00:01:24.560 --> 00:01:29.040
<v Speaker 1>each platform is crucial. So let's start with Android. Android

37
00:01:29.280 --> 00:01:32.079
<v Speaker 1>it's open source nature. It's great for customization.

38
00:01:32.319 --> 00:01:33.959
<v Speaker 2>Yeah, you can really personalize it.

39
00:01:34.040 --> 00:01:37.319
<v Speaker 1>But that flexibility well, can also create vulnerabilities.

40
00:01:37.439 --> 00:01:39.920
<v Speaker 2>So it's like hmm, having a house with lots of

41
00:01:39.920 --> 00:01:42.680
<v Speaker 2>doors and windows, more ways to come and go, but

42
00:01:42.760 --> 00:01:45.159
<v Speaker 2>also more entry points for trouble.

43
00:01:45.359 --> 00:01:48.159
<v Speaker 1>That's a good way to visualize it. Take rooting for example.

44
00:01:48.319 --> 00:01:51.079
<v Speaker 1>Rooting it gives you complete control of your Android device.

45
00:01:51.200 --> 00:01:55.519
<v Speaker 1>Sounds powerful it is, but it also removes safety barriers

46
00:01:55.519 --> 00:01:57.439
<v Speaker 1>that protect against malicious apps.

47
00:01:57.959 --> 00:02:01.480
<v Speaker 2>So even though Android has sandboxing to isolate apps, rooting

48
00:02:01.519 --> 00:02:02.799
<v Speaker 2>bypasses that exactly.

49
00:02:02.879 --> 00:02:05.079
<v Speaker 1>It's a trade off. And then there's how Android apps

50
00:02:05.120 --> 00:02:05.799
<v Speaker 1>talk to each other.

51
00:02:06.000 --> 00:02:09.560
<v Speaker 2>They talk to each other, yeah, through something called interprocess

52
00:02:09.599 --> 00:02:11.280
<v Speaker 2>communication or IPC.

53
00:02:11.520 --> 00:02:15.199
<v Speaker 1>IPC like a secret language. You could say that they

54
00:02:15.280 --> 00:02:17.520
<v Speaker 1>use it to share data and resources. But if it's

55
00:02:17.560 --> 00:02:21.120
<v Speaker 1>not implemented correctly, well, it creates vulnerabilities hackers can exploit.

56
00:02:21.400 --> 00:02:25.439
<v Speaker 2>Wow, I had no idea. So how do Android developers

57
00:02:25.479 --> 00:02:28.360
<v Speaker 2>make sure their apps are secure with all these potential risks?

58
00:02:28.560 --> 00:02:31.479
<v Speaker 1>Security testing is key. There are tools like Drozer.

59
00:02:31.759 --> 00:02:35.199
<v Speaker 2>Ah, Drozer are intense friend right.

60
00:02:35.599 --> 00:02:39.439
<v Speaker 1>It simulates attacks to find vulnerabilities before the bad guys

61
00:02:39.439 --> 00:02:40.159
<v Speaker 1>can exploit them.

62
00:02:40.240 --> 00:02:42.560
<v Speaker 2>So Drozer is like a security guard patrolling the app

63
00:02:42.599 --> 00:02:44.960
<v Speaker 2>for weak points. What kind of things does it find?

64
00:02:45.039 --> 00:02:48.520
<v Speaker 1>All sorts of things like insecure data storage?

65
00:02:48.719 --> 00:02:50.439
<v Speaker 2>In secure data storage.

66
00:02:50.520 --> 00:02:53.319
<v Speaker 1>Yeah, like if an app is storing passwords and plaintext,

67
00:02:53.400 --> 00:02:54.639
<v Speaker 1>that's a huge red flag.

68
00:02:54.759 --> 00:02:57.000
<v Speaker 2>Makes sense, like leaving your house keys under the mat.

69
00:02:57.039 --> 00:03:01.400
<v Speaker 1>Exactly and beyond Rozer. Understanding Android pro missions is vitle.

70
00:03:01.280 --> 00:03:03.639
<v Speaker 2>Right those pop ups asking if an app can access

71
00:03:03.639 --> 00:03:04.719
<v Speaker 2>your camera or location?

72
00:03:05.000 --> 00:03:07.840
<v Speaker 1>Yes, but just because an app asks doesn't mean you

73
00:03:07.879 --> 00:03:08.520
<v Speaker 1>have to say yes.

74
00:03:08.639 --> 00:03:13.960
<v Speaker 2>Good point. Always think does this app really need this access?

75
00:03:14.080 --> 00:03:16.599
<v Speaker 1>Like does a flashlight app need access to my contacts?

76
00:03:16.919 --> 00:03:21.960
<v Speaker 2>Probably not exactly, be mindful. So we've talked about Android's

77
00:03:21.960 --> 00:03:27.599
<v Speaker 2>potential issues, but what about iOS? Apples known for its security, right, absolutely,

78
00:03:27.840 --> 00:03:31.719
<v Speaker 2>iOS takes a much more locked down approach, very controlled.

79
00:03:31.840 --> 00:03:34.719
<v Speaker 1>So fewer doors and Windows tougher security checks.

80
00:03:34.800 --> 00:03:38.360
<v Speaker 2>Exactly. Apple vets apps before they're allowed in the App Store.

81
00:03:38.400 --> 00:03:41.479
<v Speaker 2>They use code signing. Code sign it ensures the app

82
00:03:41.520 --> 00:03:45.039
<v Speaker 2>hasn't been tampered with. Plus they have strict sandboxing to

83
00:03:45.159 --> 00:03:46.599
<v Speaker 2>limit what apps can access.

84
00:03:46.759 --> 00:03:49.159
<v Speaker 1>So Apple's like a super strict bouncer at a club.

85
00:03:49.240 --> 00:03:51.759
<v Speaker 2>Huh haha. That's one way to put it. But even

86
00:03:51.800 --> 00:03:54.199
<v Speaker 2>with these safeguards, no system is perfect, right.

87
00:03:54.240 --> 00:03:55.759
<v Speaker 1>There are always ways around things.

88
00:03:55.639 --> 00:03:56.560
<v Speaker 2>Like jail braking.

89
00:03:56.800 --> 00:03:58.000
<v Speaker 1>Jail braking I've heard of that.

90
00:03:58.039 --> 00:04:02.439
<v Speaker 2>It's like rooting on Android. Remove restrictions but also increases risk.

91
00:04:02.639 --> 00:04:05.199
<v Speaker 1>So you're picking the lock on that high security building,

92
00:04:05.280 --> 00:04:08.560
<v Speaker 1>gaining freedom, but also compromising the system exactly.

93
00:04:08.800 --> 00:04:11.479
<v Speaker 2>And developers they need to be just as careful about

94
00:04:11.520 --> 00:04:13.639
<v Speaker 2>security on iOS as they are an Android.

95
00:04:13.919 --> 00:04:17.600
<v Speaker 1>So no matter the platform, there are common security slip ups,

96
00:04:18.079 --> 00:04:19.639
<v Speaker 1>even for well meaning developers.

97
00:04:19.759 --> 00:04:23.879
<v Speaker 2>Definitely. One big one is improper platform usage.

98
00:04:24.120 --> 00:04:26.360
<v Speaker 1>Improper platform usage, Yeah.

99
00:04:26.120 --> 00:04:29.720
<v Speaker 2>It could be misusing platform features or failing to do

100
00:04:29.800 --> 00:04:34.399
<v Speaker 2>things like certificate validation when talking to servers.

101
00:04:34.399 --> 00:04:36.240
<v Speaker 1>Certificate validation was that it's like.

102
00:04:36.279 --> 00:04:38.800
<v Speaker 2>Checking someone's ID before you let them in your house.

103
00:04:39.279 --> 00:04:41.839
<v Speaker 2>When an app connects to a server, it should verify

104
00:04:41.879 --> 00:04:43.920
<v Speaker 2>that server's digital certificate to.

105
00:04:43.879 --> 00:04:46.480
<v Speaker 1>Make sure it's legit and not some imposter trying to

106
00:04:46.519 --> 00:04:48.279
<v Speaker 1>steal data exactly.

107
00:04:48.439 --> 00:04:53.680
<v Speaker 2>And another common issue is insecure authentication and authorization.

108
00:04:53.480 --> 00:04:55.959
<v Speaker 1>So weak passwords or leaky user sessions.

109
00:04:56.079 --> 00:04:58.839
<v Speaker 2>Yeah, developers need to build strong log in systems and

110
00:04:58.839 --> 00:05:01.680
<v Speaker 2>make sure user data is left vulnerable absolutely.

111
00:05:01.839 --> 00:05:04.600
<v Speaker 1>And then there's well just plain old bad code.

112
00:05:04.720 --> 00:05:07.959
<v Speaker 2>Ah. Yes, code quality is crucial. Poorly written code can

113
00:05:08.000 --> 00:05:09.279
<v Speaker 2>lead to reverse engineering.

114
00:05:09.399 --> 00:05:12.000
<v Speaker 1>Reverse engineering like taking part a clock to see how.

115
00:05:11.879 --> 00:05:15.519
<v Speaker 2>It works exactly. Hackers do this to find vulnerabilities.

116
00:05:14.879 --> 00:05:17.839
<v Speaker 1>So they're looking for weaknesses they can exploit, like finding

117
00:05:17.920 --> 00:05:19.839
<v Speaker 1>a flaw in a building's designed to break in.

118
00:05:20.079 --> 00:05:23.040
<v Speaker 2>You got it. Developers need to make their code tough

119
00:05:23.079 --> 00:05:24.120
<v Speaker 2>to reverse engineer.

120
00:05:24.279 --> 00:05:25.079
<v Speaker 1>How do they do that?

121
00:05:25.319 --> 00:05:29.399
<v Speaker 2>They can use obduscation, which scrambles the code, makes it

122
00:05:29.480 --> 00:05:29.879
<v Speaker 2>hard to.

123
00:05:29.879 --> 00:05:31.680
<v Speaker 1>Understand, like a secret code.

124
00:05:31.759 --> 00:05:35.240
<v Speaker 2>And this brings us back to static and dynamic analysis.

125
00:05:35.240 --> 00:05:39.240
<v Speaker 2>In security testing, developers need to examine their code a

126
00:05:39.439 --> 00:05:43.279
<v Speaker 2>and d observe how the app behaves in a safe environment.

127
00:05:43.079 --> 00:05:45.879
<v Speaker 1>So checking the blueprints, andy doing a test.

128
00:05:45.759 --> 00:05:49.399
<v Speaker 2>Run precisely, you got to catch those vulnerabilities from all angles.

129
00:05:49.639 --> 00:05:52.360
<v Speaker 1>Wow, mobile app security is more complex than I thought.

130
00:05:53.000 --> 00:05:55.519
<v Speaker 1>What surprised you the most while going through all this material?

131
00:05:55.839 --> 00:05:57.600
<v Speaker 2>You know, what really stood out to me was the

132
00:05:57.639 --> 00:05:59.959
<v Speaker 2>complexity of iOS data protection.

133
00:06:00.279 --> 00:06:02.160
<v Speaker 1>iOS data protection, Yeah.

134
00:06:01.959 --> 00:06:05.040
<v Speaker 2>It's not just about encryption. It's about different layers of

135
00:06:05.079 --> 00:06:08.040
<v Speaker 2>protection for different types of data, even if your device

136
00:06:08.079 --> 00:06:09.439
<v Speaker 2>gets lost, So like.

137
00:06:09.439 --> 00:06:12.639
<v Speaker 1>Having multiple locks on different rooms in your house, depending

138
00:06:12.639 --> 00:06:14.920
<v Speaker 1>on how valuable the stuff inside is exactly.

139
00:06:15.000 --> 00:06:16.680
<v Speaker 2>Apple really put a lot of thought into that.

140
00:06:16.720 --> 00:06:20.199
<v Speaker 1>It's impressive, it is. So with everything we've learned, what's

141
00:06:20.240 --> 00:06:23.279
<v Speaker 1>one thing our listeners should do right now to improve

142
00:06:23.319 --> 00:06:24.000
<v Speaker 1>their security?

143
00:06:24.199 --> 00:06:27.279
<v Speaker 2>Hmm, I'd say go check the permissions you've given your apps.

144
00:06:27.560 --> 00:06:30.959
<v Speaker 2>Are those apps actually using those permissions or are they

145
00:06:31.000 --> 00:06:33.199
<v Speaker 2>just sitting there potentially exploitable.

146
00:06:33.680 --> 00:06:35.759
<v Speaker 1>That's a great point. I'm definitely gonna be checking mine

147
00:06:35.800 --> 00:06:36.120
<v Speaker 1>after this.

148
00:06:36.319 --> 00:06:39.759
<v Speaker 2>You should. It's easy to just tap allow without thinking,

149
00:06:40.120 --> 00:06:41.560
<v Speaker 2>but those permissions are powerful.

150
00:06:41.759 --> 00:06:46.879
<v Speaker 1>So we've covered Android permissions, iOS data protection, But there's

151
00:06:46.879 --> 00:06:51.439
<v Speaker 1>one big topic we haven't really explored. Jail breaking and rooting.

152
00:06:52.560 --> 00:06:56.279
<v Speaker 2>Yes, the realm, where users take full control for better

153
00:06:56.360 --> 00:06:56.720
<v Speaker 2>or worse.

154
00:06:56.839 --> 00:06:58.920
<v Speaker 1>That sounds like a whole other deep dive, potentially a

155
00:06:58.959 --> 00:06:59.560
<v Speaker 1>dangerous one.

156
00:06:59.600 --> 00:07:01.319
<v Speaker 2>It definitely deserves its own conversation.

157
00:07:01.560 --> 00:07:02.920
<v Speaker 1>Sounds like we'll be back for part two.

158
00:07:03.000 --> 00:07:04.879
<v Speaker 2>Then I'd say that's a safe bet.

159
00:07:04.759 --> 00:07:06.759
<v Speaker 1>Until end listeners stay secure.

160
00:07:08.240 --> 00:07:10.920
<v Speaker 2>Welcome back to the deep dive. Last time, we were

161
00:07:10.920 --> 00:07:13.759
<v Speaker 2>talking about the basics of mobile app security, you know,

162
00:07:13.839 --> 00:07:16.240
<v Speaker 2>exploring the ins and outs of Android and iOS.

163
00:07:16.399 --> 00:07:19.800
<v Speaker 1>Yeah, we got pretty deep into the foundations.

164
00:07:19.160 --> 00:07:21.759
<v Speaker 2>We did, but we looking off on that cliffhanger jail

165
00:07:21.800 --> 00:07:22.639
<v Speaker 2>breaking and routing.

166
00:07:22.839 --> 00:07:26.399
<v Speaker 1>Ah, yes, where users kind of break free from those

167
00:07:26.519 --> 00:07:29.319
<v Speaker 1>Apple and Google restrictions. Yeah right, And I got admit,

168
00:07:29.360 --> 00:07:32.000
<v Speaker 1>I'm a little confused. It seems like wanting more control

169
00:07:32.160 --> 00:07:35.519
<v Speaker 1>but also maybe making your device less secure.

170
00:07:35.959 --> 00:07:38.920
<v Speaker 2>It is a trade off, that's for sure. So first

171
00:07:38.920 --> 00:07:41.079
<v Speaker 2>things first, what do those processes even mean?

172
00:07:41.879 --> 00:07:43.399
<v Speaker 1>Okay, back to basics.

173
00:07:43.160 --> 00:07:47.079
<v Speaker 2>Jail breaking on iOS and rooting on Android. They both

174
00:07:47.120 --> 00:07:51.160
<v Speaker 2>involve well, exploiting vulnerabilities in the operating system.

175
00:07:51.360 --> 00:07:55.680
<v Speaker 1>Exploiting vulnerabilities sounds a bit risky. To gain root access,

176
00:07:55.800 --> 00:07:59.399
<v Speaker 1>rude access. Okay, that sounds powerful but also kind of scary.

177
00:07:59.600 --> 00:08:01.519
<v Speaker 2>Yeah, it's the highest level of privilege you can have

178
00:08:01.560 --> 00:08:04.079
<v Speaker 2>on your device. Think of it like having the master

179
00:08:04.240 --> 00:08:07.079
<v Speaker 2>key that unlocks every single door in a building.

180
00:08:07.399 --> 00:08:09.560
<v Speaker 1>Whoa, Okay, now I get the power part right.

181
00:08:09.360 --> 00:08:11.279
<v Speaker 2>So what can you actually de with that power?

182
00:08:11.399 --> 00:08:12.319
<v Speaker 1>Yeah? What's the point?

183
00:08:12.439 --> 00:08:16.759
<v Speaker 2>Well, you can bypass app store restrictions install apps from anywhere.

184
00:08:16.480 --> 00:08:18.920
<v Speaker 1>You want, so no more Apple or Google saying what

185
00:08:19.000 --> 00:08:20.680
<v Speaker 1>I can and can't download exactly.

186
00:08:20.759 --> 00:08:23.120
<v Speaker 2>You can customize the look and feel of your device

187
00:08:23.199 --> 00:08:23.639
<v Speaker 2>way more.

188
00:08:23.759 --> 00:08:25.360
<v Speaker 1>Ooh, I like customization, and.

189
00:08:25.360 --> 00:08:27.480
<v Speaker 2>You can even tweak how the system itself works, like

190
00:08:27.519 --> 00:08:29.519
<v Speaker 2>battery management or network settings.

191
00:08:29.759 --> 00:08:31.759
<v Speaker 1>So you're basically taking off the training wheels and saying

192
00:08:31.800 --> 00:08:34.000
<v Speaker 1>I'm in control now. Uh huh.

193
00:08:34.120 --> 00:08:36.759
<v Speaker 2>Yeah, that's a good way to put it. But remember

194
00:08:36.799 --> 00:08:40.080
<v Speaker 2>taking off those training wheels also removes some of the safety.

195
00:08:39.679 --> 00:08:42.000
<v Speaker 1>Measures, right the trade off? So what are the risks

196
00:08:42.879 --> 00:08:44.720
<v Speaker 1>like specifically.

197
00:08:44.120 --> 00:08:47.440
<v Speaker 2>Well, one big one is malware. You're opening yourself up

198
00:08:47.480 --> 00:08:51.440
<v Speaker 2>to apps from well less reputable sources, makes sense.

199
00:08:51.440 --> 00:08:53.799
<v Speaker 1>If you're not getting apps from the official stores, who

200
00:08:53.879 --> 00:08:55.600
<v Speaker 1>knows what you're downloading.

201
00:08:55.320 --> 00:08:57.720
<v Speaker 2>Right, and those apps might not have gone through any

202
00:08:57.720 --> 00:09:01.080
<v Speaker 2>security checks. You could end up with anything from annoying

203
00:09:01.159 --> 00:09:05.080
<v Speaker 2>adwear to nasty spyware stealing your data.

204
00:09:05.399 --> 00:09:07.279
<v Speaker 1>Yikes. Okay, that's definitely a.

205
00:09:07.320 --> 00:09:10.200
<v Speaker 2>Risk, and jail breaking or rooting can also make your

206
00:09:10.240 --> 00:09:13.879
<v Speaker 2>device more vulnerable to data breaches. Remember all those security

207
00:09:13.919 --> 00:09:17.720
<v Speaker 2>mechanisms we talked about before, sandboxing, code signing.

208
00:09:17.480 --> 00:09:18.639
<v Speaker 1>Yeah, those sounded pretty important.

209
00:09:18.720 --> 00:09:22.200
<v Speaker 2>Well, those safeguards are basically weakened, sometimes even totally bypassed

210
00:09:22.279 --> 00:09:23.840
<v Speaker 2>when you have root access.

211
00:09:23.919 --> 00:09:27.320
<v Speaker 1>So it's like a disabling the alarm system on your house. Yeah,

212
00:09:27.480 --> 00:09:30.440
<v Speaker 1>makes things easier, but also leaves you wide open to burglars.

213
00:09:30.879 --> 00:09:34.240
<v Speaker 2>Exactly. An attacker if they get root access, they can

214
00:09:34.279 --> 00:09:39.320
<v Speaker 2>potentially see everything on your device, passwords, financial info, photos,

215
00:09:39.519 --> 00:09:40.279
<v Speaker 2>the whole shebang.

216
00:09:40.600 --> 00:09:44.080
<v Speaker 1>Okay, I am officially rethinking those jail break your iPhone

217
00:09:44.120 --> 00:09:45.159
<v Speaker 1>videos I've seen online.

218
00:09:45.240 --> 00:09:48.240
<v Speaker 2>Aha, good call, But to be fair, some people do

219
00:09:48.559 --> 00:09:51.000
<v Speaker 2>jail break or root their phones for privacy reasons.

220
00:09:51.039 --> 00:09:52.360
<v Speaker 1>Oh really, how does that work?

221
00:09:52.679 --> 00:09:56.120
<v Speaker 2>There are some privacy focused apps and tweaks you can

222
00:09:56.159 --> 00:09:58.559
<v Speaker 2>only get on a jail broken or rooted device.

223
00:09:59.279 --> 00:10:02.480
<v Speaker 1>So like blocking trackers or having more control over those

224
00:10:02.519 --> 00:10:03.759
<v Speaker 1>app permissions we talked.

225
00:10:03.600 --> 00:10:06.399
<v Speaker 2>About, exactly, it's like building a higher fence around your

226
00:10:06.440 --> 00:10:08.320
<v Speaker 2>property to keep those prying eyes out.

227
00:10:08.399 --> 00:10:11.600
<v Speaker 1>Okay, I see the appeal, but those fences can have

228
00:10:11.600 --> 00:10:14.480
<v Speaker 1>weak spots, right, given all those other risks, you got it.

229
00:10:14.480 --> 00:10:16.720
<v Speaker 2>It's all about weighing the benefits against the risks. And

230
00:10:16.759 --> 00:10:18.759
<v Speaker 2>if you do decide to go down that road, you

231
00:10:18.840 --> 00:10:21.159
<v Speaker 2>got to be extra vigilant about security.

232
00:10:21.240 --> 00:10:24.159
<v Speaker 1>Okay, good advice. So let's say someone's already jail broken

233
00:10:24.320 --> 00:10:27.799
<v Speaker 1>or rooted their device. What can they do to stay safe?

234
00:10:27.960 --> 00:10:31.000
<v Speaker 2>Well, first and foremost, be super careful about the apps

235
00:10:31.000 --> 00:10:34.480
<v Speaker 2>you install. Stick to trusted developers and sources.

236
00:10:34.320 --> 00:10:36.799
<v Speaker 1>So do your research, read reviews, that sort.

237
00:10:36.600 --> 00:10:40.759
<v Speaker 2>Of thing, exactly. Remember, an app can look harmless but

238
00:10:40.840 --> 00:10:43.159
<v Speaker 2>actually be full of malicious code.

239
00:10:43.519 --> 00:10:46.159
<v Speaker 1>So it's like being careful about what you eat from

240
00:10:46.200 --> 00:10:47.960
<v Speaker 1>a street vendor. You want to go to the one

241
00:10:48.000 --> 00:10:50.600
<v Speaker 1>with a good reputation, not the one that might give

242
00:10:50.600 --> 00:10:51.519
<v Speaker 1>you food poisoning.

243
00:10:51.879 --> 00:10:55.159
<v Speaker 2>Perfect analogy. And just like you wouldn't eat expired food,

244
00:10:55.559 --> 00:10:57.840
<v Speaker 2>keep your device and all your apps up to date

245
00:10:57.840 --> 00:10:59.360
<v Speaker 2>with the latest security patches.

246
00:11:00.000 --> 00:11:02.679
<v Speaker 1>Even if I'm being careful about what I install, new

247
00:11:02.759 --> 00:11:05.200
<v Speaker 1>vulnerabilities pop up all the time.

248
00:11:05.039 --> 00:11:07.720
<v Speaker 2>All the time. Those patches are like fixing those weak

249
00:11:07.759 --> 00:11:09.600
<v Speaker 2>spots in your fence as soon as they appear.

250
00:11:09.720 --> 00:11:11.679
<v Speaker 1>Okay, So it's not just a one time thing, it's

251
00:11:11.679 --> 00:11:13.600
<v Speaker 1>an ongoing process exactly.

252
00:11:13.879 --> 00:11:18.440
<v Speaker 2>And of course, strong unique passwords are crucial especially on

253
00:11:18.480 --> 00:11:21.799
<v Speaker 2>a jail broken or rooted device, and turn on two

254
00:11:21.879 --> 00:11:23.799
<v Speaker 2>factor authentication everywhere you can.

255
00:11:23.960 --> 00:11:26.000
<v Speaker 1>Two factor authentication. That's why they send you a code

256
00:11:26.000 --> 00:11:26.919
<v Speaker 1>to your phone or email.

257
00:11:27.039 --> 00:11:30.000
<v Speaker 2>Right, yep, adds an extra layer of security it And.

258
00:11:29.960 --> 00:11:31.279
<v Speaker 1>What about those app permissions?

259
00:11:31.679 --> 00:11:35.360
<v Speaker 2>Still super important? Be picky about what you allow. Remember

260
00:11:35.480 --> 00:11:38.720
<v Speaker 2>you're giving those apps keys to your house. Don't give

261
00:11:38.799 --> 00:11:40.240
<v Speaker 2>keys to someone you don't trust.

262
00:11:40.720 --> 00:11:45.039
<v Speaker 1>Good point. Even with apps ideo trust I should limit

263
00:11:45.080 --> 00:11:47.679
<v Speaker 1>their access to only what they absolutely need.

264
00:11:48.039 --> 00:11:50.399
<v Speaker 2>Right. The less access they have, the less damage they

265
00:11:50.399 --> 00:11:52.279
<v Speaker 2>can do if something goes wrong.

266
00:11:52.559 --> 00:11:54.679
<v Speaker 1>Okay, this is all making a lot more sense now,

267
00:11:55.120 --> 00:11:57.720
<v Speaker 1>But we've talked a lot about apps, operating systems all that.

268
00:11:58.240 --> 00:12:01.799
<v Speaker 1>What about the network itself? Our phones are always connecting

269
00:12:01.799 --> 00:12:02.279
<v Speaker 1>to something.

270
00:12:02.440 --> 00:12:07.639
<v Speaker 2>Ah, yes, the network. Secure network communication is super important,

271
00:12:07.919 --> 00:12:10.799
<v Speaker 2>especially when you're using public Wi Fi or sending sensitive

272
00:12:10.840 --> 00:12:12.159
<v Speaker 2>information because.

273
00:12:11.840 --> 00:12:14.039
<v Speaker 1>Public Wi Fi is like having a conversation in a

274
00:12:14.039 --> 00:12:14.919
<v Speaker 1>crowded room.

275
00:12:15.039 --> 00:12:17.960
<v Speaker 2>Anyone could be listening exactly, So how do we make

276
00:12:18.000 --> 00:12:21.600
<v Speaker 2>sure those conversations stay private? Well, that's where HDTPS comes in.

277
00:12:21.879 --> 00:12:24.320
<v Speaker 1>HTTPS. I've seen that little s at the end of

278
00:12:24.360 --> 00:12:26.480
<v Speaker 1>website addresses, But what does it actually do?

279
00:12:27.159 --> 00:12:29.600
<v Speaker 2>It encrypts. The data that's being sent between your device

280
00:12:29.600 --> 00:12:31.679
<v Speaker 2>and the website server encrypts.

281
00:12:31.480 --> 00:12:34.679
<v Speaker 1>So like making it unreadable to anyone who's trying to snoop.

282
00:12:34.919 --> 00:12:38.039
<v Speaker 2>Precisely, it's like sending a secret message into code that

283
00:12:38.200 --> 00:12:40.320
<v Speaker 2>only the intended recipient can decipher.

284
00:12:40.399 --> 00:12:42.759
<v Speaker 1>Okay, that makes sense, But how do I know if

285
00:12:42.799 --> 00:12:45.279
<v Speaker 1>a website is using HTTPS?

286
00:12:45.639 --> 00:12:48.759
<v Speaker 2>Look for that HTTPS at the beginning of the web address,

287
00:12:49.000 --> 00:12:51.320
<v Speaker 2>and also keep an eye out for a little padlock

288
00:12:51.639 --> 00:12:53.600
<v Speaker 2>icon in your browser's address bar.

289
00:12:53.759 --> 00:12:56.440
<v Speaker 1>Oh right, I've seen that padlock before. So those are

290
00:12:56.480 --> 00:13:00.159
<v Speaker 1>like a seal of approval saying this connection is secure exactly.

291
00:13:00.440 --> 00:13:02.799
<v Speaker 2>And when you're using apps, pay close attention to any

292
00:13:02.799 --> 00:13:04.600
<v Speaker 2>security warnings or messages that.

293
00:13:04.519 --> 00:13:06.840
<v Speaker 1>Pop up, because those are usually trying to tell me

294
00:13:06.879 --> 00:13:09.440
<v Speaker 1>something important, like if an app is trying to connect

295
00:13:09.440 --> 00:13:10.240
<v Speaker 1>to a shady server.

296
00:13:10.279 --> 00:13:13.000
<v Speaker 2>You got it. It's always better to be safe than sorry.

297
00:13:13.159 --> 00:13:17.399
<v Speaker 2>Avoid sending sensitive info over unsecured connections whenever possible.

298
00:13:17.559 --> 00:13:20.679
<v Speaker 1>Okay, I'm definitely going to be more mindful of HTTPS

299
00:13:20.679 --> 00:13:22.120
<v Speaker 1>and those warnings from now on. Good.

300
00:13:22.240 --> 00:13:24.519
<v Speaker 2>It's all about those little things adding up to a

301
00:13:24.559 --> 00:13:25.759
<v Speaker 2>more secure experience.

302
00:13:26.039 --> 00:13:29.320
<v Speaker 1>Definitely. This whole deep dive has really been eye opening.

303
00:13:29.320 --> 00:13:32.360
<v Speaker 1>There are so many layers to security there are.

304
00:13:32.639 --> 00:13:35.519
<v Speaker 2>It's not just one thing. It's about understanding all the

305
00:13:35.559 --> 00:13:38.759
<v Speaker 2>different pieces and how they work together to keep your data.

306
00:13:38.519 --> 00:13:45.279
<v Speaker 1>Safe, secure, communication, operating systems, apps, user behavior, the device itself.

307
00:13:46.039 --> 00:13:48.759
<v Speaker 1>Anything we missed hmmm, well.

308
00:13:48.600 --> 00:13:50.559
<v Speaker 2>We touched on it briefly, but we could probably dive

309
00:13:50.600 --> 00:13:52.240
<v Speaker 2>a little deeper into reverse engineering.

310
00:13:52.519 --> 00:13:55.039
<v Speaker 1>Oh yeah, you mentioned that before. It's where someone tries

311
00:13:55.080 --> 00:13:57.480
<v Speaker 1>to take apart an app to see how it works. Yeah,

312
00:13:57.519 --> 00:14:01.360
<v Speaker 1>like taking apart a clock to see all the gears precisely.

313
00:14:01.559 --> 00:14:04.919
<v Speaker 2>Now, that can be interesting for say a hobbyist, but

314
00:14:05.120 --> 00:14:06.600
<v Speaker 2>how does it relate to security?

315
00:14:06.840 --> 00:14:07.879
<v Speaker 1>Yeah, that's what I'm wondering.

316
00:14:08.039 --> 00:14:11.440
<v Speaker 2>Well. While reverse engineering can be used for legitimate purposes

317
00:14:11.559 --> 00:14:14.759
<v Speaker 2>like understanding a competitor's product, attackers can use it to

318
00:14:14.799 --> 00:14:15.879
<v Speaker 2>find vulnerabilities.

319
00:14:16.120 --> 00:14:19.039
<v Speaker 1>Ah, so they're basically looking for weaknesses in the app's

320
00:14:19.039 --> 00:14:20.240
<v Speaker 1>code that they can exploit.

321
00:14:20.480 --> 00:14:24.240
<v Speaker 2>Exactly by understanding how the app works internally, they can

322
00:14:24.279 --> 00:14:27.720
<v Speaker 2>find those potential points of failure, those security flaws.

323
00:14:28.120 --> 00:14:31.039
<v Speaker 1>It sounds pretty advanced. Do attackers actually do this with

324
00:14:31.159 --> 00:14:32.200
<v Speaker 1>mobile apps.

325
00:14:32.480 --> 00:14:35.120
<v Speaker 2>More often than you might think. It's a common tactic

326
00:14:35.120 --> 00:14:38.840
<v Speaker 2>for finding vulnerabilities they can use to steal data bypass security,

327
00:14:38.960 --> 00:14:40.519
<v Speaker 2>or even take control of a device.

328
00:14:40.919 --> 00:14:43.720
<v Speaker 1>So it's like finding the blueprint to a building and

329
00:14:43.759 --> 00:14:45.960
<v Speaker 1>then looking for weak spots in the design that you

330
00:14:46.000 --> 00:14:47.159
<v Speaker 1>can exploit to break in.

331
00:14:47.399 --> 00:14:50.399
<v Speaker 2>Exactly. Once they have that blueprint, they can start looking

332
00:14:50.399 --> 00:14:53.200
<v Speaker 2>for ways to pick the locks, disable the alarms, find

333
00:14:53.240 --> 00:14:54.200
<v Speaker 2>other ways to get in.

334
00:14:54.360 --> 00:14:57.200
<v Speaker 1>Okay, this is getting a little creepy. Is there anything

335
00:14:57.240 --> 00:15:00.639
<v Speaker 1>developers can do to protect their apps from this kind

336
00:15:00.639 --> 00:15:02.240
<v Speaker 1>of reverse engineering?

337
00:15:02.440 --> 00:15:05.600
<v Speaker 2>Absolutely? There are a bunch of techniques they can use

338
00:15:05.639 --> 00:15:08.799
<v Speaker 2>to make it much harder for attackers to analyze their code,

339
00:15:09.039 --> 00:15:13.000
<v Speaker 2>like what one common one is called code obfuscation. It's

340
00:15:13.039 --> 00:15:17.720
<v Speaker 2>basically like scrambling that blueprint, making it way harder to understand, So.

341
00:15:17.679 --> 00:15:20.519
<v Speaker 1>It's like writing a secret message in code that only

342
00:15:20.559 --> 00:15:23.360
<v Speaker 1>the intended recipient can understand precisely.

343
00:15:23.879 --> 00:15:27.120
<v Speaker 2>Obfuscation makes the code super complex and difficult to read.

344
00:15:27.639 --> 00:15:30.360
<v Speaker 2>That can deter attackers or at least slow them down

345
00:15:30.360 --> 00:15:30.720
<v Speaker 2>a lot.

346
00:15:30.799 --> 00:15:33.200
<v Speaker 1>So it's not impossible to reverse engineer, but it makes

347
00:15:33.240 --> 00:15:36.360
<v Speaker 1>it a lot harder. What else can developers do well?

348
00:15:36.440 --> 00:15:39.240
<v Speaker 2>They can use anti debugging measures. Those make it tough

349
00:15:39.279 --> 00:15:42.440
<v Speaker 2>for attackers to use specialized tools to analyze the app's

350
00:15:42.440 --> 00:15:43.240
<v Speaker 2>code while.

351
00:15:43.000 --> 00:15:45.559
<v Speaker 1>It's running, So it's like setting traps in a building

352
00:15:45.600 --> 00:15:47.360
<v Speaker 1>to catch anyone who's trying to sneak in and.

353
00:15:47.279 --> 00:15:50.679
<v Speaker 2>Study the layout exactly. And they can also use encryption

354
00:15:50.840 --> 00:15:54.120
<v Speaker 2>to protect sensitive parts of the code, or even employ

355
00:15:54.240 --> 00:15:57.440
<v Speaker 2>runtime integrity checks to see if the app's been tampered with.

356
00:15:57.919 --> 00:16:00.200
<v Speaker 1>So it's like having multiple layers of security for.

357
00:16:00.159 --> 00:16:03.519
<v Speaker 2>Your code exactly. It's all about making the app as

358
00:16:03.639 --> 00:16:08.000
<v Speaker 2>difficult as possible to reverse engineer, protecting users and their data.

359
00:16:08.879 --> 00:16:11.360
<v Speaker 1>This is fascinating. It's like a constant cat and mouse

360
00:16:11.399 --> 00:16:15.399
<v Speaker 1>game between developers trying to build secure apps and attackers

361
00:16:15.440 --> 00:16:16.200
<v Speaker 1>trying to break them.

362
00:16:16.440 --> 00:16:19.279
<v Speaker 2>You got it. It's an ongoing challenge. Staying ahead of

363
00:16:19.320 --> 00:16:22.879
<v Speaker 2>the curve requires vigilance and innovation from both sides.

364
00:16:22.639 --> 00:16:24.360
<v Speaker 1>And users have a role to play too, right.

365
00:16:24.480 --> 00:16:27.039
<v Speaker 2>Absolutely, users need to be aware of the risks, make

366
00:16:27.080 --> 00:16:30.000
<v Speaker 2>smart choices about the apps they install, and practice good

367
00:16:30.039 --> 00:16:34.679
<v Speaker 2>digital hygiene, strong passwords, being careful with permissions, all that

368
00:16:34.759 --> 00:16:35.919
<v Speaker 2>good stuff, right.

369
00:16:35.759 --> 00:16:38.679
<v Speaker 1>Because even the most secure app can be compromised if

370
00:16:38.679 --> 00:16:41.000
<v Speaker 1>the user isn't careful or aware of the dangers.

371
00:16:41.120 --> 00:16:46.000
<v Speaker 2>Exactly. It's a shared responsibility between developers, security pros and users.

372
00:16:46.399 --> 00:16:49.519
<v Speaker 1>Well said, Okay, so we've covered a ton of ground

373
00:16:50.000 --> 00:16:56.480
<v Speaker 1>secure communication, operating systems, apps, user behavior, reverse engineering. Anything

374
00:16:56.519 --> 00:16:59.080
<v Speaker 1>we missed, anything else our listeners should know.

375
00:17:00.039 --> 00:17:02.679
<v Speaker 2>Hm, Well, we've talked about security testing in general, but

376
00:17:02.720 --> 00:17:04.440
<v Speaker 2>we haven't really dug into the specifics.

377
00:17:04.519 --> 00:17:08.279
<v Speaker 1>Oh right, the actual tools and techniques that security professionals

378
00:17:08.359 --> 00:17:09.720
<v Speaker 1>use to find vulnerabilities.

379
00:17:09.880 --> 00:17:11.680
<v Speaker 2>Yeah, that's a whole other world.

380
00:17:11.599 --> 00:17:12.759
<v Speaker 1>The world we need to explore.

381
00:17:12.799 --> 00:17:14.599
<v Speaker 2>It sounds like definitely worth a deep dive.

382
00:17:14.759 --> 00:17:16.640
<v Speaker 1>Well, sounds like we'll be back for part three. Then

383
00:17:16.799 --> 00:17:19.559
<v Speaker 1>stay tuned, listeners. Oh all right, welcome back to the

384
00:17:19.599 --> 00:17:21.640
<v Speaker 1>deep dive. We've been through a lot, haven't we.

385
00:17:21.640 --> 00:17:27.640
<v Speaker 2>We have android iOS, jail breaking, rooting, even how attackers

386
00:17:27.680 --> 00:17:29.440
<v Speaker 2>try to break into apps.

387
00:17:29.559 --> 00:17:32.400
<v Speaker 1>It's been a wild ride. But now I'm really curious

388
00:17:32.400 --> 00:17:36.079
<v Speaker 1>about how the good guys, the security experts, actually find

389
00:17:36.119 --> 00:17:38.160
<v Speaker 1>those vulnerabilities before the bad guys do.

390
00:17:38.359 --> 00:17:41.440
<v Speaker 2>Ah. Yes, it's like being a detective, you know, but

391
00:17:41.480 --> 00:17:44.119
<v Speaker 2>instead of solving crimes, we're trying to prevent them.

392
00:17:44.440 --> 00:17:47.240
<v Speaker 1>I like that mobile ab security detectives. So what kind

393
00:17:47.240 --> 00:17:50.200
<v Speaker 1>of tools do these detectives use? What's in their arsenal?

394
00:17:50.440 --> 00:17:52.480
<v Speaker 2>Well, we've got a lot of different approaches, but two

395
00:17:52.519 --> 00:17:56.200
<v Speaker 2>of the most common are static analysis and dynamic analysis.

396
00:17:56.480 --> 00:17:58.799
<v Speaker 1>Static and dynamic those sound familiar.

397
00:17:58.920 --> 00:18:01.680
<v Speaker 2>Yeah, we touched on them briefly in Part one, remember.

398
00:18:01.359 --> 00:18:05.079
<v Speaker 1>Right, right, But a little refresher wouldn't hurt.

399
00:18:05.240 --> 00:18:09.960
<v Speaker 2>Sure. Static analysis is like h examining a blueprint before

400
00:18:10.000 --> 00:18:11.200
<v Speaker 2>you actually build a house.

401
00:18:11.440 --> 00:18:12.319
<v Speaker 1>Okay, I'm listening.

402
00:18:12.359 --> 00:18:15.640
<v Speaker 2>We analyze the app source code without actually running it.

403
00:18:15.960 --> 00:18:19.200
<v Speaker 2>We're looking for any weaknesses in the design, flaws that

404
00:18:19.240 --> 00:18:20.720
<v Speaker 2>could cause problems later on.

405
00:18:20.960 --> 00:18:23.200
<v Speaker 1>So it's like a code inspection, looking for anything that

406
00:18:23.240 --> 00:18:25.559
<v Speaker 1>seems off or risky exactly.

407
00:18:25.640 --> 00:18:30.640
<v Speaker 2>We're looking for things like, hmm, insecure coding practices, logical errors,

408
00:18:31.079 --> 00:18:33.240
<v Speaker 2>you know, those kind of things that attackers could exploit.

409
00:18:33.400 --> 00:18:36.920
<v Speaker 1>Okay, that makes sense. And dynamic analysis, how's that different?

410
00:18:37.240 --> 00:18:40.480
<v Speaker 2>Dynamic analysis is more like observing the house after it's built,

411
00:18:40.880 --> 00:18:43.359
<v Speaker 2>seeing how people are using it, looking for any signs

412
00:18:43.400 --> 00:18:43.920
<v Speaker 2>of trouble.

413
00:18:44.039 --> 00:18:45.319
<v Speaker 1>Okay, I see where you're going with this.

414
00:18:45.480 --> 00:18:47.960
<v Speaker 2>We actually run the app in a controlled environment and

415
00:18:48.079 --> 00:18:52.200
<v Speaker 2>monitor its behavior, looking for any suspicious activity, any signs

416
00:18:52.200 --> 00:18:53.160
<v Speaker 2>of a security breach.

417
00:18:53.480 --> 00:18:56.319
<v Speaker 1>So it's like stress testing the app, pushing it to

418
00:18:56.359 --> 00:18:58.440
<v Speaker 1>its limits to see if anything breaks Haha.

419
00:18:58.680 --> 00:19:00.640
<v Speaker 2>That's a great way to put it. We're looking for

420
00:19:00.680 --> 00:19:05.200
<v Speaker 2>things like memory leaks, buffer overflows, vulnerabilities that might not

421
00:19:05.279 --> 00:19:07.680
<v Speaker 2>be obvious just by looking at the code.

422
00:19:07.839 --> 00:19:10.839
<v Speaker 1>So static is like checking the blueprints, dynamic is like

423
00:19:10.880 --> 00:19:12.319
<v Speaker 1>watching the house in action.

424
00:19:12.519 --> 00:19:15.440
<v Speaker 2>Exactly, and by combining both we get a much more

425
00:19:15.480 --> 00:19:18.799
<v Speaker 2>complete picture of the apps. Security makes sense.

426
00:19:19.279 --> 00:19:22.240
<v Speaker 1>Now are there specific tools you guys use for all this?

427
00:19:22.400 --> 00:19:25.599
<v Speaker 2>Oh? Yeah, tons. Some are designed for specific platforms, some

428
00:19:25.640 --> 00:19:29.319
<v Speaker 2>are more general purpose. You've got commercial tools, open source tools.

429
00:19:29.359 --> 00:19:30.359
<v Speaker 2>It's a whole world.

430
00:19:30.720 --> 00:19:32.880
<v Speaker 1>I bet can you give some examples, like what are

431
00:19:32.920 --> 00:19:34.039
<v Speaker 1>these tools actually do?

432
00:19:34.640 --> 00:19:38.559
<v Speaker 2>Sure? For static analysis, there are tools like Sonarcube and

433
00:19:38.680 --> 00:19:42.319
<v Speaker 2>check marks. They scan the code for potential vulnerabilities, like.

434
00:19:42.240 --> 00:19:44.920
<v Speaker 1>Those automated grammar checkers that find mistakes in your writing,

435
00:19:45.160 --> 00:19:45.759
<v Speaker 1>kind of like that.

436
00:19:46.240 --> 00:19:51.039
<v Speaker 2>They highlight things like SQL injection flaws, cross sites, scripting vulnerabilities,

437
00:19:51.359 --> 00:19:53.039
<v Speaker 2>all those common security weaknesses.

438
00:19:53.079 --> 00:19:55.720
<v Speaker 1>So they're like little robot code detectives sniffing out anything

439
00:19:55.759 --> 00:19:56.680
<v Speaker 1>that looks suspicious.

440
00:19:56.920 --> 00:20:00.160
<v Speaker 2>H huh exactly. They can analyze thousands of lines of

441
00:20:00.200 --> 00:20:04.000
<v Speaker 2>code in minutes, finding stuff that human reviewers might miss.

442
00:20:04.119 --> 00:20:07.720
<v Speaker 1>That's amazing. What about dynamic analysis tools? Any cool ones there.

443
00:20:07.799 --> 00:20:10.440
<v Speaker 2>Oh, yeah, for sure. We use tools like burp Suite

444
00:20:10.839 --> 00:20:14.960
<v Speaker 2>and oas bas t they act as proxies, basically intercepting

445
00:20:15.000 --> 00:20:16.559
<v Speaker 2>traffic between the app and the server.

446
00:20:16.839 --> 00:20:20.119
<v Speaker 1>Intercepting traffic like spying on the app's conversations.

447
00:20:20.240 --> 00:20:24.559
<v Speaker 2>Huhuh kinda. We can analyze that communication look for anything fishy, so.

448
00:20:24.640 --> 00:20:27.960
<v Speaker 1>Like if the app is leaking sensitive information exactly.

449
00:20:28.000 --> 00:20:32.839
<v Speaker 2>We can test for insecure data transmission, authentication bypasses, you know,

450
00:20:32.920 --> 00:20:35.240
<v Speaker 2>things that happen while the app is actually running.

451
00:20:35.440 --> 00:20:37.440
<v Speaker 1>This is fascinating. It's like you guys have all these

452
00:20:37.440 --> 00:20:40.319
<v Speaker 1>secret weapons to catch those hit or vulnerabilities, you.

453
00:20:40.240 --> 00:20:43.839
<v Speaker 2>Could say that. And on top of static and dynamic analysis,

454
00:20:43.839 --> 00:20:47.119
<v Speaker 2>we also use something called penetration testing or pen testing.

455
00:20:47.240 --> 00:20:49.720
<v Speaker 1>Penetration testing. That sounds kind of scary.

456
00:20:49.480 --> 00:20:51.799
<v Speaker 2>It is, but it's a good kind of scary. It's

457
00:20:51.839 --> 00:20:53.400
<v Speaker 2>basically like ethical hacking.

458
00:20:53.440 --> 00:20:54.240
<v Speaker 1>Ethical hacking.

459
00:20:54.319 --> 00:20:57.440
<v Speaker 2>Yeah, so like hacking for good exactly. We try to

460
00:20:57.480 --> 00:21:00.319
<v Speaker 2>attack the app like a real attacker would, use all

461
00:21:00.319 --> 00:21:03.000
<v Speaker 2>the tools and techniques at our disposal to see if you.

462
00:21:02.920 --> 00:21:05.079
<v Speaker 1>Can find any weaknesses that you might have missed with

463
00:21:05.119 --> 00:21:06.000
<v Speaker 1>the other methods.

464
00:21:06.400 --> 00:21:10.839
<v Speaker 2>Yep. We try to exploit known vulnerabilities, find new ones

465
00:21:11.240 --> 00:21:13.839
<v Speaker 2>really put the apps security to the test, so.

466
00:21:13.799 --> 00:21:16.640
<v Speaker 1>It's like a real world combat simulation, seeing how well

467
00:21:16.680 --> 00:21:19.440
<v Speaker 1>the app holds up against a real attacker exactly.

468
00:21:19.599 --> 00:21:23.599
<v Speaker 2>It's crucial for finding and fixing those vulnerabilities before the

469
00:21:23.640 --> 00:21:24.920
<v Speaker 2>bad guys can exploit them.

470
00:21:25.000 --> 00:21:27.680
<v Speaker 1>It sounds like pen testing is especially important these days

471
00:21:27.880 --> 00:21:30.000
<v Speaker 1>with all the sophisticated cyber attacks happening.

472
00:21:30.039 --> 00:21:32.400
<v Speaker 2>It is it helps keep users safe, which is what

473
00:21:32.440 --> 00:21:33.839
<v Speaker 2>it's all about at the end of the day.

474
00:21:33.960 --> 00:21:37.319
<v Speaker 1>Absolutely, wow, this has been a truly incredible deep dive.

475
00:21:37.359 --> 00:21:39.720
<v Speaker 1>I'm really impressed by all the work that goes into

476
00:21:40.039 --> 00:21:41.359
<v Speaker 1>keeping our apps secure.

477
00:21:41.759 --> 00:21:45.319
<v Speaker 2>It's definitely a team effort, developers, security professionals, users, we

478
00:21:45.359 --> 00:21:46.359
<v Speaker 2>all have a part to play.

479
00:21:46.440 --> 00:21:50.359
<v Speaker 1>Well said, and to our listeners, stay vigilant, stay informed,

480
00:21:50.559 --> 00:21:51.799
<v Speaker 1>and stay secure out there.
