WEBVTT

1
00:00:00.120 --> 00:00:03.520
<v Speaker 1>Welcome curious minds to the deep dive. Have you ever

2
00:00:03.600 --> 00:00:07.799
<v Speaker 1>paused to consider the silent, relentless battle unfolding every second

3
00:00:07.839 --> 00:00:08.800
<v Speaker 1>in our digital world?

4
00:00:09.320 --> 00:00:12.000
<v Speaker 2>It's a high stakes game. Really, How do the.

5
00:00:11.960 --> 00:00:14.519
<v Speaker 1>Bad actors, the digital adversaries, how do they manage to

6
00:00:14.519 --> 00:00:18.120
<v Speaker 1>slip past our defenses, breach our systems, get their hands

7
00:00:18.160 --> 00:00:21.160
<v Speaker 1>on sensitive data? And just as crucially, how do the

8
00:00:21.199 --> 00:00:23.480
<v Speaker 1>good guys, the digital defenders, how do they learn to

9
00:00:23.519 --> 00:00:26.920
<v Speaker 1>anticipate those moves and lock down systems before it's too late.

10
00:00:27.440 --> 00:00:29.960
<v Speaker 1>Today we're plunging right into the heart of that digital struggle.

11
00:00:29.960 --> 00:00:33.000
<v Speaker 1>We're talking about security testing with a keen focus on

12
00:00:33.439 --> 00:00:36.240
<v Speaker 1>penetration testing. Our guide for this deep dive is Robert

13
00:00:36.240 --> 00:00:40.039
<v Speaker 1>Spenson's insightful book From Hacking to Report Writing, An Introduction

14
00:00:40.079 --> 00:00:41.840
<v Speaker 1>to Security and Penetration testing.

15
00:00:42.159 --> 00:00:43.200
<v Speaker 2>Really good stuff in here.

16
00:00:43.280 --> 00:00:45.640
<v Speaker 1>Our mission, well, it's to take you on a complete

17
00:00:45.719 --> 00:00:48.560
<v Speaker 1>journey right through the life cycle of a security test,

18
00:00:48.719 --> 00:00:51.840
<v Speaker 1>from adopting the hacker mindset all the way to crafting

19
00:00:51.840 --> 00:00:54.640
<v Speaker 1>that vital report, the one that ultimately helps organizations build

20
00:00:54.719 --> 00:00:58.240
<v Speaker 1>robust digital defenses. We'll uncover the how and why behind

21
00:00:58.280 --> 00:01:02.159
<v Speaker 1>finding digital weaknesses and believe the insights are pretty profound.

22
00:01:02.399 --> 00:01:04.719
<v Speaker 3>Yeah. And what's truly fascinating about this field, I think

23
00:01:05.319 --> 00:01:08.760
<v Speaker 3>is the delicate balance it strikes. It's really about leveraging

24
00:01:08.799 --> 00:01:13.280
<v Speaker 3>offensive techniques, understanding precisely how an attacker thinks and operates,

25
00:01:13.519 --> 00:01:17.079
<v Speaker 3>but crucially doing so for entirely defensive purposes. It's using

26
00:01:17.120 --> 00:01:21.280
<v Speaker 3>the very tools of compromise to build stronger, more resilient

27
00:01:21.319 --> 00:01:22.040
<v Speaker 3>digital walls.

28
00:01:22.079 --> 00:01:26.000
<v Speaker 1>Absolutely, and to truly grasp why this proactive approach is

29
00:01:26.040 --> 00:01:28.840
<v Speaker 1>so vital. Let's anchor ourselves with a real world example.

30
00:01:29.159 --> 00:01:32.480
<v Speaker 1>Remember the VTech hack back in November twenty fifteen. This

31
00:01:32.599 --> 00:01:36.280
<v Speaker 1>Hong Kong based company. They make electronic learning toys for kids.

32
00:01:36.359 --> 00:01:39.599
<v Speaker 1>They suffered a massive breach. Millions of children's and parents data,

33
00:01:39.640 --> 00:01:43.480
<v Speaker 1>user names, passwords, photos, even private messages all stolen and

34
00:01:43.519 --> 00:01:47.120
<v Speaker 1>the root causes while a critical database code injection vulnerability

35
00:01:47.200 --> 00:01:51.120
<v Speaker 1>and kind of astonishingly unencrypted information, it also highlighted that

36
00:01:51.159 --> 00:01:53.840
<v Speaker 1>the toys themselves just weren't designed to communicate securely.

37
00:01:54.120 --> 00:01:57.000
<v Speaker 3>Right. And what's profoundly alarming about a hack like VTech

38
00:01:57.519 --> 00:02:01.280
<v Speaker 3>beyond the sheer volume of data stolen, is that it

39
00:02:01.319 --> 00:02:04.640
<v Speaker 3>points to a fundamental flaw like right in the design.

40
00:02:05.239 --> 00:02:08.800
<v Speaker 3>This wasn't some super sophisticated zero day exploit. It was

41
00:02:08.840 --> 00:02:12.520
<v Speaker 3>about basic security principles just being completely missed ignored. Really,

42
00:02:12.599 --> 00:02:15.840
<v Speaker 3>it properly performed security test before that breach, it would

43
00:02:15.840 --> 00:02:18.879
<v Speaker 3>almost certainly have uncovered. These frankly glaring weaknesses made the

44
00:02:18.919 --> 00:02:21.599
<v Speaker 3>attack far hard, maybe even prevented it altogether. It's a

45
00:02:21.639 --> 00:02:23.840
<v Speaker 3>stark lesson, isn't it, in the value of security by

46
00:02:23.879 --> 00:02:27.400
<v Speaker 3>design versus just, you know, security as an afterthought, and.

47
00:02:27.280 --> 00:02:31.159
<v Speaker 1>That leads us to a fundamental truth. Really, vulnerabilities are well,

48
00:02:31.319 --> 00:02:35.479
<v Speaker 1>they're everywhere modern complex computer systems. They're constantly interacting with

49
00:02:35.560 --> 00:02:40.080
<v Speaker 1>uncontrolled external systems users. This inherent complexity means achieving one

50
00:02:40.159 --> 00:02:43.360
<v Speaker 1>hundred percent security is quite frankly impossible.

51
00:02:43.360 --> 00:02:43.919
<v Speaker 3>It just is.

52
00:02:44.199 --> 00:02:47.000
<v Speaker 1>Think of it like this, Maybe imagine a dusty road

53
00:02:47.080 --> 00:02:51.000
<v Speaker 1>connecting two villages centuries ago, good enough for simple transport, right,

54
00:02:51.439 --> 00:02:53.879
<v Speaker 1>but then as traffic grew, it became a busy city

55
00:02:53.919 --> 00:02:58.439
<v Speaker 1>street packed with intersections, crosswalks, strains. All these security features

56
00:02:58.439 --> 00:03:01.639
<v Speaker 1>were layered on after the road's core purpose transport was established.

57
00:03:01.919 --> 00:03:05.280
<v Speaker 1>In the digital world, security often becomes that afterthought, bolted

58
00:03:05.280 --> 00:03:08.039
<v Speaker 1>on instead of being integral to the initial design and it's.

59
00:03:07.879 --> 00:03:11.439
<v Speaker 3>Crucial to understand it's not just malicious hackers exploiting these weaknesses.

60
00:03:11.840 --> 00:03:15.319
<v Speaker 3>Take the Slammer worm two thousand and three. This was

61
00:03:15.360 --> 00:03:18.080
<v Speaker 3>the fastest computer worm in history. In fact, something like

62
00:03:18.159 --> 00:03:22.319
<v Speaker 3>ninety percent of vulnerable servers online within ten minutes. Ten

63
00:03:22.360 --> 00:03:25.960
<v Speaker 3>minutes it brought so many mission critical systems just grinding

64
00:03:26.000 --> 00:03:28.800
<v Speaker 3>to a halt, and not because of some cunning new exploit. No,

65
00:03:29.280 --> 00:03:31.479
<v Speaker 3>it took advantage of a vulnerability for which a patch

66
00:03:31.560 --> 00:03:34.879
<v Speaker 3>had been readily available for six months. This just drives

67
00:03:34.879 --> 00:03:38.039
<v Speaker 3>on the point that basic cyber hygiene like patch management,

68
00:03:38.319 --> 00:03:41.759
<v Speaker 3>is incredibly important. Its absence allowed a known fixable weakness

69
00:03:41.759 --> 00:03:43.280
<v Speaker 3>to cause just widespread chaos.

70
00:03:43.400 --> 00:03:43.879
<v Speaker 2>So if we.

71
00:03:43.840 --> 00:03:47.680
<v Speaker 1>Boil it down, what exactly is a security test? Robert

72
00:03:47.680 --> 00:03:51.719
<v Speaker 1>Spenson emphasizes that it's a type of vulnerability assessment where

73
00:03:51.719 --> 00:03:53.800
<v Speaker 1>a tester actively takes on the role of a hacker.

74
00:03:54.080 --> 00:03:57.360
<v Speaker 1>They meticulously try to break into an organization's IT environment,

75
00:03:57.479 --> 00:04:01.879
<v Speaker 1>uncover vulnerabilities, and then importantly provide concrete suggestions for fixing

76
00:04:01.919 --> 00:04:05.120
<v Speaker 1>them before a real attack can occur. It's leveraging offensive

77
00:04:05.159 --> 00:04:09.199
<v Speaker 1>knowledge for defensive gain, simple as that almost And who

78
00:04:09.240 --> 00:04:10.319
<v Speaker 1>are these individuals?

79
00:04:10.719 --> 00:04:12.240
<v Speaker 2>The ones wielding.

80
00:04:11.759 --> 00:04:15.719
<v Speaker 1>Digital tools for good or sometimes for ill. The landscape

81
00:04:15.759 --> 00:04:19.439
<v Speaker 1>of hackers is incredibly diverse, each with their own motivations,

82
00:04:19.480 --> 00:04:20.399
<v Speaker 1>their own methods.

83
00:04:20.639 --> 00:04:21.800
<v Speaker 2>Okay, so at the highest.

84
00:04:21.560 --> 00:04:24.639
<v Speaker 1>Level, you've got state sponsored actors. These groups, they strive

85
00:04:24.680 --> 00:04:27.120
<v Speaker 1>to operate way below the radar, backed by immense funding

86
00:04:27.199 --> 00:04:31.160
<v Speaker 1>national resources, their attacks are increasingly becoming a cornerstone of

87
00:04:31.240 --> 00:04:33.680
<v Speaker 1>national defense. Really, think about China's Unit sixty one three

88
00:04:33.800 --> 00:04:37.959
<v Speaker 1>ninety eight, widely believed to have systematically stolen terabytes terabytes

89
00:04:38.079 --> 00:04:42.319
<v Speaker 1>trade secrets from US companies, or the infamous stux networm,

90
00:04:42.439 --> 00:04:45.279
<v Speaker 1>thought to be a joint US Israel effort right designed

91
00:04:45.319 --> 00:04:47.720
<v Speaker 1>not just to steal data, but to physically damine Iran's

92
00:04:47.759 --> 00:04:53.040
<v Speaker 1>nuclear centrifuges. That ability to translate digital action into real

93
00:04:53.079 --> 00:04:56.399
<v Speaker 1>world physical destruction that really sets some of these operations

94
00:04:56.439 --> 00:04:58.120
<v Speaker 1>apart exactly.

95
00:04:58.480 --> 00:05:01.439
<v Speaker 3>And what's particularly challenging with state sponsored actors is their

96
00:05:01.480 --> 00:05:05.199
<v Speaker 3>patients and their persistence. They often conduct these long term campaigns,

97
00:05:05.199 --> 00:05:08.600
<v Speaker 3>we call them advanced persistent threads or apts. They brow

98
00:05:08.720 --> 00:05:12.319
<v Speaker 3>deep into networks over months, years, sometimes to achieve their objectives.

99
00:05:12.319 --> 00:05:16.079
<v Speaker 3>They have virtually unlimited resources, unlimited time. It makes them

100
00:05:16.079 --> 00:05:18.600
<v Speaker 3>exceptionally difficult to detect and defend against.

101
00:05:18.720 --> 00:05:22.199
<v Speaker 1>Okay, so that's one type. Next we encounter computer criminals.

