WEBVTT

1
00:00:00.080 --> 00:00:03.160
<v Speaker 1>Welcome back everyone for another deep dive. This time we're

2
00:00:03.200 --> 00:00:07.000
<v Speaker 1>putting on our digital detective hats and uh yeah, we're

3
00:00:07.040 --> 00:00:10.160
<v Speaker 1>diving headfirst into the world of Linux forensics.

4
00:00:10.320 --> 00:00:12.640
<v Speaker 2>Oh, Linux forensics, that's my jam.

5
00:00:12.800 --> 00:00:15.720
<v Speaker 1>And to guide us on this thrilling adventure, we have

6
00:00:15.919 --> 00:00:19.559
<v Speaker 1>doctor Philip Polster's book. Now, this isn't your typical dry

7
00:00:19.760 --> 00:00:20.719
<v Speaker 1>technical manual.

8
00:00:20.839 --> 00:00:21.640
<v Speaker 2>No, no, not at all.

9
00:00:21.640 --> 00:00:25.000
<v Speaker 1>It's more like a gripping detective story. You know, even

10
00:00:25.000 --> 00:00:28.280
<v Speaker 1>if you've never ever touched a command line, you'll feel

11
00:00:28.320 --> 00:00:30.640
<v Speaker 1>like you're cracking a real life cybercrime case.

12
00:00:30.800 --> 00:00:33.039
<v Speaker 2>He's got this way of making the technical stuff feel

13
00:00:33.079 --> 00:00:35.200
<v Speaker 2>almost like cinematic.

14
00:00:35.359 --> 00:00:36.320
<v Speaker 1>Oh. Absolutely.

15
00:00:36.399 --> 00:00:40.039
<v Speaker 2>He walks you through this case right where a company

16
00:00:40.039 --> 00:00:42.679
<v Speaker 2>they're called Phil's Awesome Stuff, they get slammed with a

17
00:00:42.719 --> 00:00:46.000
<v Speaker 2>cyber attack. Their web server has been compromised, data's potentially stolen,

18
00:00:46.280 --> 00:00:47.200
<v Speaker 2>the whole shebang.

19
00:00:47.479 --> 00:00:48.200
<v Speaker 1>Oh man.

20
00:00:48.520 --> 00:00:51.600
<v Speaker 2>He uses this story right to teach you the ropes

21
00:00:51.880 --> 00:00:53.119
<v Speaker 2>of Linux forensics.

22
00:00:53.320 --> 00:00:56.320
<v Speaker 1>I love that approach, learning through a story. So we're

23
00:00:56.320 --> 00:00:59.439
<v Speaker 1>going to use this Phills Awesome stuffcase as our guide,

24
00:01:00.159 --> 00:01:03.439
<v Speaker 1>and our mission, should we choose to accept it, is

25
00:01:03.479 --> 00:01:07.280
<v Speaker 1>to equip you, dear listeners, with the knowledge tackle a

26
00:01:07.359 --> 00:01:09.120
<v Speaker 1>digital investigation head on.

27
00:01:09.400 --> 00:01:11.879
<v Speaker 2>That's right. And one of the first things you realize

28
00:01:11.879 --> 00:01:15.200
<v Speaker 2>in these situations is that your gut instinct, well it

29
00:01:15.280 --> 00:01:17.959
<v Speaker 2>might lead you astray. Oh really yeah, Like you see

30
00:01:17.959 --> 00:01:20.599
<v Speaker 2>a compromise system, you want to shut it down immediately, right.

31
00:01:20.519 --> 00:01:22.239
<v Speaker 1>Contain the damage seems logical.

32
00:01:22.319 --> 00:01:26.879
<v Speaker 2>Yeah, yeah, exactly, contained the damage. But as Polster points out,

33
00:01:27.120 --> 00:01:28.799
<v Speaker 2>that could actually be the worst move.

34
00:01:29.319 --> 00:01:32.159
<v Speaker 1>No, I'm really intrigued. Why would leaving a compromise system

35
00:01:32.239 --> 00:01:35.239
<v Speaker 1>running be like the right call?

36
00:01:35.400 --> 00:01:37.959
<v Speaker 2>Well, think about it this way. If you had like

37
00:01:38.079 --> 00:01:40.879
<v Speaker 2>a burglar in your house and they knew you were

38
00:01:40.879 --> 00:01:43.280
<v Speaker 2>onto them, what would they do.

39
00:01:43.799 --> 00:01:46.280
<v Speaker 1>They'd try to cover their tracks, get rid of any evidence.

40
00:01:46.359 --> 00:01:49.439
<v Speaker 2>Exactly, same thing with malware. If it senses the system

41
00:01:49.480 --> 00:01:51.680
<v Speaker 2>shutting down, it's like hitting the panic button. It might

42
00:01:51.680 --> 00:01:54.439
<v Speaker 2>wipe its activity logs, delete those stolen files.

43
00:01:54.120 --> 00:01:57.719
<v Speaker 1>So it basically disappears in the thin air poof gone wow.

44
00:01:58.280 --> 00:02:02.359
<v Speaker 1>So it's this like aast time. But sometimes hitting the

45
00:02:02.400 --> 00:02:05.040
<v Speaker 1>pause button actually helps the criminal, not.

46
00:02:05.159 --> 00:02:08.039
<v Speaker 2>Us exactly, And this is just one example of how

47
00:02:08.080 --> 00:02:11.919
<v Speaker 2>counterintuitive digital forensics can be. Polster also talks about this

48
00:02:11.960 --> 00:02:13.439
<v Speaker 2>thing called confirmation bias.

49
00:02:13.639 --> 00:02:15.080
<v Speaker 1>Confirmation bias, Yeah, it.

50
00:02:15.000 --> 00:02:17.319
<v Speaker 2>Could trip up even the most seasoned investigators.

51
00:02:17.360 --> 00:02:20.960
<v Speaker 1>Now, isn't confirmation bias, like when you're so convinced you're

52
00:02:21.000 --> 00:02:23.759
<v Speaker 1>right that you just ignore any evidence that says otherwise.

53
00:02:23.879 --> 00:02:26.960
<v Speaker 2>You got it? Polster uses this analogy. It's like a

54
00:02:27.000 --> 00:02:30.319
<v Speaker 2>magician asks a child to guess which hand has the coin.

55
00:02:30.639 --> 00:02:32.199
<v Speaker 1>Right, Okay, I'm following, and.

56
00:02:32.199 --> 00:02:35.840
<v Speaker 2>The child keeps getting right, and the parents they're convinced, Oh,

57
00:02:35.879 --> 00:02:39.280
<v Speaker 2>my kid's a mind reader. But the magician, sneaky magician,

58
00:02:39.719 --> 00:02:41.680
<v Speaker 2>had coins in both hands all along.

59
00:02:41.800 --> 00:02:44.479
<v Speaker 1>Oh wow, So the parents were so focused on proving

60
00:02:44.479 --> 00:02:47.360
<v Speaker 1>their kid a special that they totally missed the obvious.

61
00:02:47.199 --> 00:02:50.280
<v Speaker 2>Exactly, And investigators can fall into that same trap. They

62
00:02:50.280 --> 00:02:53.319
<v Speaker 2>get fixated on one theory and then they only see

63
00:02:53.319 --> 00:02:56.439
<v Speaker 2>the evidence that supports it. Yeah, we've got to turn

64
00:02:56.479 --> 00:02:59.280
<v Speaker 2>a blind eye to other possibilities.

65
00:02:58.680 --> 00:03:00.759
<v Speaker 1>Right, It's like having tunnel vision. So that's a good

66
00:03:00.759 --> 00:03:03.319
<v Speaker 1>reminder for all of us, right to stay open minded,

67
00:03:03.479 --> 00:03:06.400
<v Speaker 1>consider all the angles. Absolutely, But before we get ahead

68
00:03:06.400 --> 00:03:08.520
<v Speaker 1>of ourselves, let's take a step back for those who

69
00:03:08.599 --> 00:03:11.199
<v Speaker 1>are just starting out, Like, how would you define forensics,

70
00:03:11.719 --> 00:03:13.599
<v Speaker 1>especially in this digital world?

71
00:03:13.879 --> 00:03:19.439
<v Speaker 2>Okay, so forensic science at its core, it's about gathering

72
00:03:19.879 --> 00:03:23.199
<v Speaker 2>evidence that could hold up in court, even if you

73
00:03:23.240 --> 00:03:25.680
<v Speaker 2>never actually plan on going to court. Got it so

74
00:03:25.680 --> 00:03:31.400
<v Speaker 2>about being meticulous, documenting everything, following procedures.

75
00:03:30.759 --> 00:03:33.319
<v Speaker 1>Right, dotting your eyes, crossing your t's.

76
00:03:33.360 --> 00:03:36.560
<v Speaker 2>Yeah, and ensuring that all your findings, everything you discover

77
00:03:37.199 --> 00:03:39.680
<v Speaker 2>is credible and hasn't been tampered with.

78
00:03:39.919 --> 00:03:42.039
<v Speaker 1>So it's not just about finding those clues, it's about

79
00:03:42.039 --> 00:03:44.319
<v Speaker 1>doing it in a way that's like legit that can

80
00:03:44.360 --> 00:03:45.479
<v Speaker 1>stand up to scrutiny.

81
00:03:45.639 --> 00:03:50.000
<v Speaker 2>Exactly. In digital forensics, it's particularly tricky because digital evidence

82
00:03:50.560 --> 00:03:54.199
<v Speaker 2>is so easy to change, delete, even fabricate.

83
00:03:54.319 --> 00:03:54.960
<v Speaker 1>Oh that's right.

84
00:03:55.039 --> 00:03:57.800
<v Speaker 2>It's like imagine trying to solve a crime scene, but

85
00:03:58.560 --> 00:04:01.199
<v Speaker 2>the evidence can just vanish or morph into something else

86
00:04:01.240 --> 00:04:02.120
<v Speaker 2>at any given moment.

87
00:04:02.360 --> 00:04:03.919
<v Speaker 1>Oh wow, that's a great way to put it. So

88
00:04:04.120 --> 00:04:08.680
<v Speaker 1>we're dealing with much more fragile evidence than say, fingerprints

89
00:04:08.800 --> 00:04:09.960
<v Speaker 1>or I don't know, DNA.

90
00:04:10.199 --> 00:04:14.000
<v Speaker 2>Right. But here's the interesting part digital evidence. It also

91
00:04:14.120 --> 00:04:17.199
<v Speaker 2>leaves behind a ton of information that you know, traditional

92
00:04:17.240 --> 00:04:18.680
<v Speaker 2>forensics can only dream of.

93
00:04:18.920 --> 00:04:19.519
<v Speaker 1>Oh that's true.

94
00:04:19.560 --> 00:04:23.879
<v Speaker 2>We're talking time stamps, file access logs, internet history. I mean,

95
00:04:23.879 --> 00:04:24.759
<v Speaker 2>the list goes on and on.

96
00:04:24.879 --> 00:04:27.199
<v Speaker 1>So it's a double edged sword, right, It is more fragile,

97
00:04:27.240 --> 00:04:31.279
<v Speaker 1>but also potentially way more revealing exactly.

98
00:04:30.920 --> 00:04:33.639
<v Speaker 2>And this brings us back to low cards exchange principle,

99
00:04:33.680 --> 00:04:36.800
<v Speaker 2>which is like the couinderstone of forensic science.

100
00:04:36.879 --> 00:04:39.360
<v Speaker 1>Okay, remind me what's low cards exchange principle again.

101
00:04:39.480 --> 00:04:43.120
<v Speaker 2>It basically states that whenever two objects interact, they leave

102
00:04:43.199 --> 00:04:46.639
<v Speaker 2>traces on each other, right, right, So like paint transfer

103
00:04:46.720 --> 00:04:50.040
<v Speaker 2>in a car accident, fingerprints at a crime scene. Well,

104
00:04:50.160 --> 00:04:53.680
<v Speaker 2>in the digital world, those traces, those digital footprints, they're

105
00:04:53.720 --> 00:04:55.680
<v Speaker 2>often even more numerous and detailed.

106
00:04:55.720 --> 00:04:59.079
<v Speaker 1>Oh that's interesting. So every click, every download, every email,

107
00:04:59.160 --> 00:05:02.680
<v Speaker 1>every like everything is leaving a mark somewhere.

108
00:05:03.000 --> 00:05:06.800
<v Speaker 2>You got it. And that's why in this Fills Awesome

109
00:05:06.800 --> 00:05:12.040
<v Speaker 2>Stuff case, Polstra really emphasizes preserving that digital crime scene

110
00:05:12.240 --> 00:05:14.000
<v Speaker 2>as meticulously as possible.

111
00:05:14.079 --> 00:05:16.680
<v Speaker 1>Okay, it makes sense. So let's say we're called in

112
00:05:16.959 --> 00:05:20.879
<v Speaker 1>to investigate this compromise web server at Phill's Awesome Stuff.

113
00:05:21.399 --> 00:05:23.480
<v Speaker 1>What are like the first things we need to keep

114
00:05:23.480 --> 00:05:26.759
<v Speaker 1>in mind? What are the guiding principles as we start

115
00:05:26.800 --> 00:05:27.560
<v Speaker 1>our investigation.

116
00:05:27.680 --> 00:05:31.519
<v Speaker 2>Okay, the absolute top priority, the golden rule, is maintaining

117
00:05:31.600 --> 00:05:34.360
<v Speaker 2>the integrity of the evidence. Think of it like this,

118
00:05:35.360 --> 00:05:39.000
<v Speaker 2>any action you take on a compromised system. Even something small,

119
00:05:39.519 --> 00:05:42.680
<v Speaker 2>it has the potential to change the original state. So

120
00:05:42.759 --> 00:05:45.079
<v Speaker 2>before you even touch the system, you got to make

121
00:05:45.079 --> 00:05:46.519
<v Speaker 2>a forensic copy of the hard drive.

122
00:05:46.600 --> 00:05:49.040
<v Speaker 1>No, it's not just like copying and pasting files, right,

123
00:05:49.079 --> 00:05:51.639
<v Speaker 1>we're talking about a bit for bit replica, a clone

124
00:05:52.000 --> 00:05:55.160
<v Speaker 1>of the entire drive. Why is that so crucial.

125
00:05:54.839 --> 00:05:57.759
<v Speaker 2>Because even something that seems harmless, like just opening a file,

126
00:05:58.040 --> 00:05:59.959
<v Speaker 2>it can change the file's metadata at a day.

127
00:06:00.240 --> 00:06:02.959
<v Speaker 1>That's the time stamps, that access records, all that behind

128
00:06:02.959 --> 00:06:03.759
<v Speaker 1>the scenes stuff, you.

129
00:06:03.720 --> 00:06:06.560
<v Speaker 2>Got it, all that juicy stuff that helps us reconstruct

130
00:06:06.560 --> 00:06:08.160
<v Speaker 2>the what happened the timeline.

131
00:06:08.279 --> 00:06:11.040
<v Speaker 1>So we're working on a copy to avoid messing up

132
00:06:11.040 --> 00:06:12.800
<v Speaker 1>the original evidence exactly.

133
00:06:13.240 --> 00:06:16.160
<v Speaker 2>And while we're preserving that evidence, we got to document

