- Subject: [CRYPTO] obfuscating kernel pointers
- From: Dan Rosenberg <drosenberg@xxxxxxxxxxxxx>
- Date: Fri, 12 Nov 2010 08:32:01 -0500
Hi Crypto people,
I'm planning on submitting a patch that introduces a new %p format
specifier that obfuscates kernel pointers depending on privileges. This
change is for security reasons - many networking protocols expose
pointers to socket structures in their /proc interfaces, which are
attractive targets when exploiting other issues.
It's been suggested that I initialize a secret value at boot, and use
that as the key to a crypto hash function. I should use a function that
is relatively fast (ideally), produces a unique output based on its
input of a pointer, and produces consistent output when given the same
input. It should be difficult to infer the input given only the output.
I have two questions:
1. What is a proper, safe way of initializing a random value at boot?
Are there any existing examples that do this?
2. Can you recommend a crypto algorithm that would be well suited for
this pointer obfuscation?
Thanks,
Dan
--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
[Kernel]
[Gnu Classpath]
[Gnu Crypto]
[DM Crypt]
[Netfilter]
[Bugtraq]