On 17/03/12 07:16 AM, Jonas Sicking wrote:
On Wed, Mar 14, 2012 at 2:35 PM, Lucas Adamski<ladam...@mozilla.com>  wrote:
My understanding is that there will be multiple app stores.  But code signing 
has another benefit: reducing systemic risk.

This assume code signing and sane key management, but lets say there's a very 
popular app with significant privileges.
To compromise a large number of people, you'd need to:
a) compromise the site hosting the app
b) compromise the key signing the app (assuming you require app updates to be 
signed with the same key)
c) compromise or trigger the update mechanism for the app
d) wait for updates to trickle out

This is a tedious process that slows down exploitation, and that's no fun.

If app authentication relies only on SSL, then you just need to pop a web 
server (which isn't hard, really).  Everyone
using the app gets owned simultaneously.

If we rely on only SSL we still get a), c) and d) AFAICT. Signing only
adds b).

No, if you rely on SSL, you still can't reliably cope with a), c) and d). As Lucas said, there will be multiple app stores. The attacker needs to compromise one app store amongst many to cause damage - and the design isn't settled enough to say that that the user can't do updates via other stores.

If you look over at the SSL world today - in its post-2011 panic form - it is exactly the failure mode that has highlighted the weakness of hierarchical command structures: Compromise one node, compromise the system.



The other question is, how do you deliver the keys? It would
have to be through some mechanism other than through the web server to
add any level of security.



No, that assumes the attacker is waiting and intercepting every web server request. In practice, he is not. Otherwise e.g., Firefox downloads would be infected with MITB on delivery.

It's probably wise not to lean too heavily on the SSL security model. That model assumed that end-to-end was not important, only point-to-point was needed. In this model, we are dealing with potentially very complicated delivery chains. E.g,

  developer-supporter-distributer-downloader-local-distributor-end-user

End-to-end security cannot be assumed away in this discussion.


iang
_______________________________________________
dev-security mailing list
dev-security@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-security

Reply via email to