134
00:06:16.199 --> 00:06:18.800
<v Speaker 2>every single step we take during the investigation. Makes us

135
00:06:18.839 --> 00:06:21.360
<v Speaker 2>who accessed what, when and for what reason.

136
00:06:21.560 --> 00:06:24.000
<v Speaker 1>Oh so that creates a chain of custody, that's.

137
00:06:23.920 --> 00:06:26.439
<v Speaker 2>Right, the chain of custody proving that the evidence is

138
00:06:26.560 --> 00:06:28.839
<v Speaker 2>authentic and hasn't been tampered with.

139
00:06:29.399 --> 00:06:31.480
<v Speaker 1>So it's not just about catching the bad guy, it's

140
00:06:31.519 --> 00:06:34.000
<v Speaker 1>about doing it in a way that's airtight, you know,

141
00:06:34.519 --> 00:06:38.079
<v Speaker 1>like building a legal case alongside the technical investigation.

142
00:06:38.240 --> 00:06:38.759
<v Speaker 2>Percisely.

143
00:06:38.959 --> 00:06:43.360
<v Speaker 1>Okay, So documentation super important. Are there any other standard

144
00:06:43.439 --> 00:06:49.040
<v Speaker 1>practices or guidelines that are like super crucial in Linux forensics.

145
00:06:49.240 --> 00:06:52.720
<v Speaker 2>Yeah, sticking to established procedures, that's super important. It's like

146
00:06:53.120 --> 00:06:56.040
<v Speaker 2>having a recipe, you know, for your investigator.

147
00:06:55.480 --> 00:06:57.199
<v Speaker 1>A recipe, okay, Yeah.

148
00:06:57.279 --> 00:07:01.160
<v Speaker 2>It ensures consistency, helps you avoid makeing those silly mistakes,

149
00:07:01.720 --> 00:07:03.639
<v Speaker 2>and makes your findings more credible in the end.

150
00:07:03.800 --> 00:07:07.199
<v Speaker 1>So it's not just about doing things right, it's about

151
00:07:07.199 --> 00:07:10.800
<v Speaker 1>doing them in a like a standardized, replicable way, like

152
00:07:10.959 --> 00:07:14.560
<v Speaker 1>a scientific method, but for digital detective work exactly.

153
00:07:15.000 --> 00:07:19.720
<v Speaker 2>And Polstra in his book he outlines these procedures. He

154
00:07:19.800 --> 00:07:23.399
<v Speaker 2>walks you through the three main phases of a digital

155
00:07:23.399 --> 00:07:24.319
<v Speaker 2>investigation out.

156
00:07:24.319 --> 00:07:25.240
<v Speaker 1>There are phases.

157
00:07:25.399 --> 00:07:28.240
<v Speaker 2>There are you got evidence preservation, which we just talked about.

158
00:07:28.480 --> 00:07:30.720
<v Speaker 2>Then there's the searching phase where you're digging through the

159
00:07:30.800 --> 00:07:34.560
<v Speaker 2>data for those clues. And finally event reconstruction.

160
00:07:34.879 --> 00:07:38.519
<v Speaker 1>Event reconstruction, so you secure the scene, then you hunt

161
00:07:38.560 --> 00:07:41.480
<v Speaker 1>for clues, and then finally you try to piece together

162
00:07:41.920 --> 00:07:44.800
<v Speaker 1>like the narrative, what actually happened.

163
00:07:44.399 --> 00:07:48.839
<v Speaker 2>You got it. But in practice, those phases they often overlap,

164
00:07:49.040 --> 00:07:50.560
<v Speaker 2>you know, they kind of blur together.

165
00:07:50.759 --> 00:07:51.639
<v Speaker 1>Yeah, and see that.

166
00:07:51.680 --> 00:07:54.319
<v Speaker 2>Like, for example, that dilemma of pulling the plug, you know,

167
00:07:54.439 --> 00:07:57.839
<v Speaker 2>shutting down the system, right, right, that decision you often

168
00:07:57.879 --> 00:08:00.399
<v Speaker 2>have to make that during the evidence preservation phase.

169
00:08:00.439 --> 00:08:03.519
<v Speaker 1>Oh, that's right, because the longer the system is running,

170
00:08:03.639 --> 00:08:06.160
<v Speaker 1>the more time the malware has to cover its tracks.

171
00:08:06.160 --> 00:08:09.560
<v Speaker 1>But shutting it down could mean losing vital data. It's

172
00:08:09.560 --> 00:08:11.279
<v Speaker 1>like a catch twenty two exactly.

173
00:08:11.560 --> 00:08:14.120
<v Speaker 2>It's a tough call and there's no one size fits

174
00:08:14.120 --> 00:08:16.800
<v Speaker 2>all answer, you know. It depends on the situation, the

175
00:08:16.839 --> 00:08:19.319
<v Speaker 2>type of malware we're dealing with, what we're hoping to achieve.

176
00:08:19.800 --> 00:08:22.759
<v Speaker 1>So sometimes it's a judgment call, right, weighing those risks

177
00:08:22.759 --> 00:08:24.920
<v Speaker 1>and benefits of each action precisely.

178
00:08:25.279 --> 00:08:27.680
<v Speaker 2>And this leads us to kind of the idea of

179
00:08:27.759 --> 00:08:29.079
<v Speaker 2>dead versus live.

180
00:08:29.040 --> 00:08:31.439
<v Speaker 1>Analysis, Dead versus live what's that?

181
00:08:31.720 --> 00:08:36.039
<v Speaker 2>So? Dead analysis that's when we're examining a system that's offline.

182
00:08:36.320 --> 00:08:37.320
<v Speaker 1>Offline, Yeah, like.

183
00:08:37.279 --> 00:08:41.240
<v Speaker 2>Analyzing that disk imagery talked about. Live analysis, Well, that's

184
00:08:41.240 --> 00:08:43.919
<v Speaker 2>when we're interacting with a system that's still running.

185
00:08:44.120 --> 00:08:47.559
<v Speaker 1>Okay, So dead analysis is like studying a frozen snapshot.

186
00:08:47.679 --> 00:08:48.000
<v Speaker 2>Yeah.

187
00:08:48.039 --> 00:08:51.159
<v Speaker 1>Well, live analysis is more like observing the system in

188
00:08:51.279 --> 00:08:52.600
<v Speaker 1>action as it's happening.

189
00:08:52.879 --> 00:08:55.080
<v Speaker 2>That's a great way to put it. Both approaches have

190
00:08:55.200 --> 00:08:58.840
<v Speaker 2>their you know, pluses and minuses, advantages and disadvantages. Yeah,

191
00:08:58.879 --> 00:09:01.200
<v Speaker 2>and the choice it really depends on the goals of

192
00:09:01.240 --> 00:09:02.000
<v Speaker 2>the investigation.

193
00:09:02.240 --> 00:09:04.440
<v Speaker 1>Makes sense. Okay, So let's say we've decided to do

194
00:09:04.480 --> 00:09:07.960
<v Speaker 1>some analysis. What kind of tools would we need in

195
00:09:08.000 --> 00:09:11.480
<v Speaker 1>our digital detective kit? Ah, the tools I'm picturing like

196
00:09:11.799 --> 00:09:13.559
<v Speaker 1>something straight out of a spy movie.

197
00:09:13.720 --> 00:09:17.279
<v Speaker 2>Well, on the hardware side, you'll need external hard drives,

198
00:09:17.639 --> 00:09:19.559
<v Speaker 2>you know, to store those forensic copies.

199
00:09:19.679 --> 00:09:19.879
<v Speaker 1>Right.

200
00:09:20.159 --> 00:09:23.080
<v Speaker 2>USB three point zero is usually the best. It's fast, okay,

201
00:09:23.320 --> 00:09:27.000
<v Speaker 2>but sometimes those older USB two point zero drives. They're

202
00:09:27.039 --> 00:09:30.759
<v Speaker 2>better for compatibility with virtual machines, oh okay. And absolutely

203
00:09:30.840 --> 00:09:32.200
<v Speaker 2>essential are right blockers.

204
00:09:32.440 --> 00:09:33.080
<v Speaker 1>Right blockers.

205
00:09:33.120 --> 00:09:35.960
<v Speaker 2>Yeah, they prevent you from accidentally modifying the evidence.

206
00:09:36.080 --> 00:09:39.879
<v Speaker 1>So it's like a safety guard for our digital evidence exactly.

207
00:09:39.919 --> 00:09:44.000
<v Speaker 2>Think of them as like gloves for a surgeon. You know,

208
00:09:44.360 --> 00:09:47.720
<v Speaker 2>you wouldn't operate without gloves, and you shouldn't image a

209
00:09:47.799 --> 00:09:49.240
<v Speaker 2>drive without a right blocker.

210
00:09:49.320 --> 00:09:52.320
<v Speaker 1>Good analogy. And you want to dedicate a forensics workstation

211
00:09:52.440 --> 00:09:55.120
<v Speaker 1>right absolutely completely separate from the compromise system.

212
00:09:55.159 --> 00:09:57.120
<v Speaker 2>Yeah, you don't want to be installing anything on the

213
00:09:57.159 --> 00:09:59.080
<v Speaker 2>suspect machine. You got to work on a copy on

214
00:09:59.120 --> 00:10:01.399
<v Speaker 2>a separate system to avoid any contamination.

215
00:10:01.679 --> 00:10:04.399
<v Speaker 1>Right, makes sense, But what about software? Do we need

216
00:10:04.919 --> 00:10:06.960
<v Speaker 1>expensive specialized tools for this?

217
00:10:07.639 --> 00:10:12.240
<v Speaker 2>Here's the beauty of Linux forensics. There are tons of

218
00:10:12.279 --> 00:10:15.039
<v Speaker 2>free and open source tools out there that are incredibly powerful.

219
00:10:15.080 --> 00:10:15.879
<v Speaker 1>Oh that's awesome.

220
00:10:16.200 --> 00:10:19.279
<v Speaker 2>And Polstra he actually includes a script in his book

221
00:10:19.639 --> 00:10:22.320
<v Speaker 2>that installs a whole bunch of these tools automatically.

222
00:10:22.440 --> 00:10:24.960
<v Speaker 1>Oh wow, So it's like setting up your digital forensics

223
00:10:25.039 --> 00:10:26.279
<v Speaker 1>lab with a single command.

224
00:10:26.559 --> 00:10:27.480
<v Speaker 2>That's the idea.

225
00:10:27.519 --> 00:10:29.919
<v Speaker 1>That's amazing. It sounds like Linux is a great platform

226
00:10:29.960 --> 00:10:30.639
<v Speaker 1>for this kind of work.

227
00:10:30.799 --> 00:10:33.879
<v Speaker 2>It really is. But remember, no matter how powerful your

228
00:10:33.919 --> 00:10:37.759
<v Speaker 2>tools are, the key is to use them responsibly ethically.

229
00:10:37.960 --> 00:10:39.360
<v Speaker 1>Right, of course, our.

230
00:10:39.240 --> 00:10:43.080
<v Speaker 2>Goal is to minimize disturbance to the subject system. Think

231
00:10:43.080 --> 00:10:45.960
<v Speaker 2>of it like walking through a like a delicate crime scene.

232
00:10:46.080 --> 00:10:48.399
<v Speaker 2>You want to leave the smallest footprint.

233
00:10:47.960 --> 00:10:51.399
<v Speaker 1>Possible, right, So avoid installing anything on the suspect system,

234
00:10:51.759 --> 00:10:55.039
<v Speaker 1>create that copy first, and use those tools responsibly.

235
00:10:55.200 --> 00:10:58.639
<v Speaker 2>Got it exactly. And when it comes to discreetly gathering data,

236
00:10:59.159 --> 00:11:02.000
<v Speaker 2>tools like net cat can be incredibly handy.

237
00:11:02.279 --> 00:11:05.000
<v Speaker 1>Netcat that sounds like something a hacker would use.

238
00:11:05.159 --> 00:11:07.559
<v Speaker 2>It can be used for both good and bad. But

239
00:11:07.720 --> 00:11:10.120
<v Speaker 2>in our context, it's a way to create a secure

240
00:11:10.240 --> 00:11:13.799
<v Speaker 2>channel between the suspect system and our workstation. We can

241
00:11:13.840 --> 00:11:17.159
<v Speaker 2>send commands, get data back, all without leaving a trace

242
00:11:17.200 --> 00:11:18.480
<v Speaker 2>on the compromise machine.

243
00:11:18.559 --> 00:11:21.519
<v Speaker 1>Okay, so netcat is like our secret back door for

244
00:11:21.559 --> 00:11:24.600
<v Speaker 1>collecting evidence. I'm starting to feel like a real digital

245
00:11:24.639 --> 00:11:25.360
<v Speaker 1>detective here.

246
00:11:25.519 --> 00:11:26.240
<v Speaker 2>That's the spirit.

247
00:11:26.360 --> 00:11:27.120
<v Speaker 1>This is exciting.

248
00:11:27.320 --> 00:11:30.399
<v Speaker 2>It's a combination of technical skills and that old fashioned

249
00:11:30.399 --> 00:11:31.440
<v Speaker 2>detective intuition.

250
00:11:31.799 --> 00:11:35.240
<v Speaker 1>Well said, So we've gathered our initial data, we've got

251
00:11:35.240 --> 00:11:37.480
<v Speaker 1>our tools ready to go, and now we're about to

252
00:11:37.600 --> 00:11:40.320
<v Speaker 1>enter the live analysis phase. Live analysis here we go,

253
00:11:40.519 --> 00:11:43.360
<v Speaker 1>assuming of course, that we've determined there's actually an incident

254
00:11:43.399 --> 00:11:46.559
<v Speaker 1>to investigate. Where do we even begin.

255
00:11:47.000 --> 00:11:49.080
<v Speaker 2>One of the first things to zero in on is

256
00:11:49.240 --> 00:11:50.279
<v Speaker 2>file metadata.

257
00:11:50.639 --> 00:11:52.240
<v Speaker 1>File metadata, Yeah.

258
00:11:52.080 --> 00:11:56.679
<v Speaker 2>Timestamps, permissions, ownership, all those little details can be incredibly revealing.

259
00:11:56.879 --> 00:12:00.120
<v Speaker 1>So it's like reconstructing the story of what happened, and

260
00:12:00.399 --> 00:12:04.840
<v Speaker 1>based on when and how files were created, modified, or accessed.

261
00:12:04.960 --> 00:12:07.360
<v Speaker 2>You got it, and don't forget about user command history.

262
00:12:07.679 --> 00:12:09.639
<v Speaker 2>It can give us a glimpse into what actions both

263
00:12:09.759 --> 00:12:12.639
<v Speaker 2>legitimate users and potential attackers took on the system.

264
00:12:12.720 --> 00:12:15.679
<v Speaker 1>Oh, right, like a trail of digital breadcrumbs exactly.

265
00:12:15.720 --> 00:12:18.200
<v Speaker 2>And log files they are another gold mine of information

266
00:12:18.600 --> 00:12:21.600
<v Speaker 2>system events, log in attempts, air messages, it's all there,

267
00:12:21.799 --> 00:12:23.000
<v Speaker 2>just waiting to be analyzed.

268
00:12:23.039 --> 00:12:26.120
<v Speaker 1>Wow. So it's like having a detailed chronicle of the