102
00:05:22.560 --> 00:05:25.279
<v Speaker 1>These guys are driven primarily by financial gain. They follow

103
00:05:25.319 --> 00:05:29.279
<v Speaker 1>the money, and these days that flows heavily through digital transactions. Obviously,

104
00:05:29.600 --> 00:05:34.399
<v Speaker 1>think of Alexander andreevag Panin and Hamzabendoladge, the developers of the.

105
00:05:34.360 --> 00:05:35.360
<v Speaker 2>Spy i botnet.

106
00:05:35.639 --> 00:05:37.920
<v Speaker 1>They were sentenced to a combine twenty four years for

107
00:05:38.000 --> 00:05:41.600
<v Speaker 1>selling malware, malware that stole over three million dollars from

108
00:05:41.759 --> 00:05:45.120
<v Speaker 1>like one point four million computers worldwide. Their botnet toolkit

109
00:05:45.160 --> 00:05:47.600
<v Speaker 1>made it disturbingly easy for others to commit fraud on

110
00:05:47.639 --> 00:05:49.560
<v Speaker 1>a massive scale just by the kit.

111
00:05:49.720 --> 00:05:52.920
<v Speaker 3>Point click Scary stuff and you have activists, right.

112
00:05:53.000 --> 00:05:53.600
<v Speaker 2>Activists.

113
00:05:54.160 --> 00:05:57.319
<v Speaker 1>These individuals are motivated more by protests a desire for

114
00:05:57.399 --> 00:06:00.800
<v Speaker 1>public visibility. They use digital tools as a modern form

115
00:06:00.800 --> 00:06:03.519
<v Speaker 1>of demonstration. Instead of picket signs, they might use denial

116
00:06:03.519 --> 00:06:08.720
<v Speaker 1>of service attacks or website defacement. A striking, even kind

117
00:06:08.759 --> 00:06:12.160
<v Speaker 1>of humorous example is a nineteen ninety six CIA website defacement.

118
00:06:12.240 --> 00:06:15.199
<v Speaker 1>Remember that visitors were greeted with welcome to the Central

119
00:06:15.199 --> 00:06:18.600
<v Speaker 1>Stupidity Agency. That message even made it onto CNN.

120
00:06:18.639 --> 00:06:19.279
<v Speaker 2>Their goal is.

121
00:06:19.279 --> 00:06:22.600
<v Speaker 1>Maximum exposure for their message. Whatever it is, getting the

122
00:06:22.600 --> 00:06:25.240
<v Speaker 1>message out there is key for them. Then, perhaps the

123
00:06:25.279 --> 00:06:28.480
<v Speaker 1>most insidious and maybe the most difficult threat to foresee

124
00:06:28.519 --> 00:06:33.279
<v Speaker 1>and manage is the insider. These individuals already possess legitimate access,

125
00:06:33.600 --> 00:06:38.000
<v Speaker 1>which often renders traditional perimeter defenses well less effective. Edward

126
00:06:38.000 --> 00:06:41.079
<v Speaker 1>Snowden is arguably the most well known insider in history.

127
00:06:41.199 --> 00:06:44.160
<v Speaker 1>While working as a contractor for the NSA, he gained

128
00:06:44.199 --> 00:06:48.120
<v Speaker 1>access to and then released an unprecedented amount of classified data,

129
00:06:48.160 --> 00:06:51.040
<v Speaker 1>including things like the daily interception of six hundred million

130
00:06:51.120 --> 00:06:55.360
<v Speaker 1>communications spying on foreign leaders. Now, regardless of whether you

131
00:06:55.480 --> 00:06:58.720
<v Speaker 1>view his actions as whistleblowing or treason, his impact as

132
00:06:58.759 --> 00:07:04.680
<v Speaker 1>an insider was a fundamentally changed the conversation around government surveillance, and.

133
00:07:04.639 --> 00:07:07.480
<v Speaker 3>The difficulty with insiders really lies in that challenge of

134
00:07:07.519 --> 00:07:10.360
<v Speaker 3>building trust models. It's tricky. How do you monitor someone

135
00:07:10.360 --> 00:07:14.639
<v Speaker 3>who legitimately needs access to sensitive information without creating a

136
00:07:14.680 --> 00:07:17.639
<v Speaker 3>surveillance state within your own organization. It requires a different

137
00:07:17.639 --> 00:07:21.040
<v Speaker 3>approach to security, one focus more on behavior analysis granular

138
00:07:21.040 --> 00:07:23.839
<v Speaker 3>access control rather than just looking at external threats.

139
00:07:23.959 --> 00:07:24.480
<v Speaker 2>Good point.

140
00:07:25.120 --> 00:07:27.120
<v Speaker 1>Finally, at the other end of the spectrum, we have

141
00:07:27.160 --> 00:07:30.120
<v Speaker 1>script kitties. These are individuals who use pre made tools

142
00:07:30.120 --> 00:07:33.360
<v Speaker 1>and scripts written by others, often without a deep understanding

143
00:07:33.399 --> 00:07:35.800
<v Speaker 1>of how they work or frankly, the consequences.

144
00:07:36.279 --> 00:07:38.759
<v Speaker 2>But don't let their lack of technical depth fool you.

145
00:07:38.959 --> 00:07:41.120
<v Speaker 1>Like someone who doesn't understand the mechanics of a car

146
00:07:41.160 --> 00:07:43.759
<v Speaker 1>can still cause an accident, right, a script kitty can

147
00:07:43.759 --> 00:07:47.560
<v Speaker 1>reach significant damage. Michael Kelce or Mafia Boy, he was

148
00:07:47.639 --> 00:07:51.040
<v Speaker 1>just fourteen years old back in two thousand, launched devastating

149
00:07:51.079 --> 00:07:54.600
<v Speaker 1>denial of service attacks against some major websites like Amazon, Fifa,

150
00:07:54.639 --> 00:07:59.000
<v Speaker 1>dot Com, eBay, all using easily downloaded tools. He later

151
00:07:59.040 --> 00:08:01.480
<v Speaker 1>claimed he was unaware of the dangers, but the impact

152
00:08:02.079 --> 00:08:02.680
<v Speaker 1>very real.

153
00:08:02.920 --> 00:08:04.759
<v Speaker 3>Yeah, underestimating them can be a mistake.

154
00:08:05.040 --> 00:08:09.600
<v Speaker 1>So when we look across all these categories, state sponsored criminals, activists, insiders,

155
00:08:09.600 --> 00:08:13.480
<v Speaker 1>script kds, what's the overarching takeaway? It seems clear that

156
00:08:13.519 --> 00:08:16.240
<v Speaker 1>the human element remains the most probable source of intentional

157
00:08:16.240 --> 00:08:20.519
<v Speaker 1>disruption in computer systems, whether it's spreading malware, activism, phishing attacks.

158
00:08:20.839 --> 00:08:23.920
<v Speaker 1>Understanding these motivations is really key to building effective defenses.

159
00:08:24.160 --> 00:08:26.600
<v Speaker 3>Absolutely, it's not just about the technology, it's about the

160
00:08:26.639 --> 00:08:27.480
<v Speaker 3>people behind it.

161
00:08:27.560 --> 00:08:30.199
<v Speaker 1>Okay, So now that we have a clearer picture of

162
00:08:30.240 --> 00:08:33.759
<v Speaker 1>why security testing matters and who the players are. Let's

163
00:08:33.799 --> 00:08:36.440
<v Speaker 1>shift our focus. Let's talk about the art of the

164
00:08:36.480 --> 00:08:41.039
<v Speaker 1>penetration test itself. It's actually a highly structured process, from

165
00:08:41.039 --> 00:08:44.360
<v Speaker 1>the initial concept right through to the final crucial report.

166
00:08:44.879 --> 00:08:48.000
<v Speaker 1>It all kicks off with what Senson calls the initialization phase.

167
00:08:48.440 --> 00:08:51.399
<v Speaker 1>This is when an organization first considers a security test.

168
00:08:51.840 --> 00:08:55.039
<v Speaker 1>They start asking that fundamental question, how safe.

169
00:08:54.799 --> 00:08:55.519
<v Speaker 2>Are we really?

170
00:08:55.879 --> 00:08:58.519
<v Speaker 3>That first step is crucial acknowledging. You need to ask

171
00:08:58.559 --> 00:08:59.799
<v Speaker 3>the question exactly.

172
00:09:00.120 --> 00:09:03.399
<v Speaker 1>From there, a critical step is setting the scope. This

173
00:09:03.480 --> 00:09:07.200
<v Speaker 1>needs to be crystal clear, thoroughly verified to prevent what's

174
00:09:07.200 --> 00:09:11.080
<v Speaker 1>called scope creep. Imagine a tester hired for, say, for

175
00:09:11.279 --> 00:09:15.120
<v Speaker 1>database servers. During reconnaissance, they discover a dozen more insecure

176
00:09:15.200 --> 00:09:18.600
<v Speaker 1>servers belonging to other departments if they're then asked to

177
00:09:18.639 --> 00:09:21.320
<v Speaker 1>test all of them without adjusting the timeline. While it

178
00:09:21.360 --> 00:09:24.159
<v Speaker 1>often leads to lower quality testing overall, you just spread

179
00:09:24.159 --> 00:09:26.919
<v Speaker 1>yourself too thin and linked tightly to scope. There's the

180
00:09:27.000 --> 00:09:30.519
<v Speaker 1>absolute necessity of the well they call it the get

181
00:09:30.519 --> 00:09:31.639
<v Speaker 1>out of jail free cards.

182
00:09:31.720 --> 00:09:33.720
<v Speaker 3>Ah. Yes, the essential document it is.

183
00:09:33.799 --> 00:09:37.279
<v Speaker 1>It's the written, legally binding permission required for a security

184
00:09:37.320 --> 00:09:41.679
<v Speaker 1>tester to quote break into an organization systems mimicking a

185
00:09:41.720 --> 00:09:44.639
<v Speaker 1>real attacker. It must be signed by someone with proper

186
00:09:44.639 --> 00:09:48.759
<v Speaker 1>authority before any testing commences. No signature, no test period,

187
00:09:49.000 --> 00:09:49.440
<v Speaker 1>and that.

188
00:09:49.440 --> 00:09:53.080
<v Speaker 3>Legal documentation the scope that get out of jail free card.

189
00:09:53.720 --> 00:09:57.559
<v Speaker 3>It's completely non negotiable. Without it, even the most ethical

190
00:09:57.559 --> 00:10:00.639
<v Speaker 3>penetration test could easily be viewed as a and an act.

191
00:10:00.759 --> 00:10:04.279
<v Speaker 3>It also protects the client right by clearly defining what

192
00:10:04.480 --> 00:10:09.279
<v Speaker 3>is and isn't being tested, manages exteptations, prevents unintended consequences.

193
00:10:10.000 --> 00:10:11.360
<v Speaker 3>It's vital for both sides.

194
00:10:11.480 --> 00:10:13.600
<v Speaker 1>Okay, so when we talk about how much information a

195
00:10:13.639 --> 00:10:16.360
<v Speaker 1>tester has at the outset, we often use these color

196
00:10:16.399 --> 00:10:19.799
<v Speaker 1>codes for security tests. White box testing means the tester

197
00:10:19.919 --> 00:10:23.840
<v Speaker 1>has full access to internal info, network diagrams, maybe source

198
00:10:23.879 --> 00:10:27.639
<v Speaker 1>codes and configurations everything. It's very time efficient because you

199
00:10:27.679 --> 00:10:30.120
<v Speaker 1>know where to look, but it's less realistic as a

200
00:10:30.159 --> 00:10:33.960
<v Speaker 1>true external hacker. Simulation. On the opposite end is black

201
00:10:34.000 --> 00:10:37.480
<v Speaker 1>box testing. Here the tester starts with minimal information, maybe

202
00:10:37.519 --> 00:10:41.240
<v Speaker 1>just a company name, truly mimicking an external attacker. This

203
00:10:41.320 --> 00:10:44.120
<v Speaker 1>is the most realistic simulation, but as fence And points out,

204
00:10:44.159 --> 00:10:47.679
<v Speaker 1>it's often unnecessarily time consuming and therefore expensive.

205
00:10:47.799 --> 00:10:49.799
<v Speaker 2>There's a lot of guesswork involved, and.

