Arch Linux Security Advisory ASA-202101-22
==========================================

Severity: Medium
Date    : 2021-01-12
CVE-ID  : CVE-2020-35474 CVE-2020-35475 CVE-2020-35477 CVE-2020-35478
          CVE-2020-35479 CVE-2020-35480
Package : mediawiki
Type    : multiple issues
Remote  : Yes
Link    : https://security.archlinux.org/AVG-1371

Summary
=======

The package mediawiki before version 1.35.1-1 is vulnerable to multiple
issues including cross-site scripting and information disclosure.

Resolution
==========

Upgrade to 1.35.1-1.

# pacman -Syu "mediawiki>=1.35.1-1"

The problems have been fixed upstream in version 1.35.1.

Workaround
==========

None.

Description
===========

- CVE-2020-35474 (cross-site scripting)

In MediaWiki before 1.35.1, the combination of Html::rawElement and
Message::text leads to XSS because the definition of
MediaWiki:recentchanges-legend-watchlistexpiry can be changed onwiki so
that the output is raw HTML.

- CVE-2020-35475 (cross-site scripting)

In MediaWiki before 1.35.1, the messages userrights-expiry-current and
userrights-expiry-none can contain raw HTML. XSS can happen when a user
visits Special:UserRights but does not have rights to change all
userrights, and the table on the left side has unchangeable groups in
it. (The right column with the changeable groups is not affected and is
escaped correctly.)

- CVE-2020-35477 (information disclosure)

MediaWiki before 1.35.1 blocks legitimate attempts to hide log entries
in some situations. If one sets MediaWiki:Mainpage to
Special:MyLanguage/Main Page, visits a log entry on Special:Log, and
toggles the "Change visibility of selected log entries" checkbox (or a
tags checkbox) next to it, there is a redirection to the main page's
action=historysubmit (instead of the desired behavior in which a
revision-deletion form appears).

- CVE-2020-35478 (cross-site scripting)

MediaWiki before 1.35.1 allows XSS via BlockLogFormatter.php.
MediaWiki:blanknamespace potentially can be output as raw HTML with
SCRIPT tags via LogFormatter::makePageLink(). This affects MediaWiki
1.33.0 and later.

- CVE-2020-35479 (cross-site scripting)

MediaWiki before 1.35.1 allows XSS via BlockLogFormatter.php.
Language::translateBlockExpiry itself does not escape in all code
paths. For example, the return of Language::userTimeAndDate is is
always unsafe for HTML in a month value. This affects MediaWiki 1.12.0
and later.

- CVE-2020-35480 (information disclosure)

An issue was discovered in MediaWiki before 1.35.1. Missing users
(accounts that don't exist) and hidden users (accounts that have been
explicitly hidden due to being abusive, or similar) that the viewer
cannot see are handled differently, exposing sensitive information
about the hidden status to unprivileged viewers. This exists on various
code paths.

Impact
======

A malicious remote user might execute code in the browser or disclose
sensitive information.

References
==========

https://bugs.archlinux.org/task/69132
https://lists.wikimedia.org/pipermail/mediawiki-announce/2020-December/000268.html
https://phabricator.wikimedia.org/T268894
https://github.com/wikimedia/mediawiki/commit/a8b1d863bccc6b326329d0593f8126c351c6e1be
https://phabricator.wikimedia.org/T268917
https://github.com/wikimedia/mediawiki/commit/1f9756a4905cf61dbb3a3d742a0e2296d555c6fe
https://phabricator.wikimedia.org/T205908
https://github.com/wikimedia/mediawiki/commit/ac7aa53532bab782c7453e302d20e8a0712c8395
https://phabricator.wikimedia.org/T268938
https://github.com/wikimedia/mediawiki/commit/3437133440b6d535c25e4ae28020c809a30849b5
https://github.com/wikimedia/mediawiki/commit/78663c50df6b953f4c832e1530515ebe91e1eb5d
https://phabricator.wikimedia.org/T120883
https://github.com/wikimedia/mediawiki/commit/15bed1201ea21ce477a16e9d02170244b0086fb4
https://github.com/wikimedia/mediawiki/commit/aca0e52f5ce9312a4af4f411c756497902483a48
https://security.archlinux.org/CVE-2020-35474
https://security.archlinux.org/CVE-2020-35475
https://security.archlinux.org/CVE-2020-35477
https://security.archlinux.org/CVE-2020-35478
https://security.archlinux.org/CVE-2020-35479
https://security.archlinux.org/CVE-2020-35480