269
00:12:26.159 --> 00:12:27.480
<v Speaker 1>system's activity.

270
00:12:27.159 --> 00:12:31.519
<v Speaker 2>Precisely, and sometimes we need to go even deeper and

271
00:12:31.679 --> 00:12:35.919
<v Speaker 2>capture the entire system state. That's where ram dumps come.

272
00:12:35.799 --> 00:12:38.000
<v Speaker 1>In a ramdomp, what's that all about.

273
00:12:38.120 --> 00:12:41.279
<v Speaker 2>It's basically creating a snapshot of everything that's in the

274
00:12:41.279 --> 00:12:45.080
<v Speaker 2>computer's memory at a specific moment in time. It's like

275
00:12:45.399 --> 00:12:48.039
<v Speaker 2>freezing the brain of the computer, seeing what it was

276
00:12:48.080 --> 00:12:49.440
<v Speaker 2>thinking at that exact moment.

277
00:12:49.639 --> 00:12:52.039
<v Speaker 1>That's impressive, but I imagine it's pretty challenging to do.

278
00:12:52.320 --> 00:12:55.519
<v Speaker 2>It can be tricky, but there are tools designed specifically

279
00:12:55.559 --> 00:12:59.039
<v Speaker 2>for this purpose. One of them is called line BLI me. Yeah,

280
00:12:59.279 --> 00:13:02.759
<v Speaker 2>capturing a complete an accurate RAM dump is a delicate process,

281
00:13:03.200 --> 00:13:06.519
<v Speaker 2>but the insights you can glean from it, they're often invaluable.

282
00:13:06.559 --> 00:13:09.360
<v Speaker 1>Okay, so we've collected that volatile data from the running system,

283
00:13:09.639 --> 00:13:12.200
<v Speaker 1>but what about the data stored on the hard drive itself.

284
00:13:12.320 --> 00:13:14.120
<v Speaker 2>That's where disk images come into play.

285
00:13:14.159 --> 00:13:15.720
<v Speaker 1>Disk images creating a.

286
00:13:15.679 --> 00:13:19.480
<v Speaker 2>Forensic image of the hard drive is crucial for preserving

287
00:13:19.480 --> 00:13:22.360
<v Speaker 2>the evidence and ensuring we have a complete copy to

288
00:13:22.360 --> 00:13:22.720
<v Speaker 2>work with.

289
00:13:22.879 --> 00:13:25.159
<v Speaker 1>Right, So it's not just copying files, but creating a

290
00:13:25.159 --> 00:13:27.600
<v Speaker 1>bit for bit replica of the entire drive.

291
00:13:27.720 --> 00:13:30.159
<v Speaker 2>You, got it. And there are different formats for these images,

292
00:13:30.720 --> 00:13:33.320
<v Speaker 2>like raw images. Those are exact copies, and then there

293
00:13:33.320 --> 00:13:37.440
<v Speaker 2>are proprietary formats that offer compression or some extra features.

294
00:13:37.080 --> 00:13:41.080
<v Speaker 1>Okay, And which tools are commonly used to create these images.

295
00:13:41.360 --> 00:13:44.639
<v Speaker 2>DD is a classic a command line tool, but for forensics

296
00:13:44.559 --> 00:13:49.399
<v Speaker 2>we often use DCFLTD DCLLTD. Yeah, it's basically like DD

297
00:13:49.559 --> 00:13:50.879
<v Speaker 2>on steroids.

298
00:13:50.759 --> 00:13:55.080
<v Speaker 1>DC LTD on steroids. That sounds intense.

299
00:13:55.240 --> 00:13:59.360
<v Speaker 2>It's more robust, more reliable. It has features like verifying

300
00:13:59.360 --> 00:14:02.320
<v Speaker 2>the integrity the image as it's been created and splitting

301
00:14:02.360 --> 00:14:03.919
<v Speaker 2>it into multiple files if you need to.

302
00:14:04.080 --> 00:14:04.799
<v Speaker 1>Oh, that's handy.

303
00:14:04.879 --> 00:14:06.480
<v Speaker 2>And of course we always use it in conjunction with

304
00:14:06.480 --> 00:14:08.480
<v Speaker 2>a right blocker, just to be extra careful.

305
00:14:08.600 --> 00:14:10.440
<v Speaker 1>Right, safety first, So it's.

306
00:14:10.240 --> 00:14:13.039
<v Speaker 2>Like having a safety net, a quality control check all

307
00:14:13.120 --> 00:14:13.840
<v Speaker 2>rolled into one.

308
00:14:14.000 --> 00:14:16.399
<v Speaker 1>Got it. And if possible, it's always best to image

309
00:14:16.399 --> 00:14:19.320
<v Speaker 1>the entire drive, right, right, not just specific partitions.

310
00:14:19.399 --> 00:14:21.720
<v Speaker 2>Yeah, you never know where those valuable clues might be hiding.

311
00:14:21.960 --> 00:14:24.840
<v Speaker 1>Makes sense. It's like searching every nook and cranny of

312
00:14:24.879 --> 00:14:29.480
<v Speaker 1>the digital crime scene. So we've created our image, what's next.

313
00:14:29.840 --> 00:14:32.679
<v Speaker 2>The next step is to mount the image. Mount it, yeah,

314
00:14:32.799 --> 00:14:36.360
<v Speaker 2>which basically means making it accessible to our forensic tools

315
00:14:36.559 --> 00:14:39.440
<v Speaker 2>as if it were a physical drive plugged into our workstation.

316
00:14:39.639 --> 00:14:42.039
<v Speaker 1>Oh okay, so it's like virtually plugging in the hard

317
00:14:42.120 --> 00:14:44.039
<v Speaker 1>drive and exploring its content exactly.

318
00:14:44.120 --> 00:14:46.679
<v Speaker 2>But before we mount the image, we need to figure

319
00:14:46.679 --> 00:14:48.279
<v Speaker 2>out its partitioning scheme.

320
00:14:48.519 --> 00:14:50.159
<v Speaker 1>Partitioning scheme, yeah, it's.

321
00:14:50.080 --> 00:14:53.000
<v Speaker 2>Basically how the drive is divided up into these logical sections.

322
00:14:53.080 --> 00:14:55.519
<v Speaker 1>Oh right, right, like those C and D drives and

323
00:14:55.559 --> 00:14:56.759
<v Speaker 1>Windows exactly.

324
00:14:57.000 --> 00:15:00.519
<v Speaker 2>Yeah. But Linux it uses different partitioning schemes.

325
00:15:00.559 --> 00:15:01.120
<v Speaker 1>Oh okay.

326
00:15:01.200 --> 00:15:04.279
<v Speaker 2>The most common ones are MBR, which is the older scheme,

327
00:15:04.600 --> 00:15:07.440
<v Speaker 2>and then there's GP, which is newer and can handle

328
00:15:07.559 --> 00:15:08.480
<v Speaker 2>much larger drives.

329
00:15:08.519 --> 00:15:11.120
<v Speaker 1>Okay, so GPT is the way to go, right if

330
00:15:11.120 --> 00:15:12.559
<v Speaker 1>we're dealing with a modern system.

331
00:15:12.919 --> 00:15:16.600
<v Speaker 2>Ideally, yes, but for compatibility reasons, you really need to

332
00:15:16.639 --> 00:15:19.919
<v Speaker 2>know both. Think of it, like knowing both metric and

333
00:15:19.960 --> 00:15:24.360
<v Speaker 2>imperial measurements. Sometimes you encounter those older systems that still cling.

334
00:15:24.080 --> 00:15:26.879
<v Speaker 1>To the old ways, right, right, So how do we

335
00:15:26.919 --> 00:15:30.080
<v Speaker 1>figure out the partitioning scheme of our disk image?

336
00:15:30.240 --> 00:15:32.639
<v Speaker 2>We use a tool called f disc. It's a command

337
00:15:32.720 --> 00:15:37.120
<v Speaker 2>line utility that can analyze the drive without making any changes. Okay,

338
00:15:37.200 --> 00:15:38.720
<v Speaker 2>kind of like a harmless X ray.

339
00:15:38.879 --> 00:15:42.080
<v Speaker 1>So it's like reading the blueprint of the drive, seeing

340
00:15:42.080 --> 00:15:45.679
<v Speaker 1>how it's structured and where each partition is located exactly.

341
00:15:45.799 --> 00:15:47.960
<v Speaker 2>And once we have that information, we can use the

342
00:15:48.000 --> 00:15:52.679
<v Speaker 2>mount command to make those specific partitions accessible for analysis.

343
00:15:52.879 --> 00:15:55.320
<v Speaker 1>Sound straightforward enough, but I imagine it can get pretty

344
00:15:55.320 --> 00:15:57.279
<v Speaker 1>tedious if you're dealing with a lot of partitions.

345
00:15:57.440 --> 00:16:00.840
<v Speaker 2>You're right. That's where scripting can be a lifesaver. Polster's

346
00:16:00.840 --> 00:16:03.919
<v Speaker 2>book shows you how to automate this whole process using Python.

347
00:16:04.159 --> 00:16:04.360
<v Speaker 1>Oh.

348
00:16:04.519 --> 00:16:07.279
<v Speaker 2>Python, Yeah, it's like having a robot assistant handling all

349
00:16:07.320 --> 00:16:08.720
<v Speaker 2>those repetitive tasks.

350
00:16:08.840 --> 00:16:11.159
<v Speaker 1>So we can write these Python scripts to identify the

351
00:16:11.200 --> 00:16:16.639
<v Speaker 1>partitioning scheme, locate the partitions, and mount them all automatically exactly.

352
00:16:16.679 --> 00:16:19.039
<v Speaker 2>It makes the whole process much more efficient and less

353
00:16:19.240 --> 00:16:24.759
<v Speaker 2>prone to those pesky human errors. And speaking of efficiency,

354
00:16:25.120 --> 00:16:28.279
<v Speaker 2>importing filesystem data into a database, now that can be

355
00:16:28.320 --> 00:16:31.080
<v Speaker 2>a real game changer for analysis databases.

356
00:16:31.279 --> 00:16:34.600
<v Speaker 1>Yeah, now I thought those were for like storing structured

357
00:16:34.639 --> 00:16:37.840
<v Speaker 1>data like customer information or financial transactions.

358
00:16:37.879 --> 00:16:41.600
<v Speaker 2>They are, but they can also be incredibly powerful tools

359
00:16:41.960 --> 00:16:46.399
<v Speaker 2>for forensic analysis. Okay, imagine having this supercharged search engine

360
00:16:46.440 --> 00:16:49.399
<v Speaker 2>for all your evidence. Instead of manually digging through those files,

361
00:16:49.679 --> 00:16:52.600
<v Speaker 2>you can use SQL queries to pinpoint very specific information,

362
00:16:52.960 --> 00:16:56.960
<v Speaker 2>identify patterns, generate timelines, and all much much faster.

363
00:16:57.120 --> 00:16:59.480
<v Speaker 1>Oh wow, Okay, that's starting to sound really useful. Can

364
00:16:59.480 --> 00:17:01.320
<v Speaker 1>you give me like a concrete example of how this

365
00:17:01.399 --> 00:17:01.799
<v Speaker 1>might work.

366
00:17:01.879 --> 00:17:05.119
<v Speaker 2>Sure, Let's say you suspect that someone was stealing sensitive

367
00:17:05.200 --> 00:17:09.400
<v Speaker 2>data from Phil's awesome stuff. With a database, you could import,

368
00:17:09.640 --> 00:17:13.039
<v Speaker 2>like the file axislogs user login records and then write

369
00:17:13.039 --> 00:17:15.920
<v Speaker 2>a query that says, show me all the files accessed

370
00:17:15.960 --> 00:17:19.119
<v Speaker 2>by this specific user during these specific hours, and tell

371
00:17:19.160 --> 00:17:21.079
<v Speaker 2>me whether those files were sent over the network.

372
00:17:21.279 --> 00:17:24.519
<v Speaker 1>Wow, that's incredibly specific. It's like having laser focus on

373
00:17:24.559 --> 00:17:27.400
<v Speaker 1>the exact data we need exactly.

374
00:17:27.119 --> 00:17:29.960
<v Speaker 2>And databases they allow for much more complex queries than

375
00:17:30.000 --> 00:17:31.319
<v Speaker 2>your typical forensic tools.

376
00:17:31.400 --> 00:17:33.640
<v Speaker 1>So it's not just about finding a needle in a haystack,

377
00:17:33.680 --> 00:17:36.359
<v Speaker 1>it's about analyzing the whole haystack in seconds.

378
00:17:36.559 --> 00:17:39.400
<v Speaker 2>You got it, impolster. He actually shares a real world

379
00:17:39.480 --> 00:17:43.119
<v Speaker 2>case where those prepackaged forensic tools that were just hitting

380
00:17:43.160 --> 00:17:46.759
<v Speaker 2>their limits and importing the data into a database, Well

381
00:17:46.839 --> 00:17:49.200
<v Speaker 2>that's what allowed him to crack the case wide open.

382
00:17:49.279 --> 00:17:52.200
<v Speaker 1>Wow, I'm starting to see why databases are becoming so

383
00:17:52.400 --> 00:17:55.519
<v Speaker 1>essential in digital forensics. But let's step back for a

384
00:17:55.519 --> 00:17:59.480
<v Speaker 1>moment and talk about timeline analysis. Timeline analysis, you've mentioned

385
00:17:59.519 --> 00:18:01.640
<v Speaker 1>it a few times already. Yeah, how do we even

386
00:18:01.720 --> 00:18:05.960
<v Speaker 1>go about creating a timeline of events on a compromise system?

387
00:18:06.240 --> 00:18:09.880
<v Speaker 1>And like, how reliable is that timeline? Can we trust it?

388
00:18:10.400 --> 00:18:13.359
<v Speaker 2>Creating a timeline it's often the key to figuring out

389
00:18:13.359 --> 00:18:16.799
<v Speaker 2>what happened. And when we use time stamps from files,

390
00:18:16.839 --> 00:18:20.039
<v Speaker 2>from log in records, system logs, any source we can

391
00:18:20.039 --> 00:18:20.599
<v Speaker 2>get our hands on.

392
00:18:20.680 --> 00:18:21.960
<v Speaker 1>Oh okay, pulling it all together.

393
00:18:22.039 --> 00:18:24.319
<v Speaker 2>But here's the catch time stamps.

394
00:18:24.519 --> 00:18:26.680
<v Speaker 1>They can be manipulated, so we can't just take them

395
00:18:26.720 --> 00:18:30.640
<v Speaker 1>at face value. We need to be like skeptical exactly.

396
00:18:31.000 --> 00:18:34.960
<v Speaker 2>Think of time stamps as clues, not absolute truths. You

397
00:18:35.039 --> 00:18:38.640
<v Speaker 2>got to look for inconsistencies, suspicious patterns, time stamps that

398
00:18:38.759 --> 00:18:41.119
<v Speaker 2>just don't make sense in the context of other evidence.

399
00:18:41.359 --> 00:18:44.400
<v Speaker 1>Okay, So, like if we see a file modified before

400
00:18:44.400 --> 00:18:47.079
<v Speaker 1>it was supposedly created, that's a red flag.

401
00:18:46.799 --> 00:18:49.599
<v Speaker 2>Big red flag. Or if all the time stamps are

