- From: Thomas Roessler <tlr@w3.org>
- Date: Mon, 16 Mar 2009 12:17:59 +0100
- To: Frederick Hirsch <Frederick.Hirsch@nokia.com>
- Cc: "ext Priestley, Mark, VF-Group" <Mark.Priestley@vodafone.com>, ext Marcos Caceres <marcosc@opera.com>, WebApps WG <public-webapps@w3.org>
On 13 Mar 2009, at 15:50, Frederick Hirsch wrote:
> Thanks for your review, I have some comments inline. Thomas, can you
> please review
> my proposed change to the security considerations text Mark mentioned?
I believe that you mean this piece of text:
>> "Implementations that store the content of widget archives to the
>> file
>> system during signature verification MUST NOT trust any path
>> components
>> of file names present in the archive, to avoid overwriting of
>> arbitrary
>> files during signature verification."
>>
>
>
>> {Comment] I don't understand this sentence - which may well be a
>> problem
>> with my understanding rather than the sentence - please can you
>> enlighten me, thanks.
>
> I think this is better worded as:
>
> Implementations MUST NOT overwrite <widget files> during signature
> verification, as this could open the possibility of an attack based
> on substituting content for files due to malformed ds:Reference URIs
> in a signature that has been replaced.
>
> (Thomas, can you please verify that I got that right?)
The basic attack that this piece of the text is about is unpacking a
zip archive into the file system, trusting path components, and ending
up overwriting arbitrary system files, because the zip file contained
'../../../../etc/passwd'. (Yes, I'm painting with an extremely broad
brush here.)
Two points:
1. This should go into the security considerations, and probably
shouldn't be phrased as normative text.
2. I agree with Mark that it's probably too confusing; I fear that
your proposed replacement doesn't capture everything.
I'd suggest this instead:
> Implementations should be careful about trusting path components
> found in the zip archive: Such path components might be interpreted
> by operating systems as pointing at security critical files outside
> the widget environment proper, and naive unpacking of widget
> archives into the file system might lead to undesirable and security
> relevant effects, e.g., overwriting of startup or system files.
What do you think?
Received on Monday, 16 March 2009 11:18:12 UTC