206
00:10:49.720 --> 00:10:52.960
<v Speaker 3>That guesswork factor in black box testing you can have

207
00:10:53.039 --> 00:10:57.000
<v Speaker 3>real consequences. K Spenson tells this story. It's quite something.

208
00:10:57.360 --> 00:10:59.720
<v Speaker 3>A black box test where the tester was given just

209
00:10:59.720 --> 00:11:03.000
<v Speaker 3>a company name and an emergency contact. That's it. They

210
00:11:03.080 --> 00:11:06.360
<v Speaker 3>used old Airon database information that's the registry for IPA

211
00:11:06.360 --> 00:11:09.320
<v Speaker 3>addresses to find ips, which led them to believe in

212
00:11:09.399 --> 00:11:12.039
<v Speaker 3>IP address and Madrid still belonged to their client. They

213
00:11:12.039 --> 00:11:15.200
<v Speaker 3>found a terribly outdated Sambo file sharing service running there,

214
00:11:15.600 --> 00:11:20.000
<v Speaker 3>connected easily with administrators both username and password. Found gigabytes

215
00:11:20.039 --> 00:11:24.480
<v Speaker 3>of database backups, payroll user data, even a scanned passport.

216
00:11:24.559 --> 00:11:25.320
<v Speaker 2>Oh my goodness.

217
00:11:25.399 --> 00:11:27.960
<v Speaker 3>Yeah, so I called the emergency contact all proud saying

218
00:11:28.000 --> 00:11:32.559
<v Speaker 3>we're in and the context is, uh, it's not our servers. Hmmm.

219
00:11:33.240 --> 00:11:36.080
<v Speaker 3>Turns out the IP address now belonged to some completely

220
00:11:36.120 --> 00:11:40.159
<v Speaker 3>innocent Spanish company. The Airon database information was simply out

221
00:11:40.200 --> 00:11:43.519
<v Speaker 3>of date. It's just a powerful reminder that even elementary

222
00:11:43.519 --> 00:11:46.799
<v Speaker 3>information like IP ownership needs to be double checked, especially

223
00:11:46.879 --> 00:11:47.919
<v Speaker 3>in a black box scenario.

224
00:11:48.039 --> 00:11:51.639
<v Speaker 1>Well that's a nightmare scenario, seriously, and it really highlights

225
00:11:51.639 --> 00:11:54.159
<v Speaker 1>why gray box testing is probably the most common approach.

226
00:11:54.200 --> 00:11:56.720
<v Speaker 3>When you say, definitely, it strikes that balance.

227
00:11:56.840 --> 00:12:00.600
<v Speaker 1>Yeah, it provides the tester with some insider information maybe

228
00:12:00.840 --> 00:12:05.600
<v Speaker 1>user credentials, network diagrams, but still maintains a realistic simulation

229
00:12:05.720 --> 00:12:06.759
<v Speaker 1>of a hacker's perspective.

230
00:12:06.840 --> 00:12:09.000
<v Speaker 2>Makes it both effective and efficient.

231
00:12:08.720 --> 00:12:12.240
<v Speaker 3>Exactly best of both worlds often okay.

232
00:12:12.879 --> 00:12:16.679
<v Speaker 2>But regardless of the testing approach, white black, gray, the

233
00:12:16.799 --> 00:12:20.879
<v Speaker 2>ultimate goal is always define vulnerabilities. So what is a

234
00:12:20.960 --> 00:12:22.399
<v Speaker 2>vulnerability precisely?

235
00:12:22.559 --> 00:12:25.960
<v Speaker 3>Well, there are formal definitions out there. ANISA, the European

236
00:12:26.039 --> 00:12:29.120
<v Speaker 3>Union Agency for Network and Information Security, they put it

237
00:12:29.120 --> 00:12:32.679
<v Speaker 3>pretty succinctly. They define it as the existence of a

238
00:12:32.720 --> 00:12:37.759
<v Speaker 3>weakness compromising the security. Simple, okay, a weakness right. The

239
00:12:37.799 --> 00:12:40.919
<v Speaker 3>Internet Engineering Task Force the IETF they expand on that

240
00:12:40.960 --> 00:12:43.879
<v Speaker 3>a bit. They call it a flaw or weakness exploited

241
00:12:43.919 --> 00:12:45.759
<v Speaker 3>to violate the system security policy.

242
00:12:45.919 --> 00:12:48.600
<v Speaker 1>So, to simplify it even more, it's basically something that

243
00:12:48.639 --> 00:12:51.080
<v Speaker 1>makes it possible for someone to force your computer or

244
00:12:51.159 --> 00:12:53.240
<v Speaker 1>your system to do something you don't want.

245
00:12:53.120 --> 00:12:53.480
<v Speaker 2>It to do.

246
00:12:53.600 --> 00:12:55.960
<v Speaker 3>That's a good way to put it. And these vulnerabilities

247
00:12:56.000 --> 00:12:58.720
<v Speaker 3>typically compromise one or more aspects of what we call

248
00:12:58.759 --> 00:13:04.080
<v Speaker 3>the CIA triapp ah, the CIA triads, YEP, confidentiality, integrity,

249
00:13:04.120 --> 00:13:09.840
<v Speaker 3>and availability. Confidentiality is about keeping information secret right, ensuring

250
00:13:09.919 --> 00:13:14.000
<v Speaker 3>only authorized people can access it, pretty straightforward. Integrity ensures

251
00:13:14.000 --> 00:13:17.799
<v Speaker 3>information hasn't been tampered with by unauthorized users. Think of, say,

252
00:13:18.360 --> 00:13:21.360
<v Speaker 3>an e commerce system, where a vulnerability might let a

253
00:13:21.360 --> 00:13:25.360
<v Speaker 3>customer change other customers order information. That's an integrity violation.

254
00:13:25.559 --> 00:13:25.879
<v Speaker 2>Got it.

255
00:13:26.240 --> 00:13:29.879
<v Speaker 3>Availability just means information and systems are accessible when needed,

256
00:13:30.320 --> 00:13:33.159
<v Speaker 3>preventing things like a power outage or maybe a distributed

257
00:13:33.200 --> 00:13:37.240
<v Speaker 3>denial of service attack from bringing services down. That's an

258
00:13:37.279 --> 00:13:38.399
<v Speaker 3>availability issue.

259
00:13:38.480 --> 00:13:43.919
<v Speaker 1>Confidentiality, integrity, availability. Okay, So how are these vulnerabilities actually

260
00:13:44.000 --> 00:13:46.679
<v Speaker 1>uncovered and how do we measure how serious they are?

261
00:13:46.799 --> 00:13:49.039
<v Speaker 3>Well, it's kind of a continuous process. You can visualize

262
00:13:49.039 --> 00:13:52.519
<v Speaker 3>it as a vulnerability wheel almost. It starts with flawed software.

263
00:13:52.759 --> 00:13:55.879
<v Speaker 3>Hackers identify bugs in it, Then they might develop exploit

264
00:13:55.879 --> 00:13:58.799
<v Speaker 3>code that prompts a vendor response, hopefully a patch, and

265
00:13:58.840 --> 00:14:01.600
<v Speaker 3>finally there's the user response applying that patch. Then the

266
00:14:01.600 --> 00:14:04.720
<v Speaker 3>cycle starts again with new flaws or mispatches. It's an

267
00:14:04.759 --> 00:14:06.840
<v Speaker 3>ongoing cycle of discovery and defense.

268
00:14:07.200 --> 00:14:10.360
<v Speaker 1>Interesting, and some vendors actually embrace this cycle, don't they

269
00:14:10.840 --> 00:14:12.080
<v Speaker 1>by offering bug bounties.

270
00:14:12.320 --> 00:14:17.240
<v Speaker 3>Exactly. These are slightly unorthodox maybe, but incredibly effective ways

271
00:14:17.440 --> 00:14:20.799
<v Speaker 3>for companies to get security reviews from a huge pool

272
00:14:20.919 --> 00:14:25.759
<v Speaker 3>of ethical experts. Microsoft, for example, famously paid one researcher

273
00:14:25.960 --> 00:14:29.480
<v Speaker 3>one hundred thousand dollars back in twenty fourteen for discovering

274
00:14:29.679 --> 00:14:33.840
<v Speaker 3>a pretty significant vulnerability. It incentivizes finding flaws before the

275
00:14:33.879 --> 00:14:34.679
<v Speaker 3>bad guys.

276
00:14:34.440 --> 00:14:36.799
<v Speaker 2>Do one hundred thousand dollars. Wow.

277
00:14:36.919 --> 00:14:40.519
<v Speaker 1>Okay, Now, a crucial concept here is the zero day exploit.

278
00:14:40.559 --> 00:14:41.480
<v Speaker 2>What exactly is that.

279
00:14:41.759 --> 00:14:45.279
<v Speaker 3>H zero days? These are vulnerabilities that are not publicly

280
00:14:45.360 --> 00:14:49.080
<v Speaker 3>known and critically for which no patch is available. This

281
00:14:49.159 --> 00:14:52.600
<v Speaker 3>leads system administrators with literally zero days to patch because

282
00:14:52.639 --> 00:14:54.600
<v Speaker 3>the vendor isn't even aware of the issue yet, or

283
00:14:54.639 --> 00:14:56.679
<v Speaker 3>maybe they are but haven't had time to develop and

284
00:14:56.720 --> 00:14:57.080
<v Speaker 3>release a.

285
00:14:57.120 --> 00:14:58.960
<v Speaker 1>Fix, so it's like an open door that nobody knows

286
00:14:59.000 --> 00:14:59.960
<v Speaker 1>about except the attacker.

287
00:15:00.120 --> 00:15:02.799
<v Speaker 3>Pretty much, zero days are the holy grail for attackers

288
00:15:02.840 --> 00:15:05.639
<v Speaker 3>because they offer that window of opportunity where defenses are

289
00:15:05.639 --> 00:15:09.840
<v Speaker 3>effectively blind. They're highly prized fetch significant sums on the

290
00:15:09.840 --> 00:15:12.720
<v Speaker 3>black market sometimes because they're so effective before a vendor

291
00:15:12.759 --> 00:15:13.279
<v Speaker 3>can react.

292
00:15:13.440 --> 00:15:16.360
<v Speaker 1>Okay, that makes sense. So this raises an important question.

293
00:15:16.840 --> 00:15:19.440
<v Speaker 1>Once a vulnerability is found, whether it's a zero day

294
00:15:19.559 --> 00:15:22.679
<v Speaker 1>or just a known one, how do we measure its seriousness?

295
00:15:22.720 --> 00:15:23.600
<v Speaker 2>How bad is it?

296
00:15:23.759 --> 00:15:26.720
<v Speaker 3>Right? The industry standard for that is the Common Vulnerability

297
00:15:26.720 --> 00:15:29.720
<v Speaker 3>Scoring System or CVSS. It's basically a zero to ten scale.

298
00:15:29.960 --> 00:15:33.600
<v Speaker 3>Higher number means greater severity, more urgent need for attention.

299
00:15:33.679 --> 00:15:34.600
<v Speaker 2>Okay, zero to ten.

300
00:15:34.720 --> 00:15:37.720
<v Speaker 3>Yeah. For instance, there was a Microsoft silver Light vulnerability

301
00:15:38.000 --> 00:15:42.320
<v Speaker 3>identified as CVE twenty sixteen zero zero zero three four.

302
00:15:42.840 --> 00:15:46.200
<v Speaker 3>That CVE just tends for common vulnerabilities and exposures. It's

303
00:15:46.240 --> 00:15:49.679
<v Speaker 3>like a global dictionary for known security flaws. Anyway, that

304
00:15:49.799 --> 00:15:52.600
<v Speaker 3>silver Light bug scored a high nine point six on

305
00:15:52.679 --> 00:15:55.960
<v Speaker 3>the CDSS scale. That signals immediate attention needed because the

306
00:15:55.960 --> 00:15:57.200
<v Speaker 3>potential impact is severe.

307
00:15:57.480 --> 00:15:59.519
<v Speaker 2>Nine point six Yeah, that sounds pretty urgent.

308
00:15:59.600 --> 00:16:02.519
<v Speaker 1>Okay, So before any hands on hacking actually begins, a