402
00:18:49.920 --> 00:18:53.200
<v Speaker 2>like suspiciously rounded to the nearest hour, that could mean

403
00:18:53.200 --> 00:18:54.720
<v Speaker 2>someone was trying to cover their tracks.

404
00:18:54.839 --> 00:18:57.279
<v Speaker 1>It's like noticing that all the clocks in a suspect's

405
00:18:57.279 --> 00:18:59.480
<v Speaker 1>house are set to the same time, even though they

406
00:18:59.519 --> 00:19:01.960
<v Speaker 1>were supposedly set independently.

407
00:19:02.319 --> 00:19:05.720
<v Speaker 2>That's a great analogy. And besides timestamps, another useful tool

408
00:19:05.759 --> 00:19:09.119
<v Speaker 2>for timeline analysis is the last command. It shows a

409
00:19:09.200 --> 00:19:11.119
<v Speaker 2>history of user logins on the system.

410
00:19:11.240 --> 00:19:13.119
<v Speaker 1>Oh okay, so we can see who logged in, when

411
00:19:13.160 --> 00:19:15.200
<v Speaker 1>they logged in, and even where they logged in from.

412
00:19:15.400 --> 00:19:19.079
<v Speaker 2>You got it? And this information, combined with other log files,

413
00:19:19.319 --> 00:19:22.279
<v Speaker 2>it can help us spot unusual log in patterns, track

414
00:19:22.359 --> 00:19:25.960
<v Speaker 2>user activity, and potentially pinpoint the exact time frame of

415
00:19:25.960 --> 00:19:26.960
<v Speaker 2>the security incident.

416
00:19:27.240 --> 00:19:30.720
<v Speaker 1>Okay, so we've got time stamps, timelines, and user log

417
00:19:30.759 --> 00:19:33.759
<v Speaker 1>in records. But now I'm curious about the filesystems themselves.

418
00:19:34.480 --> 00:19:38.880
<v Speaker 1>What makes Linux file systems unique? What are the quirks

419
00:19:38.920 --> 00:19:41.440
<v Speaker 1>we need to be aware of from a forensic perspective.

420
00:19:42.319 --> 00:19:44.960
<v Speaker 2>Well, the X file system it's commonly used in Linux.

421
00:19:45.160 --> 00:19:47.359
<v Speaker 2>It has its own quirks and intricacies.

422
00:19:47.480 --> 00:19:47.799
<v Speaker 1>Okay.

423
00:19:48.319 --> 00:19:53.000
<v Speaker 2>Understanding concepts like inodes, data blocks, indirect blocks, all that stuff.

424
00:19:53.640 --> 00:19:56.440
<v Speaker 2>It's crucial for effective forensic analysis.

425
00:19:56.519 --> 00:20:00.759
<v Speaker 1>Inodes, data blocks. It sounds like we're entering a within

426
00:20:00.799 --> 00:20:01.400
<v Speaker 1>the hard drive.

427
00:20:01.559 --> 00:20:03.680
<v Speaker 2>Think of it this way. The inode, that's like a

428
00:20:03.720 --> 00:20:08.039
<v Speaker 2>file's identity card. Okay, it contains all that metadata, the timestamps,

429
00:20:08.079 --> 00:20:09.799
<v Speaker 2>ownership permissions.

430
00:20:09.559 --> 00:20:11.759
<v Speaker 1>So the inode tells us who the file belongs to,

431
00:20:11.880 --> 00:20:13.920
<v Speaker 1>when it was created or modified, and what kind of

432
00:20:13.920 --> 00:20:15.240
<v Speaker 1>access permissions it has.

433
00:20:15.359 --> 00:20:17.160
<v Speaker 2>You've got. And the data blocks, well, that's where the

434
00:20:17.200 --> 00:20:18.720
<v Speaker 2>actual content of the file is stored.

435
00:20:18.759 --> 00:20:20.680
<v Speaker 1>So if we're trying to recover a deleted file, we

436
00:20:20.720 --> 00:20:23.079
<v Speaker 1>need to find both the inode and the data blocks.

437
00:20:23.519 --> 00:20:26.400
<v Speaker 2>You got it. And within the X filesystem there are

438
00:20:26.440 --> 00:20:30.759
<v Speaker 2>also these things called extended attributes and access control lists.

439
00:20:31.319 --> 00:20:35.200
<v Speaker 2>They can be used to store additional information about files.

440
00:20:35.000 --> 00:20:38.039
<v Speaker 1>Additional information like what kind of information it could be,

441
00:20:38.079 --> 00:20:41.720
<v Speaker 1>anything really, from security settings to user defined data.

442
00:20:42.319 --> 00:20:46.359
<v Speaker 2>And attackers they're clever. Sometimes they exploit these features to

443
00:20:46.519 --> 00:20:49.000
<v Speaker 2>hide data or malicious code.

444
00:20:49.119 --> 00:20:52.319
<v Speaker 1>Oh sneaky. So it's like they're playing a digital game

445
00:20:52.319 --> 00:20:53.559
<v Speaker 1>of hide and seek with us.

446
00:20:53.640 --> 00:20:58.720
<v Speaker 2>Exactly, And As filesystems evolve, they introduce new features, okay,

447
00:20:58.759 --> 00:21:02.000
<v Speaker 2>like extents, which are a more efficient way to manage

448
00:21:02.119 --> 00:21:04.920
<v Speaker 2>large files, but they can also be more complex to

449
00:21:05.039 --> 00:21:06.960
<v Speaker 2>analyze from a forensic standpoint.

450
00:21:06.960 --> 00:21:10.400
<v Speaker 1>So the landscape's always changing, always presenting new challenges for

451
00:21:10.720 --> 00:21:12.440
<v Speaker 1>both the attackers and the investigators.

452
00:21:12.480 --> 00:21:14.519
<v Speaker 2>It is. It's a constant cat and mouse game.

453
00:21:14.599 --> 00:21:16.799
<v Speaker 1>That's what makes this feel so exciting, right exactly.

454
00:21:16.839 --> 00:21:19.759
<v Speaker 2>It's a constant learning process. There's always something new to discover.

455
00:21:20.079 --> 00:21:22.559
<v Speaker 1>Okay, so we've got a grasp of the basics of

456
00:21:22.599 --> 00:21:25.480
<v Speaker 1>the X file system, but let's bring it back to

457
00:21:25.519 --> 00:21:31.519
<v Speaker 1>your case fills awesome stuff. How did Polstra use this knowledge,

458
00:21:31.559 --> 00:21:35.519
<v Speaker 1>this file system knowledge, to unravel the mystery of that

459
00:21:35.640 --> 00:21:37.039
<v Speaker 1>compromised web server.

460
00:21:37.480 --> 00:21:39.839
<v Speaker 2>Well, he used a few techniques, one of them being

461
00:21:39.880 --> 00:21:43.359
<v Speaker 2>analyzing a RAM dump with a tool called volatility.

462
00:21:43.759 --> 00:21:45.200
<v Speaker 1>Volatility that sounds familiar.

463
00:21:45.240 --> 00:21:47.240
<v Speaker 2>We talked about it earlier, remember when we were discussing

464
00:21:47.240 --> 00:21:47.920
<v Speaker 2>live analysis.

465
00:21:47.960 --> 00:21:48.640
<v Speaker 1>Oh right.

466
00:21:48.720 --> 00:21:51.799
<v Speaker 2>Volatility is a powerful tool. It lets us analyze the

467
00:21:51.880 --> 00:21:55.119
<v Speaker 2>contents of RAM even after the system has been shut down.

468
00:21:55.799 --> 00:21:59.200
<v Speaker 2>In this case, Polstry used it to uncover hidden processes

469
00:21:59.200 --> 00:22:02.160
<v Speaker 2>and files that wouldn't have been visible through normal file

470
00:22:02.240 --> 00:22:03.079
<v Speaker 2>system analysis.

471
00:22:03.079 --> 00:22:05.440
<v Speaker 1>Oh wow, so it's like using x ray vision right

472
00:22:05.480 --> 00:22:08.039
<v Speaker 1>exactly to see beneath the surface of the operating system.

473
00:22:08.119 --> 00:22:08.599
<v Speaker 2>You got it.

474
00:22:08.640 --> 00:22:11.519
<v Speaker 1>And he also used network traffic analysis, right, he did

475
00:22:11.640 --> 00:22:16.119
<v Speaker 1>to kind of trace the attacker's activity, reveal those suspicious connections,

476
00:22:16.160 --> 00:22:17.920
<v Speaker 1>maybe even backdoors.

477
00:22:17.640 --> 00:22:21.559
<v Speaker 2>Precisely so volatility it helped him understand what was happening

478
00:22:21.599 --> 00:22:24.839
<v Speaker 2>on the system itself, and then the network traffic analysis

479
00:22:24.839 --> 00:22:28.160
<v Speaker 2>showed him how the attacker was interacting with the outside world.

480
00:22:28.400 --> 00:22:31.640
<v Speaker 1>Okay, so he's putting together the pieces both internally and

481
00:22:31.720 --> 00:22:32.720
<v Speaker 1>external exactly.

482
00:22:32.799 --> 00:22:35.880
<v Speaker 2>And by combining those techniques, Polster was able to build

483
00:22:35.920 --> 00:22:39.920
<v Speaker 2>a really compelling narrative of the attack, ultimately leading to

484
00:22:39.960 --> 00:22:43.039
<v Speaker 2>the identification and apprehension of the culprit.

485
00:22:43.119 --> 00:22:46.799
<v Speaker 1>That's amazing. This fills awesome stuff case. It's a great

486
00:22:46.839 --> 00:22:50.920
<v Speaker 1>example of how powerful Linux forensics can be. But I

487
00:22:50.960 --> 00:22:52.880
<v Speaker 1>feel like we've only scratched the surface here.

488
00:22:52.960 --> 00:22:55.480
<v Speaker 2>Oh, we've just begun. There's a whole world of advanced

489
00:22:55.519 --> 00:22:57.160
<v Speaker 2>techniques and specialized tools out there.

490
00:22:57.200 --> 00:22:59.119
<v Speaker 1>Well, I guess that means we need to dive even deeper.

491
00:22:59.200 --> 00:23:00.039
<v Speaker 2>Right, let's do it.

492
00:23:00.119 --> 00:23:02.799
<v Speaker 1>But before we do, left, take a moment to recap

493
00:23:02.839 --> 00:23:04.960
<v Speaker 1>some of the key takeaways from this first part of

494
00:23:05.000 --> 00:23:09.279
<v Speaker 1>our investigation sounds good. What stood out to you as

495
00:23:09.400 --> 00:23:12.559
<v Speaker 1>particularly interesting or maybe unexpected? So far?

496
00:23:12.960 --> 00:23:15.319
<v Speaker 2>Oh, there's so much Where do we even begin.

497
00:23:15.759 --> 00:23:19.240
<v Speaker 1>Honestly, that whole idea of shutting down a compromise system

498
00:23:19.279 --> 00:23:21.799
<v Speaker 1>could actually be the wrong move. That was the real

499
00:23:21.839 --> 00:23:24.799
<v Speaker 1>eye opener for me. It's counterintuitive. You think you're containing

500
00:23:24.839 --> 00:23:27.519
<v Speaker 1>the damage, but you might actually be helping the attacker

501
00:23:27.599 --> 00:23:28.440
<v Speaker 1>cover their tracks.

502
00:23:28.559 --> 00:23:30.200
<v Speaker 2>It is, isn't. It's one of those things you only

503
00:23:30.279 --> 00:23:34.119
<v Speaker 2>learned through experience or by reading Polster's book, I guess

504
00:23:34.519 --> 00:23:37.759
<v Speaker 2>And in that Fills Awesome stuff case, he actually he

505
00:23:37.880 --> 00:23:41.319
<v Speaker 2>emphasizes talking to the users as like one of the

506
00:23:41.359 --> 00:23:41.960
<v Speaker 2>first steps.

507
00:23:42.200 --> 00:23:45.960
<v Speaker 1>Oh interesting. So good old fashioned human intelligence still crucial

508
00:23:46.200 --> 00:23:48.680
<v Speaker 1>even in a high tech cybercrime investigation.

509
00:23:49.000 --> 00:23:52.599
<v Speaker 2>Absolutely. Users can often provide insights that no amount of

510
00:23:52.599 --> 00:23:56.799
<v Speaker 2>technical analysis can you uncover. They might have noticed something strange,

511
00:23:56.880 --> 00:23:59.799
<v Speaker 2>like odd behavior on their computer, or recent software in

512
00:23:59.839 --> 00:24:02.680
<v Speaker 2>stations that shouldn't be there, or even you know, potential

513
00:24:02.759 --> 00:24:05.240
<v Speaker 2>security lapses. Things they could point us in the right direction.

514
00:24:05.359 --> 00:24:08.759
<v Speaker 1>Right, So it's like interviewing witnesses at a crime scene. Right,

515
00:24:09.240 --> 00:24:12.079
<v Speaker 1>they might have seen or heard something crucial that helps

516
00:24:12.079 --> 00:24:14.119
<v Speaker 1>you piece together the puzzle precisely.

517
00:24:14.599 --> 00:24:17.599
<v Speaker 2>And sometimes just talking to the users can quickly debunk

518
00:24:17.640 --> 00:24:21.279
<v Speaker 2>a suspected incident. Maybe a system administrator was performing like

519
00:24:21.480 --> 00:24:24.880
<v Speaker 2>routine maintenance and that triggered some unusual activity that was

520
00:24:24.920 --> 00:24:26.400
<v Speaker 2>mistaken for a security breach.

521
00:24:26.640 --> 00:24:29.160
<v Speaker 1>Oh okay, So it's always good to get the full story,

522
00:24:29.200 --> 00:24:33.119
<v Speaker 1>all perspectives before jumping to conclusions. But what are some

523
00:24:33.200 --> 00:24:35.559
<v Speaker 1>of the key questions we should be asking these users?

524
00:24:35.640 --> 00:24:38.599
<v Speaker 1>Like what kind of information are we really looking for?

525
00:24:39.240 --> 00:24:41.519
<v Speaker 2>You want to start with open ended questions? Well, if

526
00:24:41.559 --> 00:24:44.160
<v Speaker 2>it ended, yeah, things like what makes you think there's

527
00:24:44.200 --> 00:24:47.559
<v Speaker 2>a problem, or can you describe what you've observed? You know,

528
00:24:47.680 --> 00:24:49.720
<v Speaker 2>encourage them to share their perspective, and that can often

529
00:24:49.799 --> 00:24:51.160
<v Speaker 2>lead to unexpected insights.

530
00:24:51.440 --> 00:24:54.519
<v Speaker 1>So it's about understanding their concerns and getting them to

531
00:24:54.799 --> 00:24:58.240
<v Speaker 1>like really elaborate on what they've seen or experienced exactly.

532
00:24:58.240 --> 00:25:02.079
<v Speaker 2>And don't underestimate the power of of you know, active listening.

533
00:25:02.440 --> 00:25:05.039
<v Speaker 2>Pay attention to their tone of voice, body language, What

534
00:25:05.119 --> 00:25:08.160
<v Speaker 2>details do they emphasize, what do they kind of downplay?

