Outdated versions of software

Tip: Choose Save as PDF in the print dialog to download. Use A4 paper size.

Outdated versions of software

Name:
Date:
Class:

Quick Questions

Shade in the A or B circle for each question.

1. Why is outdated software a security risk?
A It always runs slower than new software
B It is missing patches, so known flaws stay open for attackers
2. A vendor releases a patch for a known flaw. You do not install it. What is your device now?
A Vulnerable to an attack on that known flaw
B Protected, because the flaw is now fixed everywhere
3. Which statement about known flaws is true?
A Attackers can look up known flaws and target software that is not patched
B Known flaws are secret, so attackers cannot find them
4. Which phone is at greater risk?
A A phone that installs security updates when they come out
B A phone that has ignored update notices for a year
5. What does a security patch do?
A Fixes a known vulnerability in the software
B Deletes all of your old files to save space

Match the Pairs

Draw a line connecting each item on the left to its match on the right.

Left columnRight column
1outdated software Aif update_available: install_update()
2missing patch BSoftware that is missing the latest security patches, so its known flaws stay open for attackers to exploit.
3Attackers can look up known flaws in an old version number and aim at devices still running it Capp_version = 2.1 # latest is 2.4
4Installing the latest update closes a known flaw so attackers can no longer use it DKnown flaws are the main risk in outdated software. Details are public, so attackers can easily target any device that has not been patched.
5Ignoring update alerts because 'the app still works fine' ESoftware can work normally while still having known flaws. Skipping updates leaves the patches missing, so attackers can still exploit those flaws.
6Only a brand new flaw can be exploited, so old known flaws are safe FA security fix released by the maker that has not been installed yet, leaving a known flaw open.

Definitions

outdated software

Fill in the Blanks

Complete each line of code by filling in the missing parts.

1.
installed, latest = 3, 5 outdated = installed _ latest
2.
outdated = True if outdated: _____("Install the patch now")
3.
missing = 0 if missing __ 0: print("Up to date")
4.
flaws = 2 if flaws _ 0: print("Update now")
5.
patched = False if ___ patched: print("Attackers can exploit flaws")

Spot the Error

Shade in the letter of the line that contains an error.

Question 1
A installed = "2.1"
B latest = "2.4
C if installed != latest:
D print("Update needed")
Question 2
A patched = False
B if not patched
C print("Flaw is open")
Question 3
A apps = ["Chrome", "Zoom"]
B for app apps:
C print("Update", app)
Question 4
A version = 4
B latest = 7
C if version > latest:
D print("Outdated")
Question 5
A def is_outdated(v, latest):
B return v < latest
C print(is_outdated(3))

Answer Key

Outdated versions of software
Section A: Quick Questions
Q1
B — It is missing patches, so known flaws stay open for attackers
Q2
A — Vulnerable to an attack on that known flaw
Q3
A — Attackers can look up known flaws and target software that is not patched
Q4
B — A phone that has ignored update notices for a year
Q5
A — Fixes a known vulnerability in the software
Section B: Match the Pairs
Q1
outdated software → Software that is missing the latest security patches, so its known flaws stay open for attackers to exploit.
Q2
missing patch → A security fix released by the maker that has not been installed yet, leaving a known flaw open.
Q3
Attackers can look up known flaws in an old version number and aim at devices still running it → app_version = 2.1 # latest is 2.4
Q4
Installing the latest update closes a known flaw so attackers can no longer use it → if update_available: install_update()
Q5
Ignoring update alerts because 'the app still works fine' → Software can work normally while still having known flaws. Skipping updates leaves the patches missing, so attackers can still exploit those flaws.
Q6
Only a brand new flaw can be exploited, so old known flaws are safe → Known flaws are the main risk in outdated software. Details are public, so attackers can easily target any device that has not been patched.
Section C: Definitions
Q1
outdated software — Software that is missing the latest security patches, so its known flaws stay open for attackers to exploit.
Section D: Fill in the Blanks
Q1
installed, latest = 3, 5 outdated = installed < latest
Q2
outdated = True if outdated: print("Install the patch now")
Q3
missing = 0 if missing == 0: print("Up to date")
Q4
flaws = 2 if flaws > 0: print("Update now")
Q5
patched = False if not patched: print("Attackers can exploit flaws")
Section E: Spot the Error
Q1
B — The string is missing its closing quote. It should be latest = "2.4". The program compares the installed version with the latest patched version to spot outdated software.
Q2
B — An if statement needs a colon at the end. It should be if not patched:. The check warns that an unpatched flaw is still open to attackers.
Q3
B — A for loop needs the keyword in. It should be for app in apps:. The loop reminds you to update each app so no known flaws stay open.
Q4
C — Software is outdated when the installed version is lower than the latest one. The test should be version < latest, not >.
Q5
C — The function needs two arguments, the installed version and the latest version. The call should be is_outdated(3, 5). Without both, the program crashes.