Skip to content

Commit 9c113e8

Browse files
committed
overall/drills: Add "Digital Forensics" written task as exam
- Add Markdown file storing the question scenario and questions - Modify `config.yaml` to render the new task - Update Labeler action to assign the `topic/general` label Signed-off-by: Teodor Dutu <teodor.dutu@gmail.com>
1 parent f5717ec commit 9c113e8

File tree

3 files changed

+172
-0
lines changed

3 files changed

+172
-0
lines changed

.github/labeler.yml

+3
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ topic/io:
1313
topic/app-interact:
1414
- 'content/chapters/app-interact/**/*'
1515

16+
topic/general:
17+
- 'chapters/general/**/*'
18+
1619
area/quiz:
1720
- '**/quiz/*'
1821

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,165 @@
1+
# Digital Forensics
2+
3+
## Scenario
4+
5+
For digital forensics operations (digital evidence investigation), we want to develop an application that dumps the entire physical memory (RAM) of a modern operating system (such as Linux, Windows, macOS).
6+
We assume there is a dedicated interface of the operating system that allows reading of physical memory for dumping.
7+
The application can dump to a file or to standard output (for redirection to a file or network redirection).
8+
The result is a dump with the size of the physical memory (RAM) of the system.
9+
10+
Answer the following questions with "True" or "False" and justify your answer.
11+
The justification should be simple, 2-3 sentences for each answer.
12+
13+
## Question 1 Text
14+
15+
The application must be run in privileged mode, as root.
16+
17+
## Question 1 Answers
18+
19+
+ True
20+
21+
- False
22+
23+
## Question 1 Arguments
24+
25+
type: textbox
26+
27+
## Question 2 Text
28+
29+
During its execution, the application does not make system calls.
30+
31+
## Question 2 Answers
32+
33+
- True
34+
35+
+ False
36+
37+
## Question 2 Arguments
38+
39+
type: textbox
40+
41+
## Question 3 Text
42+
43+
The application will benefit from a multithreaded implementation.
44+
45+
## Question 3 Answers
46+
47+
+ True
48+
49+
- False
50+
51+
## Question 3 Arguments
52+
53+
type: textbox
54+
55+
## Question 4 Text
56+
57+
The memory dump will contain information about the application itself.
58+
59+
## Question 4 Answers
60+
61+
+ True
62+
63+
- False
64+
65+
## Question 4 Arguments
66+
67+
type: textbox
68+
69+
## Question 5 Text
70+
71+
At runtime, the application will use network sockets.
72+
73+
## Question 5 Answers
74+
75+
- True
76+
77+
+ False
78+
79+
## Question 5 Arguments
80+
81+
type: textbox
82+
83+
## Question 6 Text
84+
85+
Two instances of the application CANNOT run simultaneously on the same system.
86+
87+
## Question 6 Answers
88+
89+
- True
90+
91+
+ False
92+
93+
## Question 6 Arguments
94+
95+
type: textbox
96+
97+
## Question 7 Text
98+
99+
In its implementation, the application must use synchronization primitives.
100+
101+
## Question 7 Answers
102+
103+
- True
104+
105+
+ False
106+
107+
## Question 7 Arguments
108+
109+
type: textbox
110+
111+
## Question 8 Text
112+
113+
The application must be implemented in the form of a static executable.
114+
115+
## Question 8 Answers
116+
117+
- True
118+
119+
+ False
120+
121+
## Question 8 Arguments
122+
123+
type: textbox
124+
125+
## Question 9 Text
126+
127+
During its execution, the application uses the virtual memory mechanism.
128+
129+
## Question 9 Answers
130+
131+
+ True
132+
133+
- False
134+
135+
## Question 9 Arguments
136+
137+
type: textbox
138+
139+
## Question 10 Text
140+
141+
The application cannot realistically be used on a 64-bit system, only on a 32-bit system.
142+
143+
## Question 10 Answers
144+
145+
- True
146+
147+
+ False
148+
149+
## Question 10 Arguments
150+
151+
type: textbox
152+
153+
## Question 11 Text
154+
155+
As long as the operating system provides support, the application can work on both x86 and ARM processor architectures.
156+
157+
## Question 11 Answers
158+
159+
- True
160+
161+
+ False
162+
163+
## Question 11 Arguments
164+
165+
type: textbox

config.yaml

+4
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,10 @@ docusaurus:
138138
- Parallel Graph/: parallel-graph/
139139
- Mini Shell/: minishell/
140140
- Asynchronous Web Server/: async-web-server/
141+
- Exams:
142+
path: chapters/general/drills/tasks
143+
subsections:
144+
- Digital Forensics/: digital-forensics.md
141145
- Hackathons:
142146
path: content/assignments
143147
subsections:

0 commit comments

Comments
 (0)