535
00:25:08.720 --> 00:25:12.039
<v Speaker 2>You know, sometimes what's not said can be just as

536
00:25:12.079 --> 00:25:14.000
<v Speaker 2>revealing as what I have said, Right.

537
00:25:13.839 --> 00:25:16.119
<v Speaker 1>It's like reading between the lines, picking up on those

538
00:25:16.160 --> 00:25:18.359
<v Speaker 1>subtle cues that might point you in the right direction.

539
00:25:18.599 --> 00:25:21.920
<v Speaker 2>Right, And while you're gathering all this information, don't forget

540
00:25:21.960 --> 00:25:26.960
<v Speaker 2>to document everything. Use a notebook, voice recorder, whatever works

541
00:25:27.000 --> 00:25:29.519
<v Speaker 2>best for you, but make sure you have a clear

542
00:25:29.680 --> 00:25:31.680
<v Speaker 2>and accurate record of the conversation.

543
00:25:32.200 --> 00:25:35.359
<v Speaker 1>Right back to that crucial documentation step. But you know,

544
00:25:35.440 --> 00:25:37.960
<v Speaker 1>taking notes on a laptop during an interview, I feel

545
00:25:37.960 --> 00:25:40.720
<v Speaker 1>like it can be a bit distracting, both for you

546
00:25:41.000 --> 00:25:44.559
<v Speaker 1>and the person you're talking to. It creates this barrier between.

547
00:25:44.319 --> 00:25:46.960
<v Speaker 2>Oh, absolutely, a good old fashioned notebook, you know, pen

548
00:25:47.000 --> 00:25:49.960
<v Speaker 2>and paper. It's often the best tool for taking notes

549
00:25:50.039 --> 00:25:52.920
<v Speaker 2>during those interviews. It's less intrusive, you can jot down

550
00:25:53.000 --> 00:25:56.920
<v Speaker 2>key points quickly, and it doesn't create that psychological distance

551
00:25:56.960 --> 00:25:59.279
<v Speaker 2>that you know a laptop screen sometimes.

552
00:25:58.960 --> 00:26:02.720
<v Speaker 1>Can, right about fostering a more natural conversation exactly.

553
00:26:03.119 --> 00:26:05.599
<v Speaker 2>And besides all the information you gather from the users,

554
00:26:05.920 --> 00:26:08.279
<v Speaker 2>you want to document everything you know about the subject

555
00:26:08.279 --> 00:26:11.880
<v Speaker 2>system itself. Okay, what operating system are they running, what

556
00:26:12.079 --> 00:26:15.319
<v Speaker 2>software is installed? Are there any known vulnerabilities?

557
00:26:15.640 --> 00:26:18.960
<v Speaker 1>Right, So it's like building a profile, almost understanding its

558
00:26:19.000 --> 00:26:23.000
<v Speaker 1>strengths and weaknesses before you even start digging into the.

559
00:26:23.039 --> 00:26:27.200
<v Speaker 2>Evidence precisely, and you know, if it seems appropriate, you

560
00:26:27.279 --> 00:26:30.240
<v Speaker 2>might even want to snap a picture of the computer

561
00:26:30.319 --> 00:26:31.880
<v Speaker 2>and its surroundings.

562
00:26:31.279 --> 00:26:34.039
<v Speaker 1>Oh, like a crime scene photo. But why is that

563
00:26:34.119 --> 00:26:38.279
<v Speaker 1>necessary in a digital investigation, Well, it can provide context.

564
00:26:38.960 --> 00:26:41.039
<v Speaker 2>Maybe there's a sticky note on the monitor with a

565
00:26:41.079 --> 00:26:45.160
<v Speaker 2>password written on it. Oh, or the computers located in

566
00:26:45.200 --> 00:26:49.480
<v Speaker 2>an area with like really lacks physical security. Those seemingly

567
00:26:49.519 --> 00:26:52.599
<v Speaker 2>insignificant details, they can sometimes be incredibly revealing.

568
00:26:52.720 --> 00:26:55.240
<v Speaker 1>It's a good reminder that physical and digital security are

569
00:26:55.240 --> 00:26:58.160
<v Speaker 1>often like intertwined. They go hand in hand exactly.

570
00:26:58.599 --> 00:27:01.440
<v Speaker 2>And once you've gathered all this eliminary information, you know,

571
00:27:01.519 --> 00:27:04.839
<v Speaker 2>talk to the users documented the system. You're finally ready

572
00:27:04.880 --> 00:27:07.720
<v Speaker 2>to start interacting with the subject system itself. But before

573
00:27:07.759 --> 00:27:11.480
<v Speaker 2>you do, remember that golden rule of digital forensics.

574
00:27:12.240 --> 00:27:15.279
<v Speaker 1>Minimize disturbance, right, we talked about that earlier. It's like

575
00:27:15.319 --> 00:27:18.799
<v Speaker 1>avoiding contamination at a crime scene. Don't touch anything you don't.

576
00:27:18.599 --> 00:27:23.519
<v Speaker 2>Have to precisely, And one way to minimize disturbance is

577
00:27:23.559 --> 00:27:26.799
<v Speaker 2>to use what we call known good binaries.

578
00:27:27.319 --> 00:27:29.640
<v Speaker 1>Known good binaries and what are those?

579
00:27:29.759 --> 00:27:33.920
<v Speaker 2>They're basically trusted, verified copies of the tools we need

580
00:27:33.960 --> 00:27:37.200
<v Speaker 2>to use during our investigation. Think of them like sterile

581
00:27:37.200 --> 00:27:38.759
<v Speaker 2>instruments for a digital surgery.

582
00:27:38.839 --> 00:27:42.160
<v Speaker 1>Okay, so we're not installing any potentially compromised software on

583
00:27:42.160 --> 00:27:45.400
<v Speaker 1>the suspect machine. We're bringing our own clean.

584
00:27:45.400 --> 00:27:49.640
<v Speaker 2>Tools exactly, these known good binaries. They're usually stored on

585
00:27:49.680 --> 00:27:52.799
<v Speaker 2>a separate secure device, like a USB drive, and we

586
00:27:52.880 --> 00:27:56.680
<v Speaker 2>boot the subject system from that device to perform our analysis.

587
00:27:56.960 --> 00:28:00.880
<v Speaker 1>So we're creating a safe and controlled environment for our investigation. Yeah,

588
00:28:01.039 --> 00:28:03.440
<v Speaker 1>isolated from the potentially compromised system.

589
00:28:03.640 --> 00:28:06.519
<v Speaker 2>You got it. And by using those known good binaries,

590
00:28:06.680 --> 00:28:09.200
<v Speaker 2>we can be confident that the results of our analysis

591
00:28:09.200 --> 00:28:13.160
<v Speaker 2>are accurate and haven't been influenced by any external factors.

592
00:28:13.279 --> 00:28:15.640
<v Speaker 1>Makes sense. But how do we go about getting these

593
00:28:16.079 --> 00:28:18.680
<v Speaker 1>known good binaries? Do we just like download them from

594
00:28:18.720 --> 00:28:19.240
<v Speaker 1>the internet.

595
00:28:19.480 --> 00:28:23.079
<v Speaker 2>Well, you could, but that's not the most secure approach. Ideally,

596
00:28:23.119 --> 00:28:26.359
<v Speaker 2>you'd build them yourself, which involves compiling the source code

597
00:28:26.480 --> 00:28:29.000
<v Speaker 2>of the tools you need on a trusted system.

598
00:28:29.240 --> 00:28:33.559
<v Speaker 1>Compiling source code. That sounds a little uh technical, maybe

599
00:28:33.640 --> 00:28:36.599
<v Speaker 1>for someone who's just starting out in digital forensics, it

600
00:28:36.640 --> 00:28:36.960
<v Speaker 1>can be.

601
00:28:37.160 --> 00:28:42.319
<v Speaker 2>Yeah, but they're also pre built collections of known good

602
00:28:42.400 --> 00:28:45.000
<v Speaker 2>binaries available from reputable sources.

603
00:28:45.119 --> 00:28:45.720
<v Speaker 1>Oh okay.

604
00:28:45.920 --> 00:28:48.759
<v Speaker 2>Sans Institute, for example, they offer the SIFT work Station,

605
00:28:49.200 --> 00:28:51.839
<v Speaker 2>which is a virtual machine preloaded with a suite of

606
00:28:51.839 --> 00:28:52.680
<v Speaker 2>forensic tools.

607
00:28:52.880 --> 00:28:55.920
<v Speaker 1>So it's like choosing between building your own toolbox from

608
00:28:55.960 --> 00:29:00.240
<v Speaker 1>scratch or buying a pre assembled one from a trusted supply.

609
00:29:00.319 --> 00:29:03.839
<v Speaker 2>Exactly, And both options have their pros and cons. Building

610
00:29:03.839 --> 00:29:06.559
<v Speaker 2>your own binaries gives you more control, you can customize it,

611
00:29:06.799 --> 00:29:09.839
<v Speaker 2>but it requires a deeper understanding of those tools and

612
00:29:09.880 --> 00:29:11.759
<v Speaker 2>that compilation process, right.

613
00:29:11.640 --> 00:29:15.160
<v Speaker 1>Whereas using those pre BLOIWL binarrows is more convenient. Yeah,

614
00:29:15.160 --> 00:29:18.839
<v Speaker 1>but then you're relying on the trustworthiness of the source exactly.

615
00:29:19.160 --> 00:29:21.799
<v Speaker 2>So the choice really depends on your level of expertise,

616
00:29:22.039 --> 00:29:25.000
<v Speaker 2>your budget, and the specific needs of your investigation.

617
00:29:25.319 --> 00:29:27.319
<v Speaker 1>Okay, that makes sense. So let's say we've got our

618
00:29:27.400 --> 00:29:31.559
<v Speaker 1>known good binaries all set ready to go. What's next,

619
00:29:32.160 --> 00:29:35.559
<v Speaker 1>how do we actually interact with the suspect system without

620
00:29:35.599 --> 00:29:36.440
<v Speaker 1>contaminating it.

621
00:29:36.799 --> 00:29:39.839
<v Speaker 2>Remember netcat, that tool we talked about. It's not just

622
00:29:39.880 --> 00:29:42.880
<v Speaker 2>for discreetly gathering data. We can also use it to

623
00:29:42.920 --> 00:29:47.000
<v Speaker 2>create a secure communication channel between the suspect system and

624
00:29:47.039 --> 00:29:48.200
<v Speaker 2>our forensics workstation.

625
00:29:48.400 --> 00:29:51.680
<v Speaker 1>Oh right, right, So we're using netcat to send commands

626
00:29:51.720 --> 00:29:54.240
<v Speaker 1>to the Suspect system and get the output back on

627
00:29:54.279 --> 00:29:57.759
<v Speaker 1>our workstation, all without installing anything on the target machine.

628
00:29:57.839 --> 00:29:59.960
<v Speaker 2>Exactly. It's like having a remote control for the SUSTA

629
00:30:00.000 --> 00:30:03.599
<v Speaker 2>spec system, allowing us to perform our analysis safely, securely.

630
00:30:03.799 --> 00:30:06.119
<v Speaker 1>These tools are so resourceful it's like we're ma guivering

631
00:30:06.160 --> 00:30:10.000
<v Speaker 1>our way through this investigation. But speaking of resourcefulness, you

632
00:30:10.039 --> 00:30:12.880
<v Speaker 1>mentioned that Polster's book includes scripts to automate some of

633
00:30:12.920 --> 00:30:17.480
<v Speaker 1>these processes. How does scripting come into play during live analysis?

634
00:30:17.799 --> 00:30:20.079
<v Speaker 2>Scripting could be a huge time saver, and it can

635
00:30:20.119 --> 00:30:21.480
<v Speaker 2>also help reduce errors.

636
00:30:21.599 --> 00:30:21.920
<v Speaker 1>Okay.

637
00:30:22.000 --> 00:30:24.279
<v Speaker 2>For example, you could write a script to automate the

638
00:30:24.319 --> 00:30:27.720
<v Speaker 2>process of collecting that volatile data from the Suspect system

639
00:30:28.000 --> 00:30:28.759
<v Speaker 2>using netcat.

640
00:30:29.000 --> 00:30:32.319
<v Speaker 1>Oh right, So instead of manually typing out commands, copying

641
00:30:32.319 --> 00:30:35.119
<v Speaker 1>and pasting data, you can have a script do it

642
00:30:35.119 --> 00:30:35.599
<v Speaker 1>all for you.

643
00:30:35.839 --> 00:30:39.119
<v Speaker 2>Exactly. We can write scripts to gather information about running processes,

644
00:30:39.160 --> 00:30:43.200
<v Speaker 2>network connections, open files, even capture the contents of RAM,

645
00:30:43.559 --> 00:30:45.599
<v Speaker 2>all without leaving a trace on the system itself.

646
00:30:45.799 --> 00:30:49.240
<v Speaker 1>So scripting makes us much more efficient and thorough in

647
00:30:49.279 --> 00:30:50.519
<v Speaker 1>our live response.

648
00:30:50.160 --> 00:30:54.519
<v Speaker 2>Precisely, and it's a skill that's becoming honestly increasingly important

649
00:30:54.559 --> 00:30:57.920
<v Speaker 2>in digital forensics, as the volume and complexity of data just.

650
00:30:58.000 --> 00:31:00.799
<v Speaker 1>Keep growing, right, it's like having a superpower. Okay, so

651
00:31:00.839 --> 00:31:04.839
<v Speaker 1>we've gathered some initial data using our known good binaries

652
00:31:04.880 --> 00:31:07.920
<v Speaker 1>and netcat. What are some of the key things we

653
00:31:07.920 --> 00:31:10.240
<v Speaker 1>should be on the lookout for during this initial live

654
00:31:10.279 --> 00:31:13.880
<v Speaker 1>response phase, like what are the red flags at scream compromise.

655
00:31:14.559 --> 00:31:16.680
<v Speaker 2>One of the first things to check, It's simple, but important,

656
00:31:17.039 --> 00:31:19.079
<v Speaker 2>is the system's date and time settings.

657
00:31:19.160 --> 00:31:20.240
<v Speaker 1>Okay, date and time.

658
00:31:20.319 --> 00:31:23.079
<v Speaker 2>Yeah. Attackers often mess with those to cover their tracks

659
00:31:23.279 --> 00:31:25.000
<v Speaker 2>or to make it harder to correlate events.

660
00:31:25.079 --> 00:31:27.559
<v Speaker 1>So it's like checking the clocks at a crime scene

661
00:31:27.599 --> 00:31:29.720
<v Speaker 1>to see if they've been tampered with exactly.

662
00:31:30.000 --> 00:31:33.000
<v Speaker 2>And you'll also want to gather info about the operating system, version,

663
00:31:33.400 --> 00:31:37.960
<v Speaker 2>installed patches, any unusual software that might have been recently installed, right.

664
00:31:37.880 --> 00:31:41.640
<v Speaker 1>So taking inventory, looking for signs of weakness exactly.

665
00:31:41.799 --> 00:31:46.119
<v Speaker 2>And don't forget about network information, okay, check those network interfaces,

666
00:31:46.160 --> 00:31:50.319
<v Speaker 2>active connections, open ports. This can help you identify any

667
00:31:50.319 --> 00:31:55.240
<v Speaker 2>suspicious communication patterns or maybe backdoors that have been sneakily installed.

