On 05/13/2013 12:47 PM, Thomas Delafosse wrote:
> On Mon, May 13, 2013 at 6:24 PM, Sergiu Dumitriu <[email protected]> wrote:
> 
>> On 05/13/2013 12:13 PM, Thomas Delafosse wrote:
>>> I think it's more secure to let it be used only on the current user
>> profile
>>> page. Otherwise we can imagine an attacker creating a page where this
>> check
>>> is performed against the current user, enabling him to gain information
>>> about the users visiting this page.
>>> (For example he could do something like
>>> #foreach($passwd in $passwdList)
>>>    #if($xwiki.getUser().checkPassword($passwd))
>>>       Store this information somewhere (in another doc, in an object, or
>>> even by sending me a mail)
>>>    #end
>>> #end)
>>
>> This can still be done "apparently" in the context of the profile
>> document using, for example, something like XWIKI-8885. This is just
>> another inefficient hoop through which we force motivated attackers to
>> go through, but which doesn't fix the security issue.
>>
> 
> You are right, there is currently ways to workaround this check. But I hope
> that with Andreas' branch it would be harder to find such leaks, and anyway
> it makes this attack available only to attackers having found these leaks.
> Even if this is not perfect, I feel more comfortable this way.
> 
> 
>>
>> On the other hand, it restricts its usage to just one specific purpose,
>> that of changing the password, when it could serve other useful (future)
>> scenarios, like confirming some dangerous changes (signing a script,
>> installing a XAR as backup package, permanently emptying the trash bins).
>>
> 
> I agree, it could be useful to check the password at some other points. So
> what we could do is allow public check only from the user's profile page,
> and PR check from any page. The issue with the change of password is that
> the template doesn't have PR, but I guess that in the scenarios you
> mention, this would be done from a normal wiki page, and thus we could ask
> this page to have PR. What do you think ?

Agreed.

> 
>>
>>> And I don't think that users with PR need to be able to make this check
>> on
>>> any user (and if they need they can still perform it through the core),
>> so
>>> I prefer to keep it this way.
>>
>> Agreed.
>>
>>> Cheers,
>>>
>>> Thomas
>>>
>>>
>>> On Mon, May 13, 2013 at 5:42 PM, Sergiu Dumitriu <[email protected]>
>> wrote:
>>>
>>>> On 05/06/2013 09:44 AM, Thomas Delafosse wrote:
>>>>> Hi all,
>>>>>
>>>>>     After discussing it with Vincent, it seems that it would be better
>> to
>>>>> be able to access this method without PR : thus we could keep the code
>>>> for
>>>>> changing the password in passwd.vm instead of having to make a new page
>>>>> with PR for that. To avoid malicious users to use it nonetheless, I
>>>> propose
>>>>> that this method could only be used to check the current user password,
>>>> and
>>>>> only on its profile page.
>>>>> Does this seems OK to you, or do you think this should be done another
>>>> way ?
>>>>
>>>> Why only on the user's profile page?
>>>>
>>>> The method could allow public check only for the current user, and PR
>>>> check for any user.
>>


-- 
Sergiu Dumitriu
http://purl.org/net/sergiu
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to