309
00:16:02.519 --> 00:16:05.679
<v Speaker 1>security tester needs to make some thorough technical preparations, right.

310
00:16:05.720 --> 00:16:06.519
<v Speaker 2>What does that involve?

311
00:16:06.679 --> 00:16:11.240
<v Speaker 3>Absolutely, preparation is key. One vital step is collecting network traffic.

312
00:16:12.080 --> 00:16:15.200
<v Speaker 3>This is essential not just for analysis later, but also

313
00:16:15.320 --> 00:16:18.679
<v Speaker 3>for legal protection tools like wire shark, which has a

314
00:16:18.759 --> 00:16:22.480
<v Speaker 3>nice graphical interface, and tcpdump, which is command line based

315
00:16:22.720 --> 00:16:25.919
<v Speaker 3>are indispensable. They capture every single bite of data sent

316
00:16:25.960 --> 00:16:29.559
<v Speaker 3>between the tester's machine and the target system. That traffic

317
00:16:29.600 --> 00:16:32.279
<v Speaker 3>can literally be the sloking gun in a legal dispute,

318
00:16:32.600 --> 00:16:35.080
<v Speaker 3>or the key to understanding exactly what happened during a

319
00:16:35.120 --> 00:16:36.039
<v Speaker 3>test or an attack.

320
00:16:36.159 --> 00:16:39.879
<v Speaker 1>So it's like recording the whole conversation between the computers precisely.

321
00:16:40.240 --> 00:16:43.840
<v Speaker 3>It provides an undeniable record of events, crucial for diagnosing

322
00:16:43.879 --> 00:16:46.840
<v Speaker 3>issues and also for defending yourself if something goes wrong

323
00:16:46.960 --> 00:16:48.519
<v Speaker 3>during a test and questions are asked.

324
00:16:48.840 --> 00:16:51.639
<v Speaker 2>Makes sense. Note taking is also paramount, I imagine.

325
00:16:51.320 --> 00:16:56.600
<v Speaker 3>Oh hugely. Yeah, but critically, any sensitive test data, client information, discovered, passwords,

326
00:16:56.679 --> 00:17:01.039
<v Speaker 3>vulnerability should always be stored locally, securely. Never ever use

327
00:17:01.080 --> 00:17:03.799
<v Speaker 3>cloud based note taking apps like Evernote or simple note

328
00:17:03.799 --> 00:17:06.920
<v Speaker 3>for this stuff. You just can't risk processing sensitive client

329
00:17:07.000 --> 00:17:09.559
<v Speaker 3>data on third party servers. It's a huge liability.

330
00:17:09.640 --> 00:17:11.359
<v Speaker 2>Good point, Keep it local.

331
00:17:11.240 --> 00:17:14.680
<v Speaker 3>Keep it local, keep it encrypted. And saving complex commands

332
00:17:14.680 --> 00:17:18.240
<v Speaker 3>you've used, that's just a smart habit. Save time, helps

333
00:17:18.279 --> 00:17:20.640
<v Speaker 3>you reproduce your steps, makes reporting easier.

334
00:17:20.680 --> 00:17:23.839
<v Speaker 2>Okay, and what about the software setup? What tools are essential?

335
00:17:24.079 --> 00:17:27.759
<v Speaker 3>Well? For efficiency? Pre configured virtual machines, loaded with security

336
00:17:27.759 --> 00:17:31.039
<v Speaker 3>tools are really the way to go. Kali Linux, for instance,

337
00:17:31.359 --> 00:17:35.599
<v Speaker 3>is basically a Linux distribution built specifically for security work.

338
00:17:36.079 --> 00:17:40.880
<v Speaker 3>It comes bundled with well pretty much every imaginable security

339
00:17:40.920 --> 00:17:43.039
<v Speaker 3>related tool. As Benson puts.

340
00:17:42.799 --> 00:17:45.920
<v Speaker 2>It, Kyllie right, heard of that one, and then there's metasploit.

341
00:17:46.519 --> 00:17:50.279
<v Speaker 3>This is widely regarded as the most impactful penetration testing

342
00:17:50.319 --> 00:17:54.720
<v Speaker 3>solution on the planet. It's invaluable for verifying vulnerabilities. It

343
00:17:54.759 --> 00:17:57.119
<v Speaker 3>has a huge library of pre built exploits you can

344
00:17:57.200 --> 00:17:58.960
<v Speaker 3>use to demonstrate impact safely, not.

345
00:17:59.039 --> 00:17:59.880
<v Speaker 2>A sploit, okay.

346
00:18:00.200 --> 00:18:02.480
<v Speaker 3>And when you're dealing with data, especially if you're involved

347
00:18:02.519 --> 00:18:06.359
<v Speaker 3>in incident response after a breach, remember the order of volatility.

348
00:18:06.680 --> 00:18:08.079
<v Speaker 2>Order volatility, what's that.

349
00:18:08.160 --> 00:18:10.559
<v Speaker 3>It's a forensics principle. It basically tells you what evidence

350
00:18:10.599 --> 00:18:14.119
<v Speaker 3>disappears fastest. Data in memory RAM is far more volatile,

351
00:18:14.119 --> 00:18:16.839
<v Speaker 3>meaning it's lost much quicker than data sitting on a

352
00:18:16.880 --> 00:18:19.720
<v Speaker 3>hard drive. So if you're the first responder to an incident,

353
00:18:20.359 --> 00:18:23.200
<v Speaker 3>understanding this tells you what evidence you need to prioritize

354
00:18:23.200 --> 00:18:26.720
<v Speaker 3>capturing immediately because it might literally vanish if machine reboots

355
00:18:26.799 --> 00:18:27.640
<v Speaker 3>or loses power.

356
00:18:27.880 --> 00:18:31.599
<v Speaker 1>Ah okay, capture the most fleeting evidence first, got it.

357
00:18:32.039 --> 00:18:35.960
<v Speaker 1>That's critical for incident response and to really keep secrets

358
00:18:36.000 --> 00:18:39.839
<v Speaker 1>safe during the test itself. Security testers rely heavily on

359
00:18:40.000 --> 00:18:43.720
<v Speaker 1>full disk encryption right like file vault for Max or

360
00:18:43.880 --> 00:18:45.119
<v Speaker 1>BitLocker for Windows.

361
00:18:45.200 --> 00:18:48.640
<v Speaker 3>Absolutely non negotiable. Full disc encryption on the testing laptop.

362
00:18:48.920 --> 00:18:52.279
<v Speaker 3>Encrypted backups too. And if you absolutely must use cloud

363
00:18:52.359 --> 00:18:55.039
<v Speaker 3>storage for some reason, maybe sharing a draft report, manually

364
00:18:55.160 --> 00:18:57.880
<v Speaker 3>ENCRYPTO files before they even touch the cloud. Use something

365
00:18:57.920 --> 00:19:01.160
<v Speaker 3>strong like PDP or AES encrypt within a ZIP file.

366
00:19:01.640 --> 00:19:04.680
<v Speaker 3>Don't rely on the cloud provider's encryptional loan for highly

367
00:19:04.720 --> 00:19:05.839
<v Speaker 3>sensitive stuff.

368
00:19:05.640 --> 00:19:08.720
<v Speaker 1>Right, encrypt it yourself first. And finally, something that sounds

369
00:19:08.759 --> 00:19:12.079
<v Speaker 1>may be less technical but is crucial liability insurance.

370
00:19:12.440 --> 00:19:17.319
<v Speaker 3>Oh indispensable, especially for independent consultants. Spenson mentiones his own

371
00:19:17.519 --> 00:19:19.680
<v Speaker 3>one million dollars coverage.

372
00:19:19.240 --> 00:19:20.559
<v Speaker 2>A million euros.

373
00:19:20.640 --> 00:19:24.279
<v Speaker 3>Yeah, and why because things can quickly go sideways during

374
00:19:24.279 --> 00:19:28.000
<v Speaker 3>a test, even with the best intentions. One wrong move,

375
00:19:28.359 --> 00:19:32.400
<v Speaker 3>one unintended system crash, one misconfiguration, and you can be

376
00:19:32.400 --> 00:19:35.759
<v Speaker 3>facing a massive lawsuit. That insurance can be a lifesaver

377
00:19:35.880 --> 00:19:38.680
<v Speaker 3>financially and professionally. Don't test without it.

378
00:19:38.759 --> 00:19:42.440
<v Speaker 1>Found advice. Okay, So preparations are done. Insurance is in place.

379
00:19:42.880 --> 00:19:45.559
<v Speaker 1>Let's step into the hacking phase of the security test,

380
00:19:46.000 --> 00:19:48.759
<v Speaker 1>where the hands on technical work truly begins. This phase

381
00:19:48.799 --> 00:19:53.160
<v Speaker 1>generally involves three key steps. Right, identify, exploit, and then report.

382
00:19:53.400 --> 00:19:54.200
<v Speaker 3>That's the core loop.

383
00:19:54.480 --> 00:19:59.160
<v Speaker 1>Identify exploit report Okay, First up identifying vulnerabilities. This starts

384
00:19:59.160 --> 00:20:01.440
<v Speaker 1>with footprinting, you said, which is passive.

385
00:20:01.759 --> 00:20:05.680
<v Speaker 3>Right. Footprinting is all about passive information gathering, no direct

386
00:20:05.680 --> 00:20:08.960
<v Speaker 3>interaction with the target system. Yet you're using public resources

387
00:20:09.200 --> 00:20:12.519
<v Speaker 3>things like intel techniques. May be checking public whois servers

388
00:20:12.519 --> 00:20:15.920
<v Speaker 3>for domain registration info, looking at job posting, social media,

389
00:20:16.279 --> 00:20:18.720
<v Speaker 3>gathering intelligence before anyone even knows you're looking.

390
00:20:18.920 --> 00:20:23.480
<v Speaker 2>Okay, reconnaissance from AFAR. Then comes scanning. That's active.

391
00:20:23.680 --> 00:20:27.240
<v Speaker 3>Yes, scanning is active. Now you're directly probing the target

392
00:20:27.279 --> 00:20:30.920
<v Speaker 3>network to map out available hosts and services, and the

393
00:20:30.960 --> 00:20:33.960
<v Speaker 3>tool for this is almost always end map. It's the

394
00:20:34.079 --> 00:20:39.400
<v Speaker 3>undisputed industry standard network scanner. For very good reason. NMAP

395
00:20:39.440 --> 00:20:42.119
<v Speaker 3>can tell you what IP addresses are live, what ports

396
00:20:42.119 --> 00:20:44.440
<v Speaker 3>are open, closed, or may be filtered by a firewall.

397
00:20:44.920 --> 00:20:48.240
<v Speaker 3>It can often identify the services running on those open ports,

398
00:20:48.480 --> 00:20:50.599
<v Speaker 3>and even make a decent guess at the operating system

399
00:20:50.640 --> 00:20:52.440
<v Speaker 3>it's like taking an X ray of the network perimeter.

400
00:20:52.640 --> 00:20:54.839
<v Speaker 2>En MAP got it. And you mentioned an anecdote earlier

401
00:20:54.880 --> 00:20:58.079
<v Speaker 2>about finding something unexpected during a scan the black box.

402
00:20:58.319 --> 00:21:01.200
<v Speaker 3>Ah, yeah, that was sensence story. During a scan and

403
00:21:01.319 --> 00:21:05.000
<v Speaker 3>MAPP found this mysterious device, no name, no logo, root

404
00:21:05.039 --> 00:21:08.319
<v Speaker 3>password unknown, but it was clearly recording incoming calls for

405
00:21:08.359 --> 00:21:10.759
<v Speaker 3>a call center and MAP revealed it was running a

406
00:21:10.759 --> 00:21:14.119
<v Speaker 3>web server on an unusual port. The client had insisted

407
00:21:14.119 --> 00:21:16.759
<v Speaker 3>on a true hacker test, a full assault or nothing. Yeah.

408
00:21:16.799 --> 00:21:18.960
<v Speaker 3>So the tester, kind of bracing the role of a

409
00:21:19.000 --> 00:21:22.359
<v Speaker 3>clueless script kitty for a moment, found publicly available proof

410
00:21:22.359 --> 00:21:27.400
<v Speaker 3>of concept code for a known Apache vulnerability CVE twenty