668
00:31:55.319 --> 00:31:58.480
<v Speaker 1>It's like tracing the system's communication channels, right, Yeah, seeing

669
00:31:58.480 --> 00:31:59.319
<v Speaker 1>who it's been talking to.

670
00:31:59.519 --> 00:32:02.039
<v Speaker 2>You got it. You'll also want to examine the system's

671
00:32:02.079 --> 00:32:06.319
<v Speaker 2>process list look for any unusual or suspicious programs that

672
00:32:06.359 --> 00:32:06.799
<v Speaker 2>are running.

673
00:32:06.839 --> 00:32:09.680
<v Speaker 1>So it's like taking a snapshot of the system's activity

674
00:32:09.720 --> 00:32:12.400
<v Speaker 1>and then looking for anything out of place precisely.

675
00:32:12.880 --> 00:32:15.920
<v Speaker 2>And you can use tools like ELSOF to see which

676
00:32:15.960 --> 00:32:19.279
<v Speaker 2>files are currently opened by different processes, which can often

677
00:32:19.319 --> 00:32:22.440
<v Speaker 2>reveal those hidden connections or data access patterns.

678
00:32:22.559 --> 00:32:25.079
<v Speaker 1>It's like following the data trail, seeing which files are

679
00:32:25.119 --> 00:32:27.119
<v Speaker 1>being touched and by whom precisely.

680
00:32:27.559 --> 00:32:30.440
<v Speaker 2>And don't forget to examine the system's routing tables.

681
00:32:30.559 --> 00:32:32.319
<v Speaker 1>Routing tables, yeah.

682
00:32:32.400 --> 00:32:34.400
<v Speaker 2>They determine how network traffic is directed.

683
00:32:34.480 --> 00:32:35.000
<v Speaker 1>Oh okay.

684
00:32:35.200 --> 00:32:39.039
<v Speaker 2>Attackers often modify these to redirect traffic to their own

685
00:32:39.079 --> 00:32:41.640
<v Speaker 2>servers or to create those sneaky back doors.

686
00:32:41.839 --> 00:32:44.240
<v Speaker 1>It's like checking the road signs, making sure they haven't

687
00:32:44.279 --> 00:32:46.680
<v Speaker 1>been altered to lead us astray exactly.

688
00:32:47.119 --> 00:32:49.480
<v Speaker 2>You'll also want to check the system's list of mounted

689
00:32:49.519 --> 00:32:53.559
<v Speaker 2>file systems that can reveal hidden partitions or external devices

690
00:32:53.599 --> 00:32:55.960
<v Speaker 2>that might be harboring evidence.

691
00:32:56.039 --> 00:32:58.519
<v Speaker 1>So we're making sure we're not missing any secret rooms

692
00:32:58.519 --> 00:32:59.960
<v Speaker 1>in our digital crime scene.

693
00:33:00.119 --> 00:33:03.240
<v Speaker 2>You got it. And finally, don't forget to examine the

694
00:33:03.279 --> 00:33:07.359
<v Speaker 2>system's list of loaded kernel modules. These are basically extensions

695
00:33:07.400 --> 00:33:08.400
<v Speaker 2>to the operating.

696
00:33:08.000 --> 00:33:09.640
<v Speaker 1>Systeml kernel module.

697
00:33:09.759 --> 00:33:13.119
<v Speaker 2>Yeah, and attackers sometimes use malicious kernel modules to hide

698
00:33:13.160 --> 00:33:16.640
<v Speaker 2>their presence or to gain that privileged access thereafter.

699
00:33:16.519 --> 00:33:21.440
<v Speaker 1>So it's like checking for unauthorized modifications to the heart

700
00:33:21.480 --> 00:33:23.640
<v Speaker 1>of the operating system itself exactly.

701
00:33:23.839 --> 00:33:27.240
<v Speaker 2>By carefully examining all these aspects of the system during

702
00:33:27.279 --> 00:33:30.200
<v Speaker 2>our initial live response, we can start to get a

703
00:33:30.240 --> 00:33:33.400
<v Speaker 2>clearer picture of what we're dealing with the potential incident

704
00:33:33.759 --> 00:33:35.920
<v Speaker 2>and determine how to proceed with the investigation.

705
00:33:36.119 --> 00:33:38.480
<v Speaker 1>Okay, that's quite a checklist. It sounds like there's a

706
00:33:38.519 --> 00:33:40.359
<v Speaker 1>lot to consider during this initial phase.

707
00:33:40.599 --> 00:33:44.359
<v Speaker 2>There is, But remember, the goal of live response isn't

708
00:33:44.400 --> 00:33:47.599
<v Speaker 2>to do a full blown analysis. It's to gather enough

709
00:33:47.640 --> 00:33:52.160
<v Speaker 2>information to assess the situation and make some smart decisions

710
00:33:52.200 --> 00:33:53.359
<v Speaker 2>about those next steps.

711
00:33:53.599 --> 00:33:57.200
<v Speaker 1>Right, So it's triage essentially, identify the key indicators of

712
00:33:57.200 --> 00:34:00.839
<v Speaker 1>compromise and then figure out the scope of the incident precisely.

713
00:34:01.319 --> 00:34:04.079
<v Speaker 2>And once we've gathered enough intel from our live response,

714
00:34:04.119 --> 00:34:06.200
<v Speaker 2>we can then move on to the more in depth

715
00:34:06.200 --> 00:34:08.880
<v Speaker 2>analysis of that disk image we created earlier.

716
00:34:09.000 --> 00:34:11.639
<v Speaker 1>Okay, so let's shift gears and talk about that process.

717
00:34:12.039 --> 00:34:14.920
<v Speaker 1>We've created our forensic image, whether we physically remove the

718
00:34:15.000 --> 00:34:18.280
<v Speaker 1>drive or used a live Linux distribution to do it. Now,

719
00:34:18.320 --> 00:34:21.119
<v Speaker 1>what how do we actually start digging into the contents

720
00:34:21.119 --> 00:34:21.920
<v Speaker 1>of that image.

721
00:34:22.079 --> 00:34:24.239
<v Speaker 2>First step got to mount the image.

722
00:34:24.239 --> 00:34:24.639
<v Speaker 1>Mounted.

723
00:34:25.039 --> 00:34:28.280
<v Speaker 2>That means making it accessible to our forensic tools as

724
00:34:28.280 --> 00:34:31.039
<v Speaker 2>if it were a physical drive plugged into our workstation.

725
00:34:31.199 --> 00:34:33.599
<v Speaker 1>Right we talked about mounting earlier. It's like virtually plugging

726
00:34:33.599 --> 00:34:35.719
<v Speaker 1>in the hard drive to our computer exactly.

727
00:34:36.159 --> 00:34:39.000
<v Speaker 2>But before we mount the image, remember, we need to

728
00:34:39.079 --> 00:34:42.960
<v Speaker 2>identify its partitioning scheme that determines how the drive sliced

729
00:34:43.039 --> 00:34:44.920
<v Speaker 2>up into those logical sections, right, like.

730
00:34:44.880 --> 00:34:47.440
<v Speaker 1>Those C and D drives you see in Windows. But

731
00:34:47.639 --> 00:34:50.320
<v Speaker 1>Linux it uses its own partitioning schemes, right.

732
00:34:50.239 --> 00:34:53.199
<v Speaker 2>You got it. The most common ones are MBR that's

733
00:34:53.239 --> 00:34:56.920
<v Speaker 2>the older scheme, and GBT, which is more modern and

734
00:34:56.960 --> 00:34:58.760
<v Speaker 2>can handle much larger drives.

735
00:34:58.960 --> 00:35:01.239
<v Speaker 1>Okay, so GPTI use the way to go then if

736
00:35:01.239 --> 00:35:03.800
<v Speaker 1>we're dealing with a more modern system.

737
00:35:03.519 --> 00:35:06.199
<v Speaker 2>Ideally, yes, but we still need to be aware of

738
00:35:06.239 --> 00:35:09.480
<v Speaker 2>both schemes because we might encounter those older systems that

739
00:35:09.519 --> 00:35:10.599
<v Speaker 2>are still using MBR.

740
00:35:11.039 --> 00:35:14.000
<v Speaker 1>Right, it's like knowing both metric and imperial measurements. You

741
00:35:14.039 --> 00:35:14.920
<v Speaker 1>need to be able to work with.

742
00:35:14.880 --> 00:35:18.519
<v Speaker 2>Both exactly, and to identify the partitioning scheme of our

743
00:35:18.559 --> 00:35:21.760
<v Speaker 2>disk image, we can use a tool called f disc f.

744
00:35:21.760 --> 00:35:25.159
<v Speaker 1>Disc okay, another command line tool. It seems like Linux

745
00:35:25.159 --> 00:35:27.360
<v Speaker 1>forensics involves a lot of command line wizardry.

746
00:35:27.599 --> 00:35:30.920
<v Speaker 2>It does, but f disc is actually pretty straightforward. We

747
00:35:31.000 --> 00:35:33.079
<v Speaker 2>run it on our mounted image and it tells us

748
00:35:33.119 --> 00:35:35.880
<v Speaker 2>whether it's MBR or GPT, and it gives us info

749
00:35:35.920 --> 00:35:36.800
<v Speaker 2>about each partition.

750
00:35:37.119 --> 00:35:39.480
<v Speaker 1>So it's like reading the blueprint of the hard drive,

751
00:35:40.119 --> 00:35:43.800
<v Speaker 1>seeing how it's structured, where each partition is located exactly.

752
00:35:43.840 --> 00:35:46.719
<v Speaker 2>And once we understand the partitioning scheme, we can then

753
00:35:46.760 --> 00:35:49.719
<v Speaker 2>mount the individual partitions that we're interested in analyzing.

754
00:35:50.119 --> 00:35:53.960
<v Speaker 1>Okay, so we've identified the partitioning scheme using updisc and

755
00:35:54.000 --> 00:35:56.880
<v Speaker 1>we're ready to mount the partitions. But I remember you

756
00:35:56.920 --> 00:36:00.719
<v Speaker 1>mentioned earlier that scripting can be used to automate the process.

757
00:36:01.159 --> 00:36:02.039
<v Speaker 1>How does that work?

758
00:36:02.280 --> 00:36:06.199
<v Speaker 2>Well? Mounting partitions manually can be a bit tedious, especially

759
00:36:06.199 --> 00:36:09.239
<v Speaker 2>if you're dealing with multiple partitions or complex file systems.

760
00:36:09.880 --> 00:36:13.519
<v Speaker 2>Scripting languages like Python can really help us automate this

761
00:36:13.599 --> 00:36:15.800
<v Speaker 2>whole process, making it way more efficient.

762
00:36:15.960 --> 00:36:18.840
<v Speaker 1>Oh okay, so we can write these Python scripts to

763
00:36:18.840 --> 00:36:22.639
<v Speaker 1>take care of those repetitive tasks, identifying partitions, mounting them,

764
00:36:22.679 --> 00:36:24.880
<v Speaker 1>and even maybe performing some basic analysis.

765
00:36:25.000 --> 00:36:27.760
<v Speaker 2>Exactly. It's like having a digital assistant taking care of

766
00:36:27.800 --> 00:36:30.079
<v Speaker 2>all the boring stuff, freeing us up to focus on

767
00:36:30.119 --> 00:36:33.400
<v Speaker 2>the more interesting and challenging aspects of the investigation.

768
00:36:33.719 --> 00:36:36.239
<v Speaker 1>I can see how that would be super helpful. Scripting

769
00:36:36.320 --> 00:36:40.239
<v Speaker 1>is like a secret weapon for digital forensics. But let's

770
00:36:40.239 --> 00:36:43.119
<v Speaker 1>say we've mounted our partitions and now we're faced with

771
00:36:43.119 --> 00:36:48.639
<v Speaker 1>this huge task of analyzing the data. We're talking potentially gigabytes,

772
00:36:48.840 --> 00:36:52.599
<v Speaker 1>maybe even terabytes of information. Where do we even begin

773
00:36:52.679 --> 00:36:54.320
<v Speaker 1>to make sense of all that?

774
00:36:54.320 --> 00:36:56.679
<v Speaker 2>That's one of the biggest challenges in digital forensics, right

775
00:36:57.000 --> 00:36:59.679
<v Speaker 2>the sheer volume of data we often have to deal with,

776
00:37:00.000 --> 00:37:02.400
<v Speaker 2>and a lot of those traditional forensic tools they involve

777
00:37:02.480 --> 00:37:06.079
<v Speaker 2>manually browsing through files and folders, which can be really

778
00:37:06.119 --> 00:37:09.559
<v Speaker 2>time consuming, not to mention incredibly inefficient.

779
00:37:09.760 --> 00:37:12.079
<v Speaker 1>So we need a better way, a more powerful way

780
00:37:12.280 --> 00:37:15.440
<v Speaker 1>to search and analyze this mountain of data.

781
00:37:15.039 --> 00:37:17.119
<v Speaker 2>Exactly, and that's where databases come into play.

782
00:37:17.239 --> 00:37:20.920
<v Speaker 1>Databases again, I thought those were for storing like structured data,

783
00:37:20.920 --> 00:37:23.400
<v Speaker 1>customer records, financial transactions.

784
00:37:23.559 --> 00:37:26.960
<v Speaker 2>They are, but they can also be incredibly valuable for

785
00:37:26.960 --> 00:37:31.320
<v Speaker 2>forensic analysis. Okay, by importing filesystem data into a database,

786
00:37:31.800 --> 00:37:35.760
<v Speaker 2>we can use SQL queries to like really quickly search, filter,

787
00:37:35.920 --> 00:37:38.440
<v Speaker 2>and analyze the data in ways that just aren't possible

788
00:37:38.599 --> 00:37:39.800
<v Speaker 2>with those traditional tools.

789
00:37:40.039 --> 00:37:43.199
<v Speaker 1>Oh okay, so it's like having this supercharged search engine

790
00:37:43.360 --> 00:37:46.960
<v Speaker 1>for our evidence. Instead of manually digging through files, we're

791
00:37:47.039 --> 00:37:52.599
<v Speaker 1>using SQL queries to pinpoint specific information, identify patterns, generate timelines.

792
00:37:52.719 --> 00:37:56.800
<v Speaker 2>You got it. Imagine you're investigating a case where you

793
00:37:56.920 --> 00:38:00.840
<v Speaker 2>suspect maybe a data breach, sensitive data way accessed, or

794
00:38:01.119 --> 00:38:04.960
<v Speaker 2>even exfiltrate it. With the database, you could import all

795
00:38:05.000 --> 00:38:09.639
<v Speaker 2>that relevant filesystem data, file time stamps, user log in records,

796
00:38:09.679 --> 00:38:12.880
<v Speaker 2>network connection logs, and then use SQL queries to ask

797
00:38:13.000 --> 00:38:14.599
<v Speaker 2>very specific questions.

798
00:38:14.280 --> 00:38:16.159
<v Speaker 1>Like what kind of questions? Give me an example.

799
00:38:16.239 --> 00:38:18.280
<v Speaker 2>Well, for instance, we could ask, show me all the

800
00:38:18.280 --> 00:38:21.039
<v Speaker 2>files that were modified between these two dates, but only

