Apps/WebApplicationReceipt/GenerationService: Difference between revisions

Jump to navigation Jump to search
m
→‎Threat Model: formatting
m (→‎Threat Model: formatting)
Line 37: Line 37:
== Threat Model ==
== Threat Model ==


An attacker could capture a signing key and export it from the signing node.  They could make as many nodes as they like.
* '''Threat:''' An attacker could capture a signing key and export it from the signing node.  They could make as many nodes as they like.
Countermeasure: The certification of the signing key would expire after a short number of days; from that point onward the attacker could not mint new receipts.  (XXX wait, that's not right, you could mint new receipts for the old time range, but they're still acceptable.)
** '''Countermeasure:''' The certification of the signing key would expire after a short number of days; from that point onward the attacker could not mint new receipts.  (XXX wait, that's not right, you could mint new receipts for the old time range, but they're still acceptable.)


An attacker could compromise a signing node and create as many receipts as they like.
* '''Threat:''' An attacker could compromise a signing node and create as many receipts as they like.
Countermeasure: Infrasec will correlate the signing activity log with actual requests from the Marketplace.
** '''Countermeasure:''' Infrasec will correlate the signing activity log with actual requests from the Marketplace.


An attacker could create their own receipt, sign it with their own key, certify that key with their own private key, and attach that.
* '''Threat:'''An attacker could create their own receipt, sign it with their own key, certify that key with their own private key, and attach that.
Countermeasure: The developer must verify that the chain is based on a public key that comes from the store the receipt claims to be from.
** '''Countermeasure:''' The developer must verify that the chain is based on a public key that comes from the store the receipt claims to be from.


An attacker could compromise the public key distribution point of Marketplace, place their own key there, and produce their own receipts rooted in that key.
* '''Threat:'''An attacker could compromise the public key distribution point of Marketplace, place their own key there, and produce their own receipts rooted in that key. Or: Attacker could compromise the SSL chain leading to the public key distribution point and MITM their own key.
Or: Attacker could compromise the SSL chain leading to the public key distribution point and MITM their own key.
** '''Countermeasure:''' Changes to the public key should be accompanied by out-of-band signaling from Marketplace; any other change is an attack.  Geographic tripwiring would be needed to catch the MITM.
Countermeasure: Changes to the public key should be accompanied by out-of-band signaling from Marketplace; any other change is an attack.  Geographic tripwiring would be needed to catch the MITM.


An attacker could compromise k-of-n Mozilla employees, and export the private key.
* '''Threat:'''An attacker could compromise k-of-n Mozilla employees, and export the private key.
** '''Countermeasure:'''


An attacker could compromise the channel through which the public keys are relayed from the root trust nodes to the distribution point, and place their own public key in the list.
* '''Threat:'''An attacker could compromise the channel through which the public keys are relayed from the root trust nodes to the distribution point, and place their own public key in the list.
** '''Countermeasure:'''


== Operational Procedures ==
== Operational Procedures ==
Confirmed users
491

edits

Navigation menu