411
00:21:27.440 --> 00:21:29.839
<v Speaker 3>eleven three one ninety two, known as a patche killer.

412
00:21:30.400 --> 00:21:32.920
<v Speaker 3>They ran the code against that black box's web server,

413
00:21:33.200 --> 00:21:37.240
<v Speaker 3>and much to their surprise, the Apache server crashed spectacularly,

414
00:21:37.319 --> 00:21:39.599
<v Speaker 3>took down the entire call center system that relied on it.

415
00:21:39.720 --> 00:21:42.119
<v Speaker 2>Oh wow, chaos, I bet total chaos.

416
00:21:42.119 --> 00:21:45.839
<v Speaker 3>Apparently manager's running around, But it was a vivid, albeit

417
00:21:45.920 --> 00:21:48.559
<v Speaker 3>disruptive reminder of the importance of that get out of

418
00:21:48.599 --> 00:21:51.599
<v Speaker 3>jail free card and the potential impact of even known

419
00:21:51.759 --> 00:21:53.960
<v Speaker 3>older vulnerabilities on critical systems.

420
00:21:54.039 --> 00:21:55.079
<v Speaker 2>Definitely illustrates the point.

421
00:21:55.119 --> 00:21:58.519
<v Speaker 1>Okay, so after scanning with n MAP, what's next in identification.

422
00:21:58.079 --> 00:22:01.720
<v Speaker 3>NIX comes enumeration is deeper probe. Now you're trying to

423
00:22:01.720 --> 00:22:05.480
<v Speaker 3>map the services you found during scanning to known vulnerabilities.

424
00:22:05.640 --> 00:22:10.079
<v Speaker 3>Get more detail. Tools like fearce can perform DNS brute

425
00:22:10.079 --> 00:22:14.119
<v Speaker 3>forcing to find subdomains. The harvester can scrape search engines

426
00:22:14.119 --> 00:22:16.839
<v Speaker 3>and other sources to pull out email addresses associated with

427
00:22:16.880 --> 00:22:20.359
<v Speaker 3>the domain, and resources like netcraft are fantastic. They gather

428
00:22:20.440 --> 00:22:25.559
<v Speaker 3>extensive web presence information, historical IP addresses, hosting companies, domain registrars,

429
00:22:25.640 --> 00:22:28.519
<v Speaker 3>technologies used on a website. It's all about building a

430
00:22:28.559 --> 00:22:29.920
<v Speaker 3>detailed picture of the target.

431
00:22:30.079 --> 00:22:32.960
<v Speaker 1>Okay, Digging deeper and another critical part of identification you

432
00:22:33.000 --> 00:22:35.799
<v Speaker 1>mentioned is checking for data from hacked sites.

433
00:22:36.119 --> 00:22:38.240
<v Speaker 3>Yeah, this is crucial. We've all heard of major breaches,

434
00:22:38.319 --> 00:22:42.000
<v Speaker 3>right like the Ashley Madison hack. Member profiles were leaked online,

435
00:22:42.279 --> 00:22:46.400
<v Speaker 3>caused immense embarrassment, blackmail attempts, tragically, even suicides were linked

436
00:22:46.400 --> 00:22:50.000
<v Speaker 3>to it. So resources like Troy hunts Have I been pwned?

437
00:22:50.160 --> 00:22:53.519
<v Speaker 3>Website are invaluable. You can check if your email addresses

438
00:22:53.599 --> 00:22:57.480
<v Speaker 3>or addresses associated with the target organization have been compromised

439
00:22:57.519 --> 00:23:01.200
<v Speaker 3>in known data breaches. That leaked data often contains passwords

440
00:23:01.200 --> 00:23:02.519
<v Speaker 3>that people reuse elsewhere.

441
00:23:02.759 --> 00:23:05.799
<v Speaker 1>Right, password reuse is a huge problem. Okay, So once

442
00:23:05.920 --> 00:23:11.519
<v Speaker 1>vulnerabilities are identified through footprinting, scanning, enumeration, checking breach data,

443
00:23:11.599 --> 00:23:15.039
<v Speaker 1>the next step is exploitation. This is the actual act

444
00:23:15.160 --> 00:23:17.480
<v Speaker 1>of gaining unauthorized access exactly.

445
00:23:17.680 --> 00:23:19.400
<v Speaker 3>This is where you try to leverage the weakness as

446
00:23:19.440 --> 00:23:19.880
<v Speaker 3>you've found.

447
00:23:20.119 --> 00:23:22.559
<v Speaker 1>And password attacks seem like a common starting point. You

448
00:23:22.640 --> 00:23:24.759
<v Speaker 1>called it the holy grail of authentication.

449
00:23:25.119 --> 00:23:27.720
<v Speaker 3>They often are because if you can get valid credentials,

450
00:23:27.720 --> 00:23:28.960
<v Speaker 3>you can often walk right in.

451
00:23:29.039 --> 00:23:29.279
<v Speaker 2>Yeah.

452
00:23:29.319 --> 00:23:32.359
<v Speaker 3>Brute force attacks are a key technique here. Tools like

453
00:23:32.440 --> 00:23:37.200
<v Speaker 3>Hydra or another one called Medusa can systematically try thousands, millions,

454
00:23:37.279 --> 00:23:40.839
<v Speaker 3>even billions of password combinations against the log in prompt.

455
00:23:41.000 --> 00:23:45.160
<v Speaker 3>They can target various services FDP, SSH, HTTP, basic off

456
00:23:45.599 --> 00:23:50.279
<v Speaker 3>databases like my sqel, remote desktop, RDP, Windows file shares, SMB,

457
00:23:50.599 --> 00:23:54.160
<v Speaker 3>just hammering away with dictionaries of common passwords or character combinations.

458
00:23:54.200 --> 00:23:56.039
<v Speaker 2>And these can be online or offline attacks.

459
00:23:56.119 --> 00:23:59.400
<v Speaker 3>Right correct, Online attacks try to log in directly to

460
00:23:59.440 --> 00:24:04.319
<v Speaker 3>the live service. They're slower and risk account lockouts. Offline

461
00:24:04.319 --> 00:24:07.200
<v Speaker 3>attacks are where you've already obtained password hashes, maybe from

462
00:24:07.240 --> 00:24:10.160
<v Speaker 3>a database dump or that ht password file we mentioned.

463
00:24:10.680 --> 00:24:14.000
<v Speaker 3>Cracking hash is offline is much faster because you're not

464
00:24:14.079 --> 00:24:16.799
<v Speaker 3>limited by network speed or log in attempt swaddles.

465
00:24:16.920 --> 00:24:20.640
<v Speaker 1>Okay, so to protect against this, hashing passwords is critical.

466
00:24:21.079 --> 00:24:23.880
<v Speaker 1>But just hashing isn't enough anymore. You need salting.

467
00:24:24.079 --> 00:24:26.440
<v Speaker 3>Absolutely. Hashing is just the first step. It's a one

468
00:24:26.480 --> 00:24:29.039
<v Speaker 3>way function. Like creating a fingerprint for the password. You

469
00:24:29.119 --> 00:24:32.720
<v Speaker 3>run password one two three through an algorithm like SAHA

470
00:24:32.799 --> 00:24:35.920
<v Speaker 3>two five six, you get a unique looking string of characters.

471
00:24:35.960 --> 00:24:38.119
<v Speaker 3>You can't easily go back from the hash to password

472
00:24:38.119 --> 00:24:42.200
<v Speaker 3>one two three, But if two users have the same passwords,

473
00:24:42.200 --> 00:24:45.599
<v Speaker 3>they'll have the same hash without salt. Attackers used to

474
00:24:45.680 --> 00:24:50.160
<v Speaker 3>use pre computed rainbow tables massive databases of common passwords

475
00:24:50.359 --> 00:24:53.359
<v Speaker 3>and their corresponding hashes to crack these very quickly. That's

476
00:24:53.359 --> 00:24:55.680
<v Speaker 3>where salting comes in. Before you hash the password, you

477
00:24:55.680 --> 00:24:57.960
<v Speaker 3>add a unique random value, the salt, to it. Each

478
00:24:58.039 --> 00:25:00.680
<v Speaker 3>user gets a different salt. So now even if two

479
00:25:00.799 --> 00:25:04.000
<v Speaker 3>users have the same password password one two three, their

480
00:25:04.039 --> 00:25:07.039
<v Speaker 3>stored hashes will be completely different because their salts are different.

481
00:25:07.319 --> 00:25:10.039
<v Speaker 3>Spens and puts it vividly. Too much salt can make

482
00:25:10.079 --> 00:25:13.720
<v Speaker 3>any rainbow fade. It renders those pre computed rainbow tables.

483
00:25:13.839 --> 00:25:17.079
<v Speaker 3>Useless attackers are forced to generate new tables for each

484
00:25:17.200 --> 00:25:20.799
<v Speaker 3>unique salt or brute force each salted hash individually, which

485
00:25:20.839 --> 00:25:25.240
<v Speaker 3>is computationally way way more expensive practically impossible on a

486
00:25:25.319 --> 00:25:25.960
<v Speaker 3>large scale.

487
00:25:26.000 --> 00:25:29.000
<v Speaker 1>So salting makes a massive difference. What should people use?

488
00:25:29.279 --> 00:25:32.880
<v Speaker 3>Algorithms like b crypt or ar gone two are considered

489
00:25:33.000 --> 00:25:36.720
<v Speaker 3>very solid foundations for secure password storage today. They incorporate

490
00:25:36.759 --> 00:25:39.680
<v Speaker 3>salting and are designed to be slow, making brute forcing

491
00:25:39.759 --> 00:25:44.279
<v Speaker 3>even harder. MD five and SAHA one for passwords absolutely

492
00:25:44.319 --> 00:25:45.200
<v Speaker 3>not anymore.

493
00:25:44.920 --> 00:25:46.279
<v Speaker 2>Okay, be crypt. Good tip.

494
00:25:46.480 --> 00:25:48.680
<v Speaker 1>And here's something you mentioned earlier that seems related, but

495
00:25:48.759 --> 00:25:51.200
<v Speaker 1>simpler default accounts and their passwords.

496
00:25:51.240 --> 00:25:51.960
<v Speaker 2>That's still a thing.

497
00:25:52.200 --> 00:25:57.599
<v Speaker 3>Shockingly, yes, it's amazing how many devices, routers, printers, webcams,

498
00:25:57.680 --> 00:26:01.839
<v Speaker 3>industrial control systems still ship with incredibly simple, well known

499
00:26:01.880 --> 00:26:05.119
<v Speaker 3>to fault credentials. Spenson uses the example of many Netgear

500
00:26:05.160 --> 00:26:08.079
<v Speaker 3>devices shipping with admin as the username and password is

501
00:26:08.079 --> 00:26:10.599
<v Speaker 3>the password. It's the absolute equivalent of building a Fort

502
00:26:10.720 --> 00:26:13.640
<v Speaker 3>Knox like secure house but leaving the front door wide

503
00:26:13.640 --> 00:26:16.480
<v Speaker 3>open with the key labeled key hanging.

504
00:26:16.279 --> 00:26:21.440
<v Speaker 2>Next to it just admin password unbelievable, always change defaults. Okay,

505
00:26:21.480 --> 00:26:23.319
<v Speaker 2>let's talk about web applications specifically.

506
00:26:23.680 --> 00:26:26.279
<v Speaker 1>A crucial guide here is the OAS top ten list

507
00:26:26.359 --> 00:26:27.720
<v Speaker 1>right definitely OAS.

508
00:26:27.839 --> 00:26:31.000
<v Speaker 3>The Open Web Application Security Project publishes this list regularly.

509
00:26:31.279 --> 00:26:33.799
<v Speaker 3>It aims to raise awareness about the most critical security

510
00:26:33.880 --> 00:26:37.640
<v Speaker 3>risks facing web applications. It's essential reading for developers and testers.

511
00:26:37.839 --> 00:26:39.559
<v Speaker 1>Let's run through a few key types from the list,

512
00:26:39.640 --> 00:26:40.680
<v Speaker 1>maybe with examples.

513
00:26:40.880 --> 00:26:42.119
<v Speaker 2>How about injection flaws?

514
00:26:42.359 --> 00:26:45.799
<v Speaker 3>Right? Injection is a huge category. This is where untrusted