801
00:38:21.079 --> 00:38:23.920
<v Speaker 2>by users who logged in from this specific IP address.

802
00:38:24.039 --> 00:38:27.519
<v Speaker 1>Wow, that's super specific. So we're essentially zeroing in on

803
00:38:27.599 --> 00:38:31.320
<v Speaker 1>our search based on very precise criteria like the timeframe,

804
00:38:31.440 --> 00:38:32.760
<v Speaker 1>user activity.

805
00:38:32.280 --> 00:38:35.119
<v Speaker 2>Things like that decisely, and we can combine multiple criteria

806
00:38:35.159 --> 00:38:38.639
<v Speaker 2>in our queries, making those searches, much more targeted searches

807
00:38:38.679 --> 00:38:40.079
<v Speaker 2>that would take forever do manually.

808
00:38:40.199 --> 00:38:43.000
<v Speaker 1>Okay, I'm definitely seeing the power of databases now. But

809
00:38:43.320 --> 00:38:46.480
<v Speaker 1>setting them up, importing all that data that sounds pretty technical.

810
00:38:46.679 --> 00:38:49.880
<v Speaker 2>It can be, yeah, but thankfully there are these open

811
00:38:49.880 --> 00:38:53.679
<v Speaker 2>source database systems like my sequel that are relatively easy

812
00:38:53.679 --> 00:38:57.039
<v Speaker 2>to set up and use, and there's tons of documentation

813
00:38:57.239 --> 00:38:59.719
<v Speaker 2>tutorials online so you don't have to be a database

814
00:38:59.719 --> 00:39:00.800
<v Speaker 2>expit to get started.

815
00:39:00.920 --> 00:39:03.280
<v Speaker 1>Well, that's good to know. So databases are definitely a

816
00:39:03.360 --> 00:39:06.960
<v Speaker 1>powerful tool to have in our digital forensics arsenal. But

817
00:39:07.239 --> 00:39:10.159
<v Speaker 1>let's shift focus back to the analysis itself. We've talked

818
00:39:10.199 --> 00:39:13.480
<v Speaker 1>about time stamps building timelines, but how much can we

819
00:39:13.599 --> 00:39:16.679
<v Speaker 1>really rely on those timestamps as evidence? I mean, can

820
00:39:16.719 --> 00:39:17.760
<v Speaker 1>we trust them completely?

821
00:39:17.960 --> 00:39:21.000
<v Speaker 2>That's a great question. Time stamps they are super useful

822
00:39:21.039 --> 00:39:24.039
<v Speaker 2>for establishing a chronology of events, but we always have

823
00:39:24.079 --> 00:39:27.119
<v Speaker 2>to remember they can be manipulated by attackers.

824
00:39:26.760 --> 00:39:29.400
<v Speaker 1>So we can't just take them at face value exactly.

825
00:39:29.440 --> 00:39:32.159
<v Speaker 2>We need to view them as clues, not as you know,

826
00:39:32.320 --> 00:39:35.119
<v Speaker 2>the absolute truth, and we need to be on lookout

827
00:39:35.199 --> 00:39:39.719
<v Speaker 2>for any inconsistencies or suspicious patterns that might suggest tampering.

828
00:39:39.880 --> 00:39:42.039
<v Speaker 1>Okay, so what are some of the red flags we

829
00:39:42.039 --> 00:39:44.440
<v Speaker 1>should be looking for when we're analyzing timestamps.

830
00:39:44.719 --> 00:39:47.400
<v Speaker 2>Well, timestamps that are way out of sync with other

831
00:39:47.639 --> 00:39:51.079
<v Speaker 2>system logs or external time sources. That's a big one, right.

832
00:39:51.119 --> 00:39:53.679
<v Speaker 1>So if a file's timestamp says it was modified at

833
00:39:53.719 --> 00:39:56.400
<v Speaker 1>you know, three PM, but the system clock was off

834
00:39:56.440 --> 00:39:58.639
<v Speaker 1>by an hour, that's a problem exactly.

835
00:39:59.000 --> 00:40:02.519
<v Speaker 2>And another red flag is when time stamps are suspiciously rounded,

836
00:40:03.039 --> 00:40:05.280
<v Speaker 2>like to the nearest minute or hour. It's a little

837
00:40:05.320 --> 00:40:06.239
<v Speaker 2>too perfect.

838
00:40:06.039 --> 00:40:08.320
<v Speaker 1>Usually, right, it does seem a bit too convenient.

839
00:40:08.400 --> 00:40:11.159
<v Speaker 2>It does. And you should also watch out for identical

840
00:40:11.199 --> 00:40:15.079
<v Speaker 2>timestamps across multiple files that were supposedly created or modified

841
00:40:15.119 --> 00:40:15.840
<v Speaker 2>in different times.

842
00:40:15.920 --> 00:40:18.559
<v Speaker 1>Oh okay, Yeah, it's like finding several documents on a

843
00:40:18.599 --> 00:40:21.039
<v Speaker 1>suspect's computer that all claim to have been created at

844
00:40:21.039 --> 00:40:23.639
<v Speaker 1>the exact same second. That's not very likely exactly.

845
00:40:24.000 --> 00:40:26.679
<v Speaker 2>And finally, be wary of time stamps that have been

846
00:40:26.679 --> 00:40:29.400
<v Speaker 2>altered to pre date known events or to create this

847
00:40:29.599 --> 00:40:31.079
<v Speaker 2>false timeline of activity.

848
00:40:31.199 --> 00:40:34.599
<v Speaker 1>So the attacker is essentially trying to rewrite history to

849
00:40:34.679 --> 00:40:35.639
<v Speaker 1>fit their narrative.

850
00:40:35.840 --> 00:40:40.679
<v Speaker 2>Pcisely by carefully scrutinizing those timestamps, and corroborating them with

851
00:40:40.719 --> 00:40:43.639
<v Speaker 2>other evidence sources, we can reduce the risk of being

852
00:40:43.679 --> 00:40:45.320
<v Speaker 2>misled by attack or deception.

853
00:40:45.679 --> 00:40:49.440
<v Speaker 1>Okay, so timestamps useful, but handle with care. What about

854
00:40:49.440 --> 00:40:51.920
<v Speaker 1>other techniques for establishing a timeline? Are there any other

855
00:40:52.000 --> 00:40:53.480
<v Speaker 1>logs or records we can look at?

856
00:40:53.960 --> 00:40:57.800
<v Speaker 2>Absolutely? One handy tool is the last command. It shows

857
00:40:57.840 --> 00:41:00.679
<v Speaker 2>a history of user logins on the system, tells us

858
00:41:00.679 --> 00:41:02.480
<v Speaker 2>who logged in when and from where.

859
00:41:02.599 --> 00:41:04.400
<v Speaker 1>Oh okay, so we can see if there were any

860
00:41:04.480 --> 00:41:07.800
<v Speaker 1>unauthorized logins or if someone logged in from a suspicious

861
00:41:07.840 --> 00:41:09.199
<v Speaker 1>location exactly.

862
00:41:09.599 --> 00:41:13.039
<v Speaker 2>And by analyzing the output of last alongside those other

863
00:41:13.079 --> 00:41:16.880
<v Speaker 2>log files like WTMP and BTMP, we can create this

864
00:41:16.960 --> 00:41:19.880
<v Speaker 2>comprehensive timeline of user activity on the system.

865
00:41:20.159 --> 00:41:22.639
<v Speaker 1>WTP and BTP those sound familiar.

866
00:41:22.679 --> 00:41:23.679
<v Speaker 2>We talked about them earlier.

867
00:41:23.719 --> 00:41:27.360
<v Speaker 1>Oh that's right, that's right. WTMP stores records of successful

868
00:41:27.400 --> 00:41:31.440
<v Speaker 1>logins and BTM stores records of those failed login attempts.

869
00:41:31.559 --> 00:41:32.079
<v Speaker 2>You got it.

870
00:41:32.360 --> 00:41:35.920
<v Speaker 1>So. BTMP is especially helpful for identifying like brute force

871
00:41:35.920 --> 00:41:39.639
<v Speaker 1>attacks or other attempts to gain unauthorized access exactly.

872
00:41:39.760 --> 00:41:43.239
<v Speaker 2>And remember, these system files can be rotated or archived,

873
00:41:43.480 --> 00:41:45.840
<v Speaker 2>so you might need to examine multiple files to get

874
00:41:45.840 --> 00:41:48.039
<v Speaker 2>a complete picture of that login activity.

875
00:41:48.159 --> 00:41:52.039
<v Speaker 1>It's like piecing together a historical record from multiple.

876
00:41:51.559 --> 00:41:56.599
<v Speaker 2>Sources precisely, and by combining information from all these different sources,

877
00:41:56.920 --> 00:41:59.239
<v Speaker 2>we can really start to paint a much more complete

878
00:41:59.320 --> 00:42:01.679
<v Speaker 2>picture of what happened on that compromise system.

879
00:42:01.880 --> 00:42:06.519
<v Speaker 1>Okay, we've covered timestamps, timelines, user login records. Now I'm

880
00:42:06.519 --> 00:42:10.079
<v Speaker 1>curious to dig a bit deeper into the filesystems themselves.

881
00:42:10.519 --> 00:42:13.519
<v Speaker 1>What are some of the unique challenges and opportunities that

882
00:42:13.559 --> 00:42:18.320
<v Speaker 1>Linux filesystems present for you know, a digital forensics investigator.

883
00:42:18.440 --> 00:42:20.880
<v Speaker 2>Well, the X filesystem, which is used a lot in Linux,

884
00:42:21.320 --> 00:42:23.920
<v Speaker 2>it's got its own specific structure and its own features

885
00:42:23.920 --> 00:42:26.840
<v Speaker 2>that we need to be aware of. Okay, Understanding concepts

886
00:42:26.920 --> 00:42:30.159
<v Speaker 2>like you know, inodes, data blocks, indirect blocks, that stuff.

887
00:42:30.559 --> 00:42:33.079
<v Speaker 2>It's crucial for doing good forensic analysis.

888
00:42:33.280 --> 00:42:37.119
<v Speaker 1>Inodes, data blocks, indirect blocks. It's like we're going down

889
00:42:37.119 --> 00:42:40.159
<v Speaker 1>a level exploring those building blocks of the filesystem itself.

890
00:42:40.239 --> 00:42:42.320
<v Speaker 2>Think of it this way. The inode, it's like a

891
00:42:42.320 --> 00:42:45.639
<v Speaker 2>files identity card. Okay, it holds metadata about the file.

892
00:42:46.039 --> 00:42:48.519
<v Speaker 2>It's time, scams, owner permissions.

893
00:42:47.920 --> 00:42:50.519
<v Speaker 1>Size, So the inode tells us who the file belongs

894
00:42:50.559 --> 00:42:53.159
<v Speaker 1>to when it was created or modified, and what kind

895
00:42:53.199 --> 00:42:55.519
<v Speaker 1>of access permissions it has you got it?

896
00:42:55.760 --> 00:42:58.519
<v Speaker 2>And the data blocks that's where the actual content of

897
00:42:58.519 --> 00:42:59.320
<v Speaker 2>the file is stored.

898
00:42:59.360 --> 00:43:02.920
<v Speaker 1>Okay, so we're trying to say, recover a deleted file,

899
00:43:03.239 --> 00:43:05.760
<v Speaker 1>we need to find both the inode and the data

900
00:43:05.760 --> 00:43:06.719
<v Speaker 1>blocks exactly.

901
00:43:06.960 --> 00:43:10.280
<v Speaker 2>And within the excale system there are also these features

902
00:43:10.639 --> 00:43:14.440
<v Speaker 2>like extended attributes and access control lists. They can be

903
00:43:14.559 --> 00:43:17.039
<v Speaker 2>used to store additional information about.

904
00:43:16.760 --> 00:43:20.119
<v Speaker 1>Those files, additional information what kind of information it could be,

905
00:43:20.159 --> 00:43:24.599
<v Speaker 1>anything really, from security settings to user defined data.

906
00:43:25.280 --> 00:43:30.119
<v Speaker 2>And sometimes attackers, those crafty attackers, they exploit these features

907
00:43:30.119 --> 00:43:32.639
<v Speaker 2>to hide data, to hide malicious code.

908
00:43:32.719 --> 00:43:33.400
<v Speaker 1>Oh sneak.

909
00:43:33.440 --> 00:43:35.000
<v Speaker 2>It makes it harder for us to find what we're

910
00:43:35.039 --> 00:43:37.719
<v Speaker 2>looking for. It's like playing hide and seek, right. And

911
00:43:37.760 --> 00:43:41.079
<v Speaker 2>as file systems evolve, they introduce new features.

912
00:43:40.599 --> 00:43:42.239
<v Speaker 1>Like extens extense.

913
00:43:42.800 --> 00:43:45.519
<v Speaker 2>Yeah, they're more efficient way to manage those large files,

914
00:43:45.840 --> 00:43:48.679
<v Speaker 2>but they can also be more complex to analyze from

915
00:43:48.760 --> 00:43:49.920
<v Speaker 2>a forensic perspective.

916
00:43:50.079 --> 00:43:53.920
<v Speaker 1>So the landscape is constantly evolving, presenting new challenges for

917
00:43:54.000 --> 00:43:56.440
<v Speaker 1>both the attackers and the investigators exactly.

918
00:43:56.760 --> 00:43:59.000
<v Speaker 2>And that's one of the things that keeps digital forensics

919
00:43:59.039 --> 00:44:02.760
<v Speaker 2>so interesting. Yeah, it's a constant learning process. There's always

920
00:44:02.760 --> 00:44:05.119
<v Speaker 2>something new to discover, new techniques to learn.

921
00:44:05.280 --> 00:44:08.360
<v Speaker 1>Well, speaking of new discoveries in that fills awesome stuff case.

922
00:44:08.559 --> 00:44:09.559
<v Speaker 2>Yeah, how did.

923
00:44:09.440 --> 00:44:12.920
<v Speaker 1>Polstra use his knowledge of the x file system to

924
00:44:13.000 --> 00:44:15.960
<v Speaker 1>actually uncover evidence of the attack?

925
00:44:16.480 --> 00:44:20.199
<v Speaker 2>He used a few different techniques. One was analyzing a

926
00:44:20.320 --> 00:44:22.239
<v Speaker 2>RAM dump with volatility.

927
00:44:22.519 --> 00:44:25.039
<v Speaker 1>Volatility, didn't we talk about that earlier when we were

928
00:44:25.039 --> 00:44:26.519
<v Speaker 1>discussing live analysis I did.

929
00:44:26.760 --> 00:44:29.639
<v Speaker 2>Volatility is a powerful tool. It lets us analyze the

930
00:44:29.679 --> 00:44:32.760
<v Speaker 2>contents of RAM even after the system has been powered off.

931
00:44:33.079 --> 00:44:36.039
<v Speaker 2>In this case, he used it to uncover hidden processes

932
00:44:36.079 --> 00:44:39.440
<v Speaker 2>and files that weren't showing up in the regular filesystem analysis.

933
00:44:39.639 --> 00:44:42.280
<v Speaker 1>So it's like we're using x ray vision to peer

934
00:44:42.360 --> 00:44:45.000
<v Speaker 1>beneath the surface of the operating system exactly.

