Practical Threat Analysis in-depth
Part
5: The Car & Passenger Simplified Threat Model Example
Part 1:
The State of Threat Analysis Part
2: PTA Methodology, Terminology and
Definitions Part
3: The PTA Threat Analysis and Risk
Assessment Process Part
4: The PTA Threat Analysis
Calculative Method
The Car & Passenger Simplified Threat Model Example
The following threat model represents
the Car and Passenger threat model:

Figure 3: The Car and Passenger threat
model
Example: a simplified car & passenger case
1. The Threat Model Description
Figure 3 illustrates the threat model
entities of the threat analysis of a simplified system which is
comprised of a car and a passenger.
The assets are: the car itself (A001)
and the passenger’s well being (A002).
The vulnerabilities are: the car's
windows, which are made of ordinary glass and therefore may be easily
broken (V001), the car may be started by connecting wires that bypass
the ignition key (V002) and the fact that the car is not protected
against gun fire and therefore shooting bullets may penetrate it (V003).
The countermeasures for the
vulnerabilities in the example are: install an alarm system (C001),
install an immobilizer protection system (C002) and armor the vehicle
(C003).
For the sake of simplicity, only two
threats are identified: the car may be stolen (T001) and the car and the
passenger may be severely hurt by a gun fire attack (T002). Threat T001
damages asset A001 and exploits vulnerabilities V001 and V002. Threat
T002 damages assets A001 and A002 and exploits vulnerability V003.
2. High level description of the PTA calculation flow
for the example
According to the PTA calculation flow
illustrated in Figure 2, the calculation includes the following steps:
At step 90 the time period and the
currency type parameters are entered. The time period in the current
example is defined as a fixed one time period, and the currency type is
American dollar.
Next, at steps 100 to 130 the system’s
assets, the system’s vulnerabilities, the countermeasures and threats
are specified according to the description above.
At steps 140 the relations between the
threats and the assets are defined and threat T001 – the stealing of the
car – is defined as threatening asset A001 – the car itself, whereas
threat T002 – the gunfire attack – is defined as threatening both asset
A001 and asset A002 – the car and its passenger. In this example both
threats pose 100% damage on the assets associated to them.
The relations between the
vulnerabilities and the countermeasures are define at step 150 and the
relations between the threats and the vulnerabilities are defined at
step 160: threat T001 – the stealing of the car – exploits
vulnerabilities V001 and V002 – the cars windows, which may be broken,
and the car ignition which may be done by crossing wires instead of
using the key. Threat T002 – the gunfire attack – exploits vulnerability
V003 – the fact that bullets may penetrate the car.
In steps 162 and 165 the recommended
countermeasures for each threat are calculated, and at steps 170 and 180
the mitigation policies are defined. After the initial definitions are
entered, the system performs the risk and mitigation priorities, as they
are specified in great details in section 3 in this page.
The results provide a clear prioritized
list for implementing the countermeasures according to their calculated
cost effectiveness: installing an alarm and an immobilizer are
recommended since they provide risk reduction of 0.4167 % for each
dollar. Arming the vehicle is much less recommended since the risk
reduction it provides is only 0.00075% for each dollar. The ratio of the
two values of cost effectiveness is 1:555 in favor of installing an
alarm and an immobilizer.
The current calculation would change
significantly if instead of an ordinary driver the passenger of the car
is a top government official. In this case the probability for car theft
is estimated to be a relatively low 0.01 but the likelihood of a
terrorist attack is estimated to be a high 0.5. In step 240, where the
current risk level of each thread is calculated, T001 risk changes to
0.05% and T002 risk changes to 50%. The following calculation change
accordingly the cost effectiveness of each countermeasure and yields the
following results: installing an alarm and an immobilizer are not
recommended since the risk reduction they provide is only 0.001% for
each dollar, but arming the vehicle is found to provide 0.005% of risk
reduction for each dollar. It is evident then that the order of
countermeasures in the prioritized list changes and the ratio of the
cost effectiveness is 1:5 in favor of armoring the vehicle.
3. Detailed calculation for the Car & Passenger example
Step 90: Input the time period
and currency type parameters.
- Time period [t]: fixed one time
- Currency type [c]: $ USA
Step 100: Input list of system assets.
- ID: A001 Name: The car ValA: $30,000
- ID: A002 Name: The passenger's well being (health and life) ValA:
$270,000
Step 110: Input list of system vulnerabilities.
- ID: V001 Name: The car's windows can be easily broken (made of regular
glass)
- ID: V002 Name: The car's ignition key can be bypassed (by connecting
bypass wires)
- ID: V003 Name: The car's body is not protected against gun fire
(shooting bullets may penetrate the car through its doors and windows)
Step 120: Input list of system countermeasures.
- ID: C001 Name: Install an alarm system that alerts when car window is
broken IC: $100 IF: false
- ID: C002 Name: Install an immobilizer system that disables igniting
the car's engine IC: $100 IF: false
- ID: C003 Name: Armor the vehicle against shooting IC: $20,000 IF:
false
Step 130: Input list of system threats.
- ID:T001 Name: The car is stolen by a car thief TP: 0.50
- ID:T002 Name: The car and the passenger are severely hurt by a gun
fire attack TP: 0.01
Step 140: Input the relations between threats and assets.
- TA(T001): A001 (T001 threatens A001)
- TA(T002): A001, A002 (T002 threatens A001 and A002)
- RelTAD(T001, A001): 100% (T001 damages A001 by 100%)
- RelTAD(T002, A001): 100% (T002 damages A001 by 100%)
- RelTAD(T002, A002): 100% (T002 damages A002 by 100%)
Step 150: Input the relations between vulnerabilities and
countermeasures.
- VC(V001): C001 (V001 is mitigated by C001)
- VC(V002): C002 (V002 is mitigated by C002)
- VC(V003): C003 (V003 is mitigated by C003)
Step 160: Input the relations between threats and
vulnerabilities.
- TV(T001): V001, V002 (T001 exploits V001 and V002)
- TV(T002): V003 (T002 exploits V003)
Step 162: Calculating the relations between countermeasures and
vulnerabilities.
- CV(C001): V001 (C001 mitigates V001)
- CV(C002): V002 (C002 mitigates V002)
- CV(C003): V003 (C003 mitigates V003)
Step 165: Calculating the set of recommended countermeasures for
each threat.
- RCMT(T001) = C001, C002 (T001 may be mitigated by C001 and/or C002)
- RCMT(T002) = C003 (T003 may be mitigated by C003)
Step 170: Define the actual mitigation sets of countermeasures
for each of the threats.
- ACMT1(T001): C001, C002 (ACMT1 for T001 is comprised of C001 and C002)
- ACMT2(T001): C001 (ACMT2 for T001 is comprised of C001)
- ACMT3(T001): C002 (ACMT3 for T001 is comprised of C002)
- ACMT1(T002): C003 (ACMT1 for T002 is comprised of C003)
Step 180: Define the threat’s mitigation level for each of the
actual mitigation sets of countermeasures.
- ACMTL1(T001): 100% (ACMT1(T001) provides 100% mitigation for T001)
- ACMTL2(T001): 50% (ACMT2(T001) provides 50% mitigation for T001)
- ACMTL3(T001): 50% (ACMT3(T001) provides 50% mitigation for T001)
- ACMTL1(T002): 100% (ACMT1(T002) provides 100% mitigation for T002)
Step 185: Calculating the maximal and current mitigation level
for each threat.
MaxTM(Ti) – Maximal Threat Mitigation level is the maximum over all of
the ACMTLj(Ti) (i is fixed, j varies); 0 < value of MaxTM ≤ 100.
CurTM(Ti) – Current Threat Mitigation level is the maximum over all of
the implemented ACMTLj(Ti) (i is fixed, j varies); 0 < value of CurTM ≤
100.
- MaxTM(T001) = 100% (maximum over all ACMTLs of T001)
- MaxTM(T002) = 100% (maximum over all ACMTLs of T002)
- CurTM(T001) = 0% (maximum over all implemented ACMTLs of T001)
- CurTM(T002) = 0% (maximum over all implemented ACMTLs of T002)
Step 190: Calculating the total value of all system assets.
ValSA = ∑ ValA (Ai) where i runs over all assets
- ValSA: $300,000
Step 200: Calculating the relative value of each asset.
RelValA(Ai) = ValA(Ai) / ValSA * 100 ; 0 < value of RelValA ≤ 100.
- RelValA(A001) = 10% (ValA of A001 out of ValSA)
- RelValA(A002) = 90% (ValA of A002 out of ValSA)
Step 210: Calculating the relative damage level of each threat.
RelTD(Ti) = ∑ RelTAD(Ti, Aj) / 100 * RelValA(Aj) where j runs over all
assets ; 0 < value of RelTD ≤ 100.
- RelTD(T001) = 10% (T001 damages system assets by 10%)
- RelTD(T002) = 100% (T002 damages system assets by 100%)
Step 220: Calculating the maximal risk level of each threat.
MaxTR(Ti) = RelTD(Ti) * TP(Ti) ; 0 < value of MaxTR ≤ 100.
- MaxTR(T001) = 5% (At maximum, T001 risks 5% of system assets)
- MaxTR(T002) = 1% (At maximum, T002 risks 1% of system assets)
Step 230: Calculating the minimal risk level of each threat.
MinTR(Ti) = MaxTR(Ti) * ( 1 - MaxTM(Ti) / 100) ; 0 < value of MinTR ≤
100.
- MinTR(T001) = 0% (T001 risk may be reduced to 0%)
- MinTR(T002) = 0% (T002 risk may be reduced to 0%)
Step 240: Calculating the current risk level of each threat.
CurTR(Ti) = MaxTR(Ti) * ( 1 - CurTM(Ti) / 100); 0 < value of CurTR ≤
100.
- CurTR(T001) = 5% (Currently, T001 risks 5% of system assets)
- CurTR(T002) = 1% (Currently, T002 risks 1% of system assets)
Step 250: Calculating the maximal risk for each asset.
MaxAR(Ai) = ∑ RelTAD(Tj, Ai) * TP(Tj) where j runs over all threats;
value of MaxAR may exceed 100.
- MaxAR(A001) = 51% (At maximum, A001 is in risked by 51%)
- MaxAR(A002) = 1% (At maximum, A002 is in risked by 1%)
Step 260: Calculating the minimal risk for each asset.
MinAR(Ai) = ∑ RelTAD(Tj, Ai) * (1 - MaxTM(Tj) / 100) * TP(Tj) where j
runs over all threats that may cause damage to Ai; value of MinAR may
exceed 100.
- MinAR(A001) = 0% (The risk to A001 may be reduced to 0%)
- MinAR(A002) = 0% (The risk to A002 may be reduced to 0%)
Step 270: Calculating the current risk for each asset.
CurAR(Ai) = ∑ RelTAD(Tj, Ai) * (1 - CurTM(Tj) / 100) * TP(Tj) where j
runs over all threats that may cause damage to Ai; value of CurAR may
exceed 100.
- CurAR (A001) = 51% (Currently, A001 is risked by 51%)
- CurAR (A002) = 1% (Currently, A002 is risked by 1%)
Step 280: Calculating the total system maximal risk.
MaxValSR = ∑ MaxAR(Ai) / 100 * ValA(Ai) where i runs over all assets;
value of MaxValSR may exceed ValSA.
MaxSR = MaxValSR / ValSA * 100; value of MaxSR may exceed 100.
- MaxValSR = $18,000
- MaxSR = 6%
Step 290: Calculating the total system minimal risk.
MinValSR = ∑ MinAR(Ai) / 100 * ValA(Ai) where i runs over all assets;
value of MinValSR may exceed ValSA.
MinSR = MinValSR / ValSA * 100; value of MinSR may exceed 100.
- MinValSR = $0
- MinSR = 0%
Step 300: Calculating the total system current risk.
CurValSR = ∑ CurAR(Ai) / 100 * ValA(Ai) where i runs over all assets;
value of CurValSR may exceed ValSA.
CurSR = CurValSR / ValSA * 100; value of CurSR may exceed 100.
- CurValSR = $18,000
- CurSR = 6%
Step 310: Calculating the relative maximal threat risk for each
threat.
RelMaxTR(Ti) = MaxTR(Ti) / MaxSR * 100; 0 < value of RelMaxTR ≤ 100.
- RelMaxTR(T001) = 83.33 % (At maximum, T001 relative risk is 83.33 %)
- RelMaxTR(T002) = 16.66% (At maximum, T002 relative risk is 16.66 %)
Step 320: Calculating the relative minimal threat risk for each
threat.
RelMinTR(Ti) = MinTR(Ti) / MinSR * 100; 0 < value of RelMinTR ≤ 100.
- RelMinTR (T001) = 0 % (T001 relative risk may be reduced to 0%)
- RelMinTR (T002) = 0 % (T002 relative risk may be reduced to 0%)
Step 330: Calculating the relative current threat risk for each
threat.
RelCurTR(Ti) = CurTR(Ti) / CurSR * 100; 0 < value of RelCurTR ≤ 100.
- RelCurTR (T001) = 83.33 % (Currently, T001 relative risk is 83.33 %)
- RelCurTR (T002) = 16.66% (Currently, T002 relative risk is 16.66 %)
Step 340: Calculating the current overall countermeasure
mitigation level for each countermeasure.
CurSRCI(Ci) = CurSR assuming the i-th Countermeasure is Implemented and
all other countermeasures are in their current implementation status.
CurSRCNotI(Ci) = CurSR assuming the i-th Countermeasure is not
Implemented and all other countermeasures are in their current
implementation status.
CurCM(Ci) = (CurSRCNotI(Ci) - CurSRCI(Ci)) / CurSRCNotI(Ci) * 100; 0 <
value of CurCM ≤ 100.
- CurSRCI(C001) = 3.5%
- CurSRCNotI(C001) = 6%
- CurCM(C001) = 41.67%
- CurSRCI(C002) = 3.5%
- CurSRCNotI(C002) = 6%
- CurCM(C002) = 41.67%
- CurSRCI(C003) = 5.1%
- CurSRCNotI(C003) = 6%
- CurCM(C003) = 15%
Step 350: Calculating the current cost effectiveness of each
countermeasure.
CurCCE(Ci) = CurCM(Ci) / IC(Ci).
- CurCCE(C001) = 0.4167% per 1$
- CurCCE(C002) = 0.4167% per 1$
- CurCCE(C003) = 0.00075% per 1$
4. Analyzing the results:
The results provide a clear prioritized
list for implementing the countermeasures – install alarm and
immobilizer and do not bother with armoring the vehicle.
If we replace the regular driver in our exemplar with a top government
official where the probability for car theft is low but the likelihood
of terrorist attack is high, the order of countermeasures in the
prioritized list will probably change and armoring the vehicle will be
more cost effective from the threat analysis point of view.
***
Risk Assessment of an Integrated Enterprise Call Accounting Solution (Case Study)
Beginning -
Previous -
Home Page
Check the Practical
Threat Analysis FAQ Area
|