515
00:26:45.839 --> 00:26:48.079
<v Speaker 3>input from a user gets sent to an interpreter like

516
00:26:48.119 --> 00:26:51.039
<v Speaker 3>a database or the operating system shell as part of

517
00:26:51.079 --> 00:26:55.000
<v Speaker 3>a command or query without being properly cleaned first. The

518
00:26:55.039 --> 00:26:58.440
<v Speaker 3>classic example is seql injection. Imagine a website login form.

519
00:26:58.920 --> 00:27:01.839
<v Speaker 3>Instead of typing their user name and attacker types something

520
00:27:01.960 --> 00:27:05.039
<v Speaker 3>like anna or R one one anna or R one

521
00:27:05.119 --> 00:27:07.920
<v Speaker 3>one one one Yeah, the single quote breaks out of

522
00:27:07.960 --> 00:27:11.559
<v Speaker 3>the expected username string or R one is one is

523
00:27:11.599 --> 00:27:14.599
<v Speaker 3>a condition that's always true, and the often comments out

524
00:27:14.599 --> 00:27:16.599
<v Speaker 3>the rest of the original SEQL query, which might have

525
00:27:16.680 --> 00:27:19.920
<v Speaker 3>checked the password if the website code just blindly sticks

526
00:27:19.920 --> 00:27:22.880
<v Speaker 3>that input into its database query the database might interpret

527
00:27:22.920 --> 00:27:25.279
<v Speaker 3>one ones as true for every row, so instead of

528
00:27:25.279 --> 00:27:27.519
<v Speaker 3>just returning and as details, it can return all user

529
00:27:27.599 --> 00:27:30.000
<v Speaker 3>names and maybe they're hashed passwords from the user table.

530
00:27:30.119 --> 00:27:32.880
<v Speaker 2>Wow, just from typing that into the username box exactly.

531
00:27:33.160 --> 00:27:36.799
<v Speaker 3>It shows how a single seemingly innocuous input field can

532
00:27:36.839 --> 00:27:39.720
<v Speaker 3>become a literal doorway into your entire database if you

533
00:27:39.759 --> 00:27:43.680
<v Speaker 3>don't do proper input validation and use parameterized queries. All

534
00:27:43.720 --> 00:27:45.960
<v Speaker 3>the hacker needs is a web browser and some knowledge

535
00:27:45.960 --> 00:27:46.440
<v Speaker 3>of SQL.

536
00:27:46.640 --> 00:27:51.960
<v Speaker 1>Okay, SQL injection scary. What about broken authentication and session management?

537
00:27:52.079 --> 00:27:54.519
<v Speaker 3>This covers a whole range of issues that let attackers

538
00:27:54.559 --> 00:27:59.519
<v Speaker 3>compromise passwords, keys, session tokens, basically anything that lets them

539
00:27:59.559 --> 00:28:03.119
<v Speaker 3>in person and eight legitimate users spensin highlights an example

540
00:28:03.119 --> 00:28:05.880
<v Speaker 3>of a web app where the session cookie, the little

541
00:28:06.039 --> 00:28:08.279
<v Speaker 3>piece of data that keeps you logged in, was set

542
00:28:08.279 --> 00:28:09.920
<v Speaker 3>to expire way off in the future, like in.

543
00:28:09.920 --> 00:28:12.319
<v Speaker 2>Twenty seventeen, twenty seventeen years later.

544
00:28:12.480 --> 00:28:15.720
<v Speaker 1>Yeah, So if user just close their browser without explicitly

545
00:28:15.759 --> 00:28:18.759
<v Speaker 1>logging out, anyone else who could access that browser later,

546
00:28:18.839 --> 00:28:21.599
<v Speaker 1>maybe on a shared computer, could potentially just reopen it

547
00:28:21.640 --> 00:28:23.200
<v Speaker 1>and still be logged in as that user. They could

548
00:28:23.200 --> 00:28:27.079
<v Speaker 1>piggyback on the old session. Another related issue he found

549
00:28:27.119 --> 00:28:31.319
<v Speaker 1>was just poorly protected passwords, like discovering a database table

550
00:28:31.319 --> 00:28:34.119
<v Speaker 1>where user passwords were stored in clear text, no hashing,

551
00:28:34.160 --> 00:28:36.960
<v Speaker 1>no salting, just plain text. If a hacker gets access

552
00:28:36.960 --> 00:28:39.880
<v Speaker 1>to that database, it's game over instantly for every single user.

553
00:28:39.759 --> 00:28:43.519
<v Speaker 3>Clear text passwords. That's just wow, basic stuff missed. Again.

554
00:28:43.839 --> 00:28:48.440
<v Speaker 3>It's astonishing how often these fundamental authentication problems persist. These

555
00:28:48.440 --> 00:28:52.880
<v Speaker 3>aren't obscure attacks. They're often basic design flaws or misconfigurations

556
00:28:52.920 --> 00:28:55.880
<v Speaker 3>known for decades. Sometimes the biggest threats are the most

557
00:28:55.920 --> 00:28:58.119
<v Speaker 3>obvious ones, just waiting to be found.

558
00:28:58.400 --> 00:29:02.440
<v Speaker 1>Okay, next, positive data exposure? What does that cover?

559
00:29:02.720 --> 00:29:06.319
<v Speaker 3>This happens when applications don't properly protect sensitive data like

560
00:29:06.400 --> 00:29:10.920
<v Speaker 3>financial info, health records, credentials, leading to its accidental exposure.

561
00:29:11.319 --> 00:29:14.599
<v Speaker 3>Tools called URL fuzzers, like one named folder Boulder, can

562
00:29:14.640 --> 00:29:18.359
<v Speaker 3>automatically probe web servers for hidden or forgotten files and directories.

563
00:29:18.799 --> 00:29:22.079
<v Speaker 3>Spenson describes using one to find and dot ht password

564
00:29:22.119 --> 00:29:24.559
<v Speaker 3>a file just sitting there on a web server. That

565
00:29:24.599 --> 00:29:27.799
<v Speaker 3>file often contains usernames and hashed passwords. For basic web.

566
00:29:27.680 --> 00:29:30.599
<v Speaker 2>Authentication, finding password files just lying around.

567
00:29:30.440 --> 00:29:33.920
<v Speaker 3>Yeah, sometimes configuration files or backup files get left in

568
00:29:33.960 --> 00:29:37.519
<v Speaker 3>web accessible locations by mistake. And related to this is

569
00:29:37.599 --> 00:29:41.680
<v Speaker 3>clear text communication setting sensitive data without encryption. You talked

570
00:29:41.720 --> 00:29:45.359
<v Speaker 3>about wire Shark. The network's Niver Stenson showed how easily

571
00:29:45.400 --> 00:29:49.000
<v Speaker 3>it could intercept log ins if they weren't encrypted using HTTPS.

572
00:29:49.440 --> 00:29:53.640
<v Speaker 3>He saw Dave's password transmitted as baseball in plain text.

573
00:29:53.839 --> 00:29:57.039
<v Speaker 2>Just baseball flying across the network exactly now.

574
00:29:57.079 --> 00:29:59.799
<v Speaker 3>To intercept that traffic usually requires the attacker to be

575
00:29:59.839 --> 00:30:03.119
<v Speaker 3>on the same network and maybe use techniques like ARP poisoning,

576
00:30:03.200 --> 00:30:06.359
<v Speaker 3>digitally tricking computers into setting traffic their way, or setting

577
00:30:06.400 --> 00:30:08.799
<v Speaker 3>up a man in the middle MITM attack, maybe via

578
00:30:08.880 --> 00:30:11.240
<v Speaker 3>a road Wi Fi hotspot. But if the log in

579
00:30:11.319 --> 00:30:13.920
<v Speaker 3>isn't encrypted, once they intercept it, the password is right.

580
00:30:13.839 --> 00:30:16.720
<v Speaker 2>There hg TTPs everywhere is key? Then all right? What

581
00:30:16.799 --> 00:30:19.200
<v Speaker 2>a security misconfiguration sounds broad?

582
00:30:19.440 --> 00:30:22.200
<v Speaker 3>It is broad, but very common. This covers a wide

583
00:30:22.279 --> 00:30:26.440
<v Speaker 3>range of issues. Unpacked servers running software with known flaws,

584
00:30:26.559 --> 00:30:30.960
<v Speaker 3>leaving default accounts enabled overleave, verbose error messages that leak information,

585
00:30:31.480 --> 00:30:36.319
<v Speaker 3>exposing configuration files that dot ahgpasswood file discovery. We just mentioned.

586
00:30:36.480 --> 00:30:40.000
<v Speaker 3>That's both sensitive data exposure and potentially a security misconfiguration

587
00:30:40.039 --> 00:30:42.960
<v Speaker 3>if it shouldn't have been web accessible. Stunts in details,

588
00:30:42.960 --> 00:30:46.079
<v Speaker 3>taking that found dot hd passwoot file, figuring out a

589
00:30:46.200 --> 00:30:49.640
<v Speaker 3>used apaches version of MDFI hashing, which is weak, and

590
00:30:49.680 --> 00:30:53.160
<v Speaker 3>then using a powerful offline hashtracking tool called hashcat with

591
00:30:53.240 --> 00:30:56.720
<v Speaker 3>big password dictionary and dot crack. The password for the

592
00:30:56.799 --> 00:30:59.240
<v Speaker 3>root user in that file turned out to be ADC one.

593
00:30:59.240 --> 00:31:02.519
<v Speaker 1>Two three one two three for root Oh dear yep.

594
00:31:02.920 --> 00:31:05.880
<v Speaker 3>Again not a complex hack targeting the hashing algorithm itself,

595
00:31:05.880 --> 00:31:08.720
<v Speaker 3>but just exploiting a terrible password choice combined with an

596
00:31:08.720 --> 00:31:10.440
<v Speaker 3>exposed hash file. Critical oversight.

597
00:31:10.559 --> 00:31:14.079
<v Speaker 2>Okay, one more from OAS cross site request forgery or CSRF.

598
00:31:14.160 --> 00:31:15.359
<v Speaker 2>This one sounds complicated.

599
00:31:15.519 --> 00:31:18.559
<v Speaker 3>It can seem tricky, but the concept is powerful. It's

600
00:31:18.559 --> 00:31:23.680
<v Speaker 3>sometimes called a one click attack or session writing. Imagine

601
00:31:23.720 --> 00:31:26.720
<v Speaker 3>Maria is logged into her online bank account in one

602
00:31:26.759 --> 00:31:30.440
<v Speaker 3>browser tab, then in another tab, she visits a news

603
00:31:30.519 --> 00:31:35.440
<v Speaker 3>website that unfortunately has been hacked. Unbeknownst to Maria, the

604
00:31:35.519 --> 00:31:39.720
<v Speaker 3>hacked news site contains some hidden malicious HTML code, maybe

605
00:31:39.720 --> 00:31:43.359
<v Speaker 3>an image tag who source src is actually a URL

606
00:31:43.400 --> 00:31:45.839
<v Speaker 3>that performs an action on her bank's website, like a

607
00:31:45.880 --> 00:31:50.440
<v Speaker 3>transfer exactly. The malicious code tricks Maria's browser into automatically

608
00:31:50.480 --> 00:31:53.160
<v Speaker 3>sending a request to her bank's site to transfer funds.

609
00:31:53.599 --> 00:31:56.440
<v Speaker 3>Because Maria is already logged into her bank, her browser

610
00:31:56.480 --> 00:31:59.759
<v Speaker 3>automatically includes her session cookie with that request. The request

611
00:31:59.799 --> 00:32:01.839
<v Speaker 3>might look legitimate to the bank it came from Maria's

612
00:32:01.839 --> 00:32:05.000
<v Speaker 3>browser with her valid session cookie, but the crucial part,

613
00:32:05.279 --> 00:32:08.319
<v Speaker 3>like the transfer to account number variable, has been sneakily

614
00:32:08.359 --> 00:32:11.079
<v Speaker 3>set by the hacker's code on the malicious news site, so.

615
00:32:11.039 --> 00:32:12.799
<v Speaker 1>The bank thinks Maria wanted to send money to the

616
00:32:12.839 --> 00:32:14.519
<v Speaker 1>hacker precisely.

617
00:32:14.720 --> 00:32:17.039
<v Speaker 3>Even though Maria didn't click anything on the bank site

