On 7 Feb, 2013, at 11:51, Giovanni Bajo <[email protected]> wrote:

> 
>> 
>>> 
>>>> What I haven't seen (or have overlooked) in the entire discussion is what 
>>>> we're trying to protect against.  The thread kicked of due to a report of 
>>>> how to perform MITM attacks against PyPI, but it seems that some of the 
>>>> proposals want to provide much more security than that.  Without a clear 
>>>> description of a threat model it is hard to evaluate if proposals actually 
>>>> fix anything.  
>>> 
>>> Basically, we are trying to define a system that can survive some level of 
>>> compromisation of PyPI, and at the same time allow PyPI to use a 
>>> third-party CDN without having to trust it.
>>> 
>>> Moreover, some people might want to get to a point where they disable trust 
>>> on PyPI totally but they still want to be able to install packages off it.
>> 
>> The system should also be somewhat userfriendly, having to accept a new key 
>> for every package will likely not increase security as much as it would seem 
>> at first glance because a lot of users will just accept the new key without 
>> seriously looking at it.
> 
> Yes, and in fact that's not what we are designing. I understand the thread is 
> long, but I suggest to at least skim through it.

I did skim through it and one of the proposals did mention that users should 
have to accept every new key (IIRC the one using the distrust tool/framework).

> The basic idea is that the tool will have to trust PyPI when it says that key 
> ABCD1234 is authorized to sign package "foo". So PyPI would be the central 
> authority of package signature trust. This reaches the compromises of perfect 
> user interface (no questions asked) and protection against a few types of 
> attacks (write access to the file area, pypi credentials stolen).

That should work (both security wise and for the UI)

> 
>> What I'd like to see is a system where I can be reasonably sure that when I 
>> do "<tool> install <package>" I'll get that package (and its dependencies) 
>> of PyPI, without a MITM interfering and with some assurance that the package 
>>  is uploaded by an authorized user and the contents is what that user wants 
>> it to be.   Anything beyond that, such explicitly trusting individual 
>> developers might be useful in the long run but has a clear risk of making 
>> package installation more complicated.
> 
> Yes. Again, that's what we are designing.

Great. Thanks for confirming that.

Ronald
_______________________________________________
Catalog-SIG mailing list
[email protected]
http://mail.python.org/mailman/listinfo/catalog-sig

Reply via email to