Re: Useless error message?
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Apr 22, 2010, 10:15 UTC
- Message-ID
- <20100422101535.GB625@progeny.tock>
- In-Reply-To
- <4BD01E09.8080504@op5.se>
Andreas Ericsson wrote:
> On 04/22/2010 11:42 AM, Jonathan Nieder wrote:
Show 7 quoted lines
>> [1] I do suspect that in the case of failing enter_repo() or missing >> git-daemon-export-ok, saying “cannot read the specified repo” would be >> fine. Most of the time, there is not much value in disclosing a more >> detailed reason, anyway. > > That would make it possible for random attackers to determine whether > a specific user exists on the system, which is very bad indeed.
I guess I am missing something. How would
(*) $ git clone git://git.example.com/~u/foo
remote: Cannot read the specified repotell me whether that user existed on the system? If the daemon gives the same message for ENOENT, missing git-daemon-export-ok, EPERM, and so on so I cannot distinguish the cases, then I just don’t see the problem.
If the daemon failed for some other reason, like a flaky network, I would see
$ git clone git://git.example.com/~u/foo
fatal: The remote end hung up unexpectedlySo the extra information could still be helpful, without unwanted information disclosure. In the case (*) I learn definitively that the address I specified does not represent a repo I have access to, rather than this being some random, transient unexplained problem.
Thanks for the comment. Jonathan