618
00:32:17.079 --> 00:32:19.920
<v Speaker 3>to initiate it, the request was forged by the other

619
00:32:19.960 --> 00:32:22.839
<v Speaker 3>site she visited. All the hacker needs is from Maria

620
00:32:22.920 --> 00:32:25.640
<v Speaker 3>to visit their compromised site while she's logged into the

621
00:32:25.720 --> 00:32:27.599
<v Speaker 3>vulnerable target site the bank.

622
00:32:27.920 --> 00:32:30.319
<v Speaker 2>That's sneaky. How do you sites defend against that?

623
00:32:30.599 --> 00:32:35.240
<v Speaker 3>Good defenses involve things like anti CSRF tokens unique unpredictable

624
00:32:35.319 --> 00:32:37.880
<v Speaker 3>values to the website, embeds in its forms, and checks

625
00:32:37.920 --> 00:32:40.359
<v Speaker 3>upon submission. The attacker on the other site won't know

626
00:32:40.440 --> 00:32:43.960
<v Speaker 3>the correct token value from Maria's session. B SSRF highlights

627
00:32:43.960 --> 00:32:47.480
<v Speaker 3>how actions can be triggered across sites if defenses aren't robust.

628
00:32:47.720 --> 00:32:49.839
<v Speaker 2>Okay, so those are some heavy hitters from oas.

629
00:32:49.839 --> 00:32:51.960
<v Speaker 1>If you're listening and thinking, wow, I'd like to try this,

630
00:32:52.160 --> 00:32:54.400
<v Speaker 1>But legally, where can people practice?

631
00:32:54.640 --> 00:32:59.599
<v Speaker 3>Great question? There are excellent legal resources. The damn Vulnerable

632
00:32:59.640 --> 00:33:03.920
<v Speaker 3>Web a DVWA is a PHP MI SQL web application

633
00:33:04.359 --> 00:33:08.200
<v Speaker 3>specifically designed to be full of common vulnerabilities for practice.

634
00:33:08.400 --> 00:33:11.119
<v Speaker 3>Google also has something called the Firing Range, which is

635
00:33:11.160 --> 00:33:15.039
<v Speaker 3>a test bed for web vulnerabilities. And participating in legitimate

636
00:33:15.039 --> 00:33:17.920
<v Speaker 3>bug bounty programs on platforms like hacker one or bug

637
00:33:17.960 --> 00:33:20.839
<v Speaker 3>crowd is another great way. Companies want you to find

638
00:33:20.839 --> 00:33:23.400
<v Speaker 3>flaws in their systems within the rules of the program

639
00:33:23.599 --> 00:33:24.720
<v Speaker 3>and will often pay you for it.

640
00:33:24.839 --> 00:33:28.599
<v Speaker 1>Practice legally absolutely Okay, So the hacking phase, identify and

641
00:33:28.680 --> 00:33:31.880
<v Speaker 1>exploit is done. Now comes what you said is arguably

642
00:33:31.920 --> 00:33:33.000
<v Speaker 1>the most important.

643
00:33:32.640 --> 00:33:33.640
<v Speaker 2>Part the report.

644
00:33:33.799 --> 00:33:36.720
<v Speaker 3>Without a doubt, the final report is a culmination of everything.

645
00:33:36.799 --> 00:33:39.119
<v Speaker 3>It's not something to be thrown together at the last minute.

646
00:33:39.200 --> 00:33:42.279
<v Speaker 3>It really needs to be a continuous effort documenting findings

647
00:33:42.279 --> 00:33:42.680
<v Speaker 3>as you go.

648
00:33:42.960 --> 00:33:44.880
<v Speaker 2>What makes a good report structure.

649
00:33:44.680 --> 00:33:49.079
<v Speaker 3>Clarity, and audience awareness are key. It needs an executive summary,

650
00:33:49.480 --> 00:33:53.960
<v Speaker 3>short non technical, high level for the managers and decision makers.

651
00:33:54.160 --> 00:33:56.880
<v Speaker 3>What are the biggest risks, what's the business impact? What

652
00:33:56.960 --> 00:34:00.519
<v Speaker 3>needs to happen? Then it needs detailed technical to descriptions

653
00:34:00.519 --> 00:34:04.119
<v Speaker 3>for the IT team exactly what vulnerabilities were found, how

654
00:34:04.119 --> 00:34:08.639
<v Speaker 3>are they exploited? Include screenshots, logs, reproduction steps, and most importantly,

655
00:34:09.199 --> 00:34:13.239
<v Speaker 3>clear actionable recommendations. Not just fix this, but how to

656
00:34:13.280 --> 00:34:17.760
<v Speaker 3>fix it? Prioritize based on risk. Spinson suggests always asking yourself,

657
00:34:17.960 --> 00:34:19.880
<v Speaker 3>if I was the manager receiving this, what kind of

658
00:34:19.880 --> 00:34:22.000
<v Speaker 3>report would I want? What would help me actually get

659
00:34:22.000 --> 00:34:22.559
<v Speaker 3>things fixed?

660
00:34:22.639 --> 00:34:25.639
<v Speaker 1>That's a great perspective and delivery. These reports contain super

661
00:34:25.639 --> 00:34:26.559
<v Speaker 1>sensitive findings.

662
00:34:26.719 --> 00:34:31.199
<v Speaker 3>It's extremely sensitive, so deliver securely. Don't just email it unencrypted.

663
00:34:31.639 --> 00:34:33.719
<v Speaker 3>A common method is to put the report in an

664
00:34:33.800 --> 00:34:37.840
<v Speaker 3>encrypted ZIP file using strong AES encryption, not weak legacy

665
00:34:37.960 --> 00:34:41.079
<v Speaker 3>zip crypto all right, Then send an encrypted file via

666
00:34:41.159 --> 00:34:44.559
<v Speaker 3>one channel like email, and the password via a completely

667
00:34:44.559 --> 00:34:48.119
<v Speaker 3>separate channel like a phone call or secure message. Minimize

668
00:34:48.159 --> 00:34:50.400
<v Speaker 3>the risk of interception. You know, the art of reporting

669
00:34:50.480 --> 00:34:54.519
<v Speaker 3>is really about translating that technical jargon into actionable business intelligence.

670
00:34:54.960 --> 00:34:58.519
<v Speaker 3>A truly excellent report tells a story. Here's what we found.

671
00:34:58.599 --> 00:35:00.679
<v Speaker 3>Here's what it means to your business in terms of risk,

672
00:35:00.880 --> 00:35:02.599
<v Speaker 3>and here's exactly what you need to do about it.

673
00:35:02.800 --> 00:35:04.679
<v Speaker 3>The goal isn't just to point out flaws, but to

674
00:35:04.719 --> 00:35:07.559
<v Speaker 3>empower the organization to fix them effectively.

675
00:35:07.159 --> 00:35:08.199
<v Speaker 2>Right, making it useful.

676
00:35:08.239 --> 00:35:11.079
<v Speaker 1>Now there's the often overlooked cost of security. How do

677
00:35:11.119 --> 00:35:14.159
<v Speaker 1>you even put a price tag on a potential vulnerability

678
00:35:14.239 --> 00:35:15.599
<v Speaker 1>or a breach that hasn't happened yet.

679
00:35:15.639 --> 00:35:16.559
<v Speaker 2>It seems abstract.

680
00:35:16.960 --> 00:35:19.079
<v Speaker 3>It is abstract, but you can try to quantify. One

681
00:35:19.119 --> 00:35:22.960
<v Speaker 3>method is calculating the annualized loss expectancy or AL. The

682
00:35:23.000 --> 00:35:26.760
<v Speaker 3>formula is basically AL equal a single loss expectancy SL

683
00:35:27.039 --> 00:35:29.280
<v Speaker 3>times the annualized rate of occurrence.

684
00:35:29.159 --> 00:35:31.840
<v Speaker 2>RO SLA times arka break that down.

685
00:35:32.159 --> 00:35:35.239
<v Speaker 3>SL is how much you estimate a single incident would

686
00:35:35.280 --> 00:35:39.880
<v Speaker 3>cost you lost revenue orcovery, cost, finds, reputation damage, all

687
00:35:39.920 --> 00:35:42.239
<v Speaker 3>of it. AR is how many times you expect that

688
00:35:42.280 --> 00:35:45.440
<v Speaker 3>incident to happen per year, maybe based on historical data,

689
00:35:45.599 --> 00:35:49.199
<v Speaker 3>industry trends, threat intelligence. Multiplying them gives you the ale

690
00:35:49.360 --> 00:35:51.880
<v Speaker 3>an estimate of how much that specific risk might cost

691
00:35:51.880 --> 00:35:55.360
<v Speaker 3>you annually. It's definitely an educated guess, as Fenson calls it,

692
00:35:55.559 --> 00:35:58.039
<v Speaker 3>but it helps put a financial figure on future risks,

693
00:35:58.360 --> 00:36:01.880
<v Speaker 3>and that's incredibly helpful for justifying security investments the leadership

694
00:36:01.880 --> 00:36:03.519
<v Speaker 3>who think in terms of dollars and cents.

695
00:36:03.760 --> 00:36:07.800
<v Speaker 1>Okay ali, that's a useful concept. Now, when presenting these findings,

696
00:36:07.800 --> 00:36:09.639
<v Speaker 1>say in a meeting, you stress the importance of an

697
00:36:09.679 --> 00:36:13.679
<v Speaker 1>understandable presentation, spends and suggests the WOP time model.

698
00:36:14.039 --> 00:36:14.920
<v Speaker 2>What's that you know?

699
00:36:15.000 --> 00:36:17.679
<v Speaker 3>Wappytai ites is a handy acronym to structure your presentation.

700
00:36:18.239 --> 00:36:22.039
<v Speaker 3>W is for way Why security testing important for this organization?

701
00:36:22.360 --> 00:36:25.400
<v Speaker 3>Start with the context. A is for approach, How did

702
00:36:25.400 --> 00:36:27.760
<v Speaker 3>you conduct the test? What was the scope? White box,

703
00:36:27.760 --> 00:36:30.320
<v Speaker 3>black box, gray box? P is for problems? What did

704
00:36:30.360 --> 00:36:34.519
<v Speaker 3>you actually find the key vulnerabilities? I is for impact?

705
00:36:34.840 --> 00:36:37.559
<v Speaker 3>What do these problems mean? What's the risk to the business?

706
00:36:37.679 --> 00:36:41.119
<v Speaker 3>Use that CIA triad. Maybe T is for things to correct?

707
00:36:41.320 --> 00:36:45.480
<v Speaker 3>What are the specific recommendations practical steps including maybe organizational

708
00:36:45.519 --> 00:36:47.880
<v Speaker 3>issues not just technical fixes. And the final eye is

709
00:36:47.920 --> 00:36:50.679
<v Speaker 3>for is everything clear? Leave plenty of time for questions.

710
00:36:50.679 --> 00:36:53.199
<v Speaker 3>Make sure the audience understands the findings and the path forward.

711
00:36:53.800 --> 00:36:58.000
<v Speaker 2>WTI why approach, problems, impact, things to correct? Is it clear?

712
00:36:58.239 --> 00:37:01.039
<v Speaker 2>I like that it covers all the bases exactly, and.

713
00:37:01.000 --> 00:37:04.239
<v Speaker 3>The real challenge in that presentation is precisely that balance

714
00:37:04.280 --> 00:37:07.760
<v Speaker 3>we talked about earlier. You need enough technical detail for

715
00:37:07.800 --> 00:37:10.199
<v Speaker 3>the engineers in the room to understand how to fix things,

716
00:37:10.679 --> 00:37:13.719
<v Speaker 3>but you need to keep the executive summary concise and

717
00:37:13.800 --> 00:37:17.079
<v Speaker 3>focus on business impact for the leadership. You might lose

718
00:37:17.159 --> 00:37:19.760
<v Speaker 3>one or two members of the audience briefly over some

719
00:37:19.840 --> 00:37:23.760
<v Speaker 3>deep technical detail, and that's probably okay, but you absolutely

720
00:37:23.760 --> 00:37:27.119
<v Speaker 3>cannot lose the whole room. The goal is to inform

721
00:37:27.199 --> 00:37:30.599
<v Speaker 3>and guide action, not just overwhelm people with technical jargon.