935
00:44:45.199 --> 00:44:48.000
<v Speaker 2>And he also used network traffic analysis uh huh to

936
00:44:48.039 --> 00:44:53.960
<v Speaker 2>track the attacker's movements, uncovered some suspicious connections, maybe even backdoors.

937
00:44:53.679 --> 00:44:56.199
<v Speaker 1>So volatility was helping him see what was happening on

938
00:44:56.199 --> 00:44:59.840
<v Speaker 1>the system itself. And then network traffic analysis showed how

939
00:44:59.880 --> 00:45:03.199
<v Speaker 1>the the attacker was interacting with the outside world precisely.

940
00:45:03.599 --> 00:45:06.199
<v Speaker 2>And by putting those two together, Polster was able to

941
00:45:06.239 --> 00:45:09.159
<v Speaker 2>create a compelling narrative of the attack led to the

942
00:45:09.199 --> 00:45:11.480
<v Speaker 2>identification and the capture of the culprit.

943
00:45:11.639 --> 00:45:14.519
<v Speaker 1>Wow. Impressive work. Okay, so we've covered a lot of

944
00:45:14.519 --> 00:45:17.079
<v Speaker 1>ground in the steep dive. We've talked about the importance

945
00:45:17.119 --> 00:45:20.679
<v Speaker 1>of preserving evidence, those key steps and live response, the

946
00:45:20.719 --> 00:45:24.480
<v Speaker 1>power of scripting and databases, and the challenges of timeline

947
00:45:24.519 --> 00:45:28.199
<v Speaker 1>analysis and filesystem forensics. What else is there anything else

948
00:45:28.199 --> 00:45:29.559
<v Speaker 1>you want to share before we move on to the

949
00:45:29.599 --> 00:45:31.159
<v Speaker 1>final part of our investigation.

950
00:45:31.719 --> 00:45:34.559
<v Speaker 2>Well, there's a whole world of you know, more advanced technique,

951
00:45:34.599 --> 00:45:37.400
<v Speaker 2>specialized tools. We haven't even scratched the surface. Oh yeah,

952
00:45:37.440 --> 00:45:39.639
<v Speaker 2>But I think the most important takeaway, the thing I

953
00:45:39.639 --> 00:45:43.639
<v Speaker 2>really want to emphasize is that Linitz forensics it's not

954
00:45:43.760 --> 00:45:47.440
<v Speaker 2>just about technical skills. It's also about mindset, minds.

955
00:45:47.519 --> 00:45:48.480
<v Speaker 1>Okay, what do you mean by that.

956
00:45:48.559 --> 00:45:53.639
<v Speaker 2>It's about being curious, skeptical, methodical. It's about approaching each

957
00:45:53.679 --> 00:45:57.559
<v Speaker 2>investigation with an open mind, you know, being willing to

958
00:45:57.719 --> 00:46:00.960
<v Speaker 2>challenge your assumptions, always be on the lookout those subtle

959
00:46:01.000 --> 00:46:02.960
<v Speaker 2>clues that might lead you to the truth.

960
00:46:03.119 --> 00:46:05.320
<v Speaker 1>So it's like you've got to be a digital detective,

961
00:46:05.719 --> 00:46:08.800
<v Speaker 1>constantly piecing together the puzzle, one clue at a time,

962
00:46:08.920 --> 00:46:10.239
<v Speaker 1>exactly and.

963
00:46:10.280 --> 00:46:13.079
<v Speaker 2>With the right tools, the right techniques, and the right mindset,

964
00:46:13.320 --> 00:46:17.800
<v Speaker 2>well you can uncover even the most cleverly hidden digital crimes.

965
00:46:18.159 --> 00:46:20.800
<v Speaker 1>Well said, But before we get too carried away with

966
00:46:20.840 --> 00:46:23.480
<v Speaker 1>our detective work, let's take a quick moment to recap

967
00:46:23.519 --> 00:46:26.159
<v Speaker 1>some key takeaways from this second part of our investigation.

968
00:46:26.960 --> 00:46:30.440
<v Speaker 1>What really stood out to you as particularly interesting or

969
00:46:30.480 --> 00:46:31.880
<v Speaker 1>unexpected in this section?

970
00:46:32.840 --> 00:46:35.800
<v Speaker 2>For me, it was definitely the idea of using databases

971
00:46:35.840 --> 00:46:40.840
<v Speaker 2>for forensic analysis. It just clicked. Why spend hours sifting

972
00:46:40.880 --> 00:46:43.280
<v Speaker 2>through files manually when you can have the computer do

973
00:46:43.320 --> 00:46:44.480
<v Speaker 2>the heavy lifting for you.

974
00:46:44.559 --> 00:46:46.920
<v Speaker 1>Right, It's like it's a total game changer, and it

975
00:46:47.000 --> 00:46:51.159
<v Speaker 1>shows how digital forensics is always evolving, always borrowing techniques

976
00:46:51.199 --> 00:46:54.280
<v Speaker 1>from other fields and adapting them to the unique challenges

977
00:46:54.320 --> 00:46:57.320
<v Speaker 1>of you know, cybercrime investigation exactly.

978
00:46:57.679 --> 00:47:00.400
<v Speaker 2>So, it's not enough to just be a tech wizy days.

979
00:47:00.519 --> 00:47:02.719
<v Speaker 2>You also need to be a bit of a database guru,

980
00:47:03.039 --> 00:47:06.679
<v Speaker 2>a scripting ninja, and maybe even a psychologist to understand

981
00:47:06.679 --> 00:47:10.559
<v Speaker 2>how these attackers think and operate. It's true, and speaking

982
00:47:10.599 --> 00:47:13.119
<v Speaker 2>of attackers, one of the things that never ceases to

983
00:47:13.159 --> 00:47:16.039
<v Speaker 2>amaze me is how they're always finding new ways to

984
00:47:16.239 --> 00:47:20.440
<v Speaker 2>cover their tracks to obfuscate their code. It's a constant challenge.

985
00:47:20.519 --> 00:47:22.880
<v Speaker 1>Yeah, it's like a never ending arms race with both

986
00:47:22.920 --> 00:47:26.320
<v Speaker 1>sides constantly upping their game. You mentioned earlier, there's a

987
00:47:26.320 --> 00:47:28.599
<v Speaker 1>whole whirl of advanced techniques and tools that we haven't

988
00:47:28.639 --> 00:47:29.320
<v Speaker 1>even touched on.

989
00:47:29.519 --> 00:47:31.360
<v Speaker 2>Oh, we barely scratch the surface.

990
00:47:31.480 --> 00:47:33.880
<v Speaker 1>Can you give us a little glimpse into what lies

991
00:47:33.920 --> 00:47:35.320
<v Speaker 1>beyond the basics?

992
00:47:35.599 --> 00:47:39.679
<v Speaker 2>Sure. One area that's becoming increasingly important is file hashing.

993
00:47:40.480 --> 00:47:43.159
<v Speaker 2>It's a technique that lets us identify known good or

994
00:47:43.239 --> 00:47:49.079
<v Speaker 2>bad files by comparing their unique digital fingerprints against massive databases.

995
00:47:49.119 --> 00:47:52.039
<v Speaker 1>Okay, so it's like a fingerprint database, but for files.

996
00:47:52.079 --> 00:47:55.559
<v Speaker 1>We can quickly flag suspicious ones or verify the integrity

997
00:47:55.559 --> 00:47:56.760
<v Speaker 1>of files we know are good.

998
00:47:56.639 --> 00:47:59.719
<v Speaker 2>Exactly, and this is especially useful when you're dealing with

999
00:47:59.800 --> 00:48:00.800
<v Speaker 2>huge amounts of data.

1000
00:48:00.880 --> 00:48:02.000
<v Speaker 1>Oh I bet what else?

1001
00:48:02.199 --> 00:48:04.679
<v Speaker 2>Then there's the world of reverse engineering, where we use

1002
00:48:04.719 --> 00:48:08.320
<v Speaker 2>tools like obs, dumps, strays, GDB, all kinds of tools

1003
00:48:08.599 --> 00:48:11.559
<v Speaker 2>to dissect malicious code and understand how it behaves.

1004
00:48:11.760 --> 00:48:14.760
<v Speaker 1>So we're taking apart the attackers tools, figuring out how

1005
00:48:14.800 --> 00:48:17.679
<v Speaker 1>they work and what they were designed to do. That

1006
00:48:17.800 --> 00:48:19.800
<v Speaker 1>sounds pretty advanced, though, do you need to be like

1007
00:48:19.840 --> 00:48:21.840
<v Speaker 1>a coding expert for that.

1008
00:48:22.280 --> 00:48:25.840
<v Speaker 2>It definitely helps to have a solid understanding of programming concepts.

1009
00:48:26.280 --> 00:48:29.000
<v Speaker 2>But there are resources out there to help investigators get

1010
00:48:29.039 --> 00:48:32.639
<v Speaker 2>up to speed with reverse engineering techniques and the insights

1011
00:48:32.679 --> 00:48:36.679
<v Speaker 2>you gain from analyzing malicious code. Those can be incredibly

1012
00:48:36.760 --> 00:48:41.559
<v Speaker 2>valuable in understanding the attackers motives, their methods, their capabilities.

1013
00:48:41.679 --> 00:48:44.320
<v Speaker 1>It's like getting inside the mind of the criminal exactly.

1014
00:48:44.840 --> 00:48:47.760
<v Speaker 2>The more we understand how attackers operate, the better we

1015
00:48:47.760 --> 00:48:48.760
<v Speaker 2>could defend against them.

1016
00:48:49.119 --> 00:48:52.679
<v Speaker 1>Makes sense, So file hashing, reverse engineering just a couple

1017
00:48:52.679 --> 00:48:56.920
<v Speaker 1>of examples of those advanced techniques using Linux forensics. But

1018
00:48:57.000 --> 00:48:59.639
<v Speaker 1>where can someone go to learn more about this stuff?

1019
00:48:59.639 --> 00:49:01.199
<v Speaker 1>Any resources you'd.

1020
00:49:00.960 --> 00:49:05.840
<v Speaker 2>Recommend absolutely online communities like Reddit, specialized forums. Those are

1021
00:49:05.920 --> 00:49:09.079
<v Speaker 2>great places to connect with other enthusiasts and experts. You

1022
00:49:09.119 --> 00:49:13.880
<v Speaker 2>could share knowledge, ask questions, get help. Sans Institute they

1023
00:49:13.920 --> 00:49:18.519
<v Speaker 2>offer excellent training courses and certifications in digital forensics covering

1024
00:49:18.559 --> 00:49:20.480
<v Speaker 2>both Windows and Linux environments.

1025
00:49:20.760 --> 00:49:24.280
<v Speaker 1>So it's like joining a global network of digital detectives

1026
00:49:24.320 --> 00:49:27.239
<v Speaker 1>all working together to fight cybercrime.

1027
00:49:27.360 --> 00:49:28.760
<v Speaker 2>That's a great way to put it. And the thing

1028
00:49:28.760 --> 00:49:31.679
<v Speaker 2>about the digital forensics community is people are so willing

1029
00:49:31.719 --> 00:49:35.239
<v Speaker 2>to share their knowledge, help each other out. It's very collaborative.

1030
00:49:35.320 --> 00:49:38.440
<v Speaker 1>That's fantastic. So for anyone listening who's thinking about, you know,

1031
00:49:39.239 --> 00:49:42.719
<v Speaker 1>diving deeper into this world, there are definitely resources out

1032
00:49:42.719 --> 00:49:43.800
<v Speaker 1>there to help you get.

1033
00:49:43.760 --> 00:49:46.599
<v Speaker 2>Started, absolutely, and I think the most important thing is

1034
00:49:46.639 --> 00:49:50.960
<v Speaker 2>to just stay curious, keep learning, and never be afraid

1035
00:49:51.000 --> 00:49:51.880
<v Speaker 2>to ask questions.

1036
00:49:52.039 --> 00:49:55.519
<v Speaker 1>Well said, this deep dive has been an incredible journey

1037
00:49:55.559 --> 00:49:58.159
<v Speaker 1>into the world of Linux forensics. I have to admit

1038
00:49:58.320 --> 00:50:01.239
<v Speaker 1>I'm feeling pretty inspired to put on my digital detective

1039
00:50:01.239 --> 00:50:04.280
<v Speaker 1>hat and start solving some cyber mysteries myself.

1040
00:50:04.360 --> 00:50:05.320
<v Speaker 2>That's the spirit.

1041
00:50:05.639 --> 00:50:09.039
<v Speaker 1>And remember the skills you learn in digital forensics, they're

1042
00:50:09.079 --> 00:50:12.920
<v Speaker 1>not just applicable to investigating cybercrime, right, they can also

1043
00:50:12.960 --> 00:50:16.960
<v Speaker 1>be valuable for incident response, data recovery. Oh absolutely, even

1044
00:50:17.039 --> 00:50:20.159
<v Speaker 1>just you know, understanding how computer systems work at a

1045
00:50:20.239 --> 00:50:21.000
<v Speaker 1>much deeper level.

1046
00:50:21.079 --> 00:50:21.880
<v Speaker 2>It's all connected.

1047
00:50:22.079 --> 00:50:24.199
<v Speaker 1>So it's not just about catching the bad guys. It's

1048
00:50:24.199 --> 00:50:28.159
<v Speaker 1>about really understanding the digital world around us and using

1049
00:50:28.199 --> 00:50:31.440
<v Speaker 1>that knowledge to make it a safer, more secure place

1050
00:50:31.480 --> 00:50:32.039
<v Speaker 1>for everyone.

1051
00:50:32.159 --> 00:50:33.719
<v Speaker 2>Goodness said it better myself, and.

1052
00:50:33.679 --> 00:50:36.039
<v Speaker 1>Who knows, maybe one day you'll be the one writing

1053
00:50:36.079 --> 00:50:39.639
<v Speaker 1>the next great book on Linux forensics. Sharing your knowledge

1054
00:50:39.639 --> 00:50:42.159
<v Speaker 1>and inspiring others to join this amazing field.

1055
00:50:42.280 --> 00:50:44.199
<v Speaker 2>Maybe you will. You seem to have an act for it.

1056
00:50:44.360 --> 00:50:46.719
<v Speaker 1>Well. On that note, I think it's time to wrap

1057
00:50:46.800 --> 00:50:49.559
<v Speaker 1>up our deep dive for today, but before we go,

1058
00:50:49.639 --> 00:50:52.039
<v Speaker 1>any final words of wisdom for our listeners who are

1059
00:50:52.079 --> 00:50:54.719
<v Speaker 1>eager to continue their digital detective journey.

1060
00:50:55.000 --> 00:50:58.960
<v Speaker 2>Remember, knowledge is power, but it also comes with responsibility.

1061
00:50:59.559 --> 00:51:03.440
<v Speaker 2>Use those skills you'll learn ethically, responsibly, and always strive

1062
00:51:03.760 --> 00:51:06.360
<v Speaker 2>to make the digital world a safer place for everyone.

1063
00:51:06.480 --> 00:51:08.679
<v Speaker 1>Well said, and be sure to check the show notes

1064
00:51:08.719 --> 00:51:11.480
<v Speaker 1>for links to all those resources we mentioned today. Until

1065
00:51:11.519 --> 00:51:13.480
<v Speaker 1>next time, happy investigating,
