Possible widespread PHP configuration issue - security risk
Cliff Wells
cliff at develix.com
Fri Aug 27 22:13:04 MSD 2010
On Fri, 2010-08-27 at 18:48 +0100, Ed W wrote:
> On 27/08/2010 18:05, Cliff Wells wrote:
> > Nevertheless, I've updated the MediaWiki entry.
>
> I'm still having problems getting to the wiki - no .js files are loading
> which is causing some wierd stuff to happen.
I do not see any issues... does anyone else have a problem?
> However, my opinion is that just adding try_files is only a partial
> fix. If some way is found to upload .php files (bad wikipedia config)
I don't think we should try to overcome people's intentional
configuration. Not only is it completely their fault if they go
through the difficulty of enabling a feature that is off by default, but
now we are attempting to impose our will on a user who has made a
specific decision. This is always a bad road in software.
> or some other exploit is found that can bypass the try_files then we
> still have an issue.
Not going to worry about such speculative future issues. If such an
issue arises it will need to be addressed as an Nginx patch, not a
configuration option.
>
> My mediawiki config does this:
>
> location ~ .*.php$ {
> include /etc/nginx/fastcgi_params;
> if ( $uri !~ "^/images/") {
> fastcgi_pass localhost:9000;
> }
> }
>
> Others have already pointed out that we can do better than my IF.
> However, your try_files, plus the explicit exclusion of the /images/ dir
> go a long way to secure mediawiki. Also I think the specific exclusion
> of the /images/ dir becomes quite self-documenting, whereas the
> try_files is quite a subtle fix?
It is subtle, but all fixes are, because the underlying vulnerability is
quite subtle. What user isn't going to look at that and say to
themselves "why do I need this if statement?". Just use the try_files
and add a comment to its purpose.
Cliff
More information about the nginx
mailing list