722
00:37:30.800 --> 00:37:35.159
<v Speaker 1>Right and speaking recommendations, Svenson makes a point about one essential,

723
00:37:35.239 --> 00:37:40.360
<v Speaker 1>yet maybe sometimes boring recommendation almost always suggest patching.

724
00:37:40.559 --> 00:37:44.360
<v Speaker 3>Oh absolutely, it sounds basic, but it's fundamental. Patching known

725
00:37:44.440 --> 00:37:47.599
<v Speaker 3>vulnerabilities is oxen the easiest and cheapest way to keep

726
00:37:47.599 --> 00:37:50.440
<v Speaker 3>the average hacker at base. He puts it, if systems

727
00:37:50.440 --> 00:37:52.719
<v Speaker 3>are kept up to date free from those publicly known,

728
00:37:52.960 --> 00:37:56.559
<v Speaker 3>often easily exploitable flaws, they become exponentially harder for the

729
00:37:56.599 --> 00:38:00.000
<v Speaker 3>average attacker. The script kitties even many criminals to breach.

730
00:38:00.639 --> 00:38:03.880
<v Speaker 3>It's foundational cybersecurity hygiene. Don't skip the basics.

731
00:38:04.039 --> 00:38:06.559
<v Speaker 1>It seems so obvious, but the slammer room example showed

732
00:38:06.559 --> 00:38:10.039
<v Speaker 1>how often it gets missed. Okay, you mentioned anecdotes. Spenson

733
00:38:10.039 --> 00:38:13.159
<v Speaker 1>shares one about finding a password that's just memorable. Tell

734
00:38:13.239 --> 00:38:15.199
<v Speaker 1>us about James and I love drugs.

735
00:38:15.239 --> 00:38:18.320
<v Speaker 3>Ah. Yes, that was a classic illustration of multiple failures.

736
00:38:19.079 --> 00:38:22.440
<v Speaker 3>The tester was looking at a payroll management system apparently

737
00:38:22.480 --> 00:38:27.320
<v Speaker 3>called James. They found an unsecured admin debug page, which

738
00:38:27.519 --> 00:38:30.280
<v Speaker 3>first off shouldn't have been accessible. This debug page listed

739
00:38:30.320 --> 00:38:33.280
<v Speaker 3>all the system user names and their corresponding password hashes.

740
00:38:33.880 --> 00:38:37.119
<v Speaker 3>Big mistake number two. Just for fun really, and to

741
00:38:37.199 --> 00:38:40.079
<v Speaker 3>drive home the point about weak security, the tester took

742
00:38:40.119 --> 00:38:42.840
<v Speaker 3>the password hash belonging to the system administrator, the guy

743
00:38:42.840 --> 00:38:44.679
<v Speaker 3>who should know better, and just googled it.

744
00:38:44.719 --> 00:38:45.519
<v Speaker 2>Googled the hash.

745
00:38:45.599 --> 00:38:48.480
<v Speaker 3>Yep, sometimes people post cracked hashes online in forums or

746
00:38:48.480 --> 00:38:52.639
<v Speaker 3>password lists, and bingo, Google returned a result showing the

747
00:38:52.639 --> 00:38:56.119
<v Speaker 3>clear text password associated with that hash. The unwilling system

748
00:38:56.159 --> 00:38:59.199
<v Speaker 3>administrator's password was I love drugs.

749
00:38:59.280 --> 00:39:01.880
<v Speaker 1>I love drugs for the admin of a payroll system

750
00:39:01.960 --> 00:39:03.440
<v Speaker 1>on my word exactly.

751
00:39:03.519 --> 00:39:07.840
<v Speaker 3>It just vividly illustrates multiple critical failures. The deep bug

752
00:39:08.039 --> 00:39:10.760
<v Speaker 3>page shouldn't have been there. Passwords shouldn't have been hashed

753
00:39:10.760 --> 00:39:13.639
<v Speaker 3>with a weak or unsalted algorithm that allowed for easy

754
00:39:13.639 --> 00:39:16.159
<v Speaker 3>look up, and of course the password itself was terrible.

755
00:39:16.480 --> 00:39:19.239
<v Speaker 3>A painful but powerful lesson in basic security controls.

756
00:39:19.440 --> 00:39:22.679
<v Speaker 2>Unforgettable though, Okay. As you start to wrap up.

757
00:39:22.719 --> 00:39:25.119
<v Speaker 1>For those listening who might be considering a career in

758
00:39:25.199 --> 00:39:27.719
<v Speaker 1>security testing or maybe just want to sharpen their own

759
00:39:27.800 --> 00:39:32.320
<v Speaker 1>digital defense skills, Spenson offers some great advice. Let's quickly

760
00:39:32.360 --> 00:39:34.800
<v Speaker 1>cover five of his ten tips to become a better

761
00:39:34.800 --> 00:39:35.599
<v Speaker 1>security tester.

762
00:39:35.920 --> 00:39:36.440
<v Speaker 3>Sounds good.

763
00:39:36.679 --> 00:39:40.039
<v Speaker 2>First, learn how to program, even.

764
00:39:39.840 --> 00:39:43.760
<v Speaker 3>A little bit hugely helpful. Even understanding a simple Python

765
00:39:43.800 --> 00:39:47.280
<v Speaker 3>script like one that probes web servers quote printing profoundly

766
00:39:47.320 --> 00:39:51.719
<v Speaker 3>helps you grasp how exploit code actually works, how vulnerabilities

767
00:39:51.760 --> 00:39:54.400
<v Speaker 3>arise in code. You don't need to be a master developer,

768
00:39:54.559 --> 00:39:57.480
<v Speaker 3>but basic coding literacy is a massive advantage. Okay.

769
00:39:57.840 --> 00:40:00.559
<v Speaker 2>Second, learn to spot the shape that breaks the pattern?

770
00:40:00.599 --> 00:40:01.239
<v Speaker 2>What does that mean?

771
00:40:01.559 --> 00:40:04.639
<v Speaker 3>This goes beyond just technical flaws found by scanners. It's

772
00:40:04.679 --> 00:40:08.039
<v Speaker 3>about developing an intuition for things that just seem off

773
00:40:08.760 --> 00:40:14.280
<v Speaker 3>inappropriate configurations. Organizational oversights. Svenson recounts finding an employee's personal

774
00:40:14.320 --> 00:40:17.639
<v Speaker 3>French language website running on a company server inside the

775
00:40:17.679 --> 00:40:21.760
<v Speaker 3>corporate network during a test. A vulnerability scanner wouldn't flag

776
00:40:21.800 --> 00:40:25.320
<v Speaker 3>that as a technical flaw, but from an organizational security perspective,

777
00:40:25.360 --> 00:40:28.639
<v Speaker 3>that's a huge red flag. It requires looking beyond the

778
00:40:28.679 --> 00:40:31.440
<v Speaker 3>automated tools and developing a sense for what simply doesn't

779
00:40:31.480 --> 00:40:32.199
<v Speaker 3>belong right.

780
00:40:32.280 --> 00:40:35.119
<v Speaker 2>Context matters. Third, tap into the noise.

781
00:40:35.280 --> 00:40:39.519
<v Speaker 3>Stay updated constantly. The security landscape changes daily. You need

782
00:40:39.559 --> 00:40:43.440
<v Speaker 3>to stay relentlessly updated with it. Security news, new vulnerabilities,

783
00:40:43.440 --> 00:40:47.679
<v Speaker 3>attack techniques sites like crebsonsecurity dot com, Schneier on Security,

784
00:40:47.920 --> 00:40:51.480
<v Speaker 3>Schneier dot com, reading blogs, following researchers on social media,

785
00:40:51.519 --> 00:40:54.320
<v Speaker 3>attending conferences. It's crucial for staying.

786
00:40:54.000 --> 00:40:55.360
<v Speaker 2>Current, continuous learning.

787
00:40:55.559 --> 00:40:58.920
<v Speaker 1>Fourth, watch the movie War Games seriously huh yes.

788
00:40:58.960 --> 00:41:02.719
<v Speaker 3>Svenson suggests it partly for historical context about hacking culture,

789
00:41:02.760 --> 00:41:06.280
<v Speaker 3>but also, he says, for storytelling inspiration when writing your reports.

790
00:41:06.800 --> 00:41:09.360
<v Speaker 3>A good security report, like a good movie, tells a

791
00:41:09.400 --> 00:41:12.480
<v Speaker 3>compelling story, in this case, a story of risk and

792
00:41:12.480 --> 00:41:15.280
<v Speaker 3>how to mitigate it. Make it engaging interesting.

793
00:41:15.360 --> 00:41:21.079
<v Speaker 1>Take and Fifth, know that old vulnerabilities never get old, meaning.

794
00:41:20.760 --> 00:41:25.119
<v Speaker 3>The basics still matter immensely. Default credentials like that admin

795
00:41:25.119 --> 00:41:29.159
<v Speaker 3>password example still shockingly common years after they should have

796
00:41:29.199 --> 00:41:34.800
<v Speaker 3>been eradicated. Unpashed systems, simple misconfigurations, these old vulnerabilities are

797
00:41:34.880 --> 00:41:37.480
<v Speaker 3>often still the most effective attack fextures because they are

798
00:41:37.480 --> 00:41:40.639
<v Speaker 3>so frequently overlooked. It truly is, as he says, akin

799
00:41:40.760 --> 00:41:43.679
<v Speaker 3>to building a secure house while leaving the front door unlocked.

800
00:41:43.920 --> 00:41:45.000
<v Speaker 3>Master the fundamentals.

801
00:41:45.280 --> 00:41:46.000
<v Speaker 2>Great tips.

802
00:41:46.400 --> 00:41:48.960
<v Speaker 1>Okay, and that really wraps up our deep dive into

803
00:41:49.000 --> 00:41:53.000
<v Speaker 1>the fascinating and sometimes frankly scary world of security testing.

804
00:41:53.559 --> 00:41:56.639
<v Speaker 1>We've journeyed from understanding the diverse motivations of hackers and

805
00:41:56.679 --> 00:41:59.360
<v Speaker 1>the threats they pose, all the way through the meticulous

806
00:41:59.400 --> 00:42:03.840
<v Speaker 1>process of idea identifying, exploiting, and most importantly, reporting vulnerabilities

807
00:42:03.880 --> 00:42:06.719
<v Speaker 1>to help organizations build stronger digital defenses.

808
00:42:06.920 --> 00:42:09.719
<v Speaker 3>Yeah, this deep dive really reinforces that security isn't a

809
00:42:09.760 --> 00:42:12.519
<v Speaker 3>one time fix. It's not a product you buy. It's

810
00:42:12.519 --> 00:42:16.960
<v Speaker 3>an ongoing, evolving process. It demands continuous learning, vigilance, and

811
00:42:17.000 --> 00:42:20.000
<v Speaker 3>definitely critical thinking in the face of just ever increasing

812
00:42:20.000 --> 00:42:21.960
<v Speaker 3>information and constantly evolving threats.

813
00:42:22.039 --> 00:42:24.639
<v Speaker 1>Absolutely, so, as you go about your day, maybe take

814
00:42:24.679 --> 00:42:28.039
<v Speaker 1>a moment to mul over this provocative thought. What old,

815
00:42:28.079 --> 00:42:31.360
<v Speaker 1>seemingly harmless vulnerability might be lurking in a system you

816
00:42:31.440 --> 00:42:33.559
<v Speaker 1>rely on every day. Maybe that router in your house,

817
00:42:33.880 --> 00:42:36.280
<v Speaker 1>that app on your phone just waiting for someone to

818
00:42:36.320 --> 00:42:38.960
<v Speaker 1>try those surprisingly common default credentials.

819
00:42:39.239 --> 00:42:40.519
<v Speaker 2>Perhaps it's worth taking.

820
00:42:40.400 --> 00:42:43.440
<v Speaker 1>A deep dive into your own digital habits and security posture.

821
00:42:43.679 --> 00:42:46.559
<v Speaker 1>We certainly hope this exploration has encouraged continued learning and

822
00:42:46.599 --> 00:42:48.400
<v Speaker 1>awareness in your own digital life.

823
00:42:48.679 --> 00:42:50.440
<v Speaker 2>Thanks for joining us on the deep dive.
