Information Security 101 - the Rules of Thumb
Peter Fairbrother
zenadsl6186 at zen.co.uk
Wed Jun 24 15:12:24 BST 2009
Brian Gladman wrote:
[...]:
>>
>> In these rules an "enemy" is someone who wants to steal some secret
>> information an honest system designer doesn't want him to steal, or to
>> prevent authorised access to it, or to mislead a friend about its
>> authenticity.
>
> This does not cover things like denial of service attacks.
I put "prevent authorised access" in to cover DoS, but maybe it's not
clear enough.
And yes, I have read Ross, S+S etc. :), though I came up many of these
rules before I did that, the rules are mostly fairly obvious IF you have
thought about information security for a while.
The problem when non-security people, especially Government departments
and Ministers, design systems which are intended to be secure - and
system design has already begun long before the moment someone decides
to commission it, simply saying "let's have a system to do xyz" is part
of the system design, and in most cases it's the *biggest* part of the
design [1] - is that they simply haven't thought about secure systems
for long enough - or even at all.
Then the honest secure system designer either has to tell the
commissioner that their design requirements are insecure and should be
changed - which the commissioner is usually unwilling to do, especially
if it's been announced politically - or try his best to add bolt-on
security, which never works as well.
[1] Ask any system designer, even a non-secure system designer, getting
an exact idea of what the system is supposed to do is the hardest part,
writing the software is usually pretty straightforward after that.
>> Rule 6: Make it cheap and easy to use, a security system which isn't
>> used isn't useful.
>
> I don't like this rule since it implies that a secure system can be cheap.
>
> In my experience cheap systems are rarely secure. Morover attempts to
> cut design costs are often a major cause of security design flaws.
I meant cheap in terms of resources used, but I take your points.
>> The security of a secret is approximately proportional to the square of
>> the number of people who can access it.
>
> I agree the principle you are aiming at here but I don't see the
> relationship as being necessarily quadratic.
>
> Perhaps simply 'the more people who know a secret the less likely that
> it is, or will remain, a secret."
Agreed the relationship isn't necessarily quadratic - but it isn't
linear either. That's the point I'm trying to make here, and hence the
"approximately".
If a secret is widely known then each person who knows it is less likely
to take it's keeping seriously, "everybody knows that" - people who wish
to reveal it for malicious purposes are more likely to, as they think
they are less likely to get caught - and people may reveal it
unwittingly, in the belief that the person they are talking to already
knows, or is entitled to know, the secret.
The more people "in the know", the more these factors come into play -
and the chance that each of them will reveal the secret is roughly
proportional to the number of people who know it.
Multiply that chance by the number of people, to get the overall chance
of compromise, and you get approximately the square of the number of people.
There are mathematical approximations involved too, but it's a rule of
thumb, not a law.
>
> The ability to keep something seccret decreases with the length of time
> over which it must remain secret.
Good one.
>> Security by obscurity is worse than no security at all.
>
> This is quite a difficult one, especially so because 'security by
> obscurity' is a poorly defined concept.
Indeed. I included it at Jim Murray's suggestion, and there is a very
valid point in there (it's much worse if you don't know when your
security has been compromised, as you'll continue trusting it, and
relying on obscurity makes this much more likely), but perhaps it's not
clear.
>
> Whether actually revealing a system design will enhance or degrade its
> security is an issue that Prof. Ross Anderson has researched and it is
> not clear cut. The answer depends on the size of the hostile and
> friendly communities and the extent of their motivation in exposing
> security flaws. What is pretty clear is that the hostile community is
> often far more motivated than the friendly one and will hence find and
> exploit flaws revealed by design publication long before the friendly
> community finds them.
>
> As a publisher of cryptographic algorithm software what has surprised me
> is just how long design flaws can exist in published software before
> they are found by the friendly community.
Debian, RNGs ... ouch!
>
> Hence _depending_ on design secrecy as a way of achieving system
> security is a bad principle but this does not necessarily mean that it
> is beneficial to publically reveal a system's design.
Agreed.
>
> However the situation in respect of government systems hollding citizen
> owned information is different since, in my view, the owner of
> information (the citizen) must be able to determine to their own
> satisfaction that any system on which their information is to be held is
> secure. Hence such systems have to have published designs (there cannot
> be any doubt that 'security therough obscurity' as applied in UK
> government civil IT systems has been a complete failure).
Agreed, even more so!
-- Peter Fairbrother
More information about the ukcrypto
mailing list