Current configuration on the wiki
Find a file
C. Scott Ananian 94f193a894 SECURITY: Ensure emitted HTML is safe against Unicode NFC normalization
CVE-2025-32699

Ensure that Unicode NFC normalization can be applied to our HTML
output safely.  Even though the W3C officially recommends against
normalizing HTML

https://www.w3.org/International/questions/qa-html-css-normalization#converting

this is still easily done inadvertently, especially when using the
MediaWiki action API which normalizes parameters and results by
default.

See also I671648603c4635a35585c860b4857f5ea085e47f in Parsoid, and
T266140 / I2e78e660ba1867744e34eda7d00ea527ec016b71 for another similar
issue.

The following changes are made:

* The various HTML serializers (Remex/Tidy-derived, as well as the
  Html::* helpers) are tweaked to entity-escape U+0338 wherever it
  appears.

* Similarly, Message::escaped() is tweaked to entity-escape U+0338.

* Finally, a post-processing pass is added to the OutputTransform
  pipeline to catch any remaining U+0338 and entity-escape them.
  This catches U+0338 added during any of the previous OutputTransform
  stages (like TOC insertion, section edit links, etc).
  *When backporting* this code will likely need to be moved to
  ParserOutput::getText(), as the OutputTransform pipeline wasn't added
  until MW 1.42.

Bug: T387130
Change-Id: I66564e14e730f5393f4fa5780b80f24de6075af5
2025-04-10 15:56:06 +01:00
.phan Introduce minimal OTEL tracing library 2024-10-09 15:55:31 +02:00
cache In .htaccess deny files, use "Satisfy All" 2025-04-04 13:17:15 +00:00
docs DnsBlacklistUrls: Remove sorbs.net 2025-01-06 22:57:01 +00:00
extensions Update git submodules 2025-04-08 06:31:08 +00:00
images Set "X-Content-Type-Options: nosniff" header in images/.htaccess 2023-02-24 23:59:22 -05:00
includes SECURITY: Ensure emitted HTML is safe against Unicode NFC normalization 2025-04-10 15:56:06 +01:00
languages Merge "block: Fix DBS::acquireTarget() race using GET_LOCK()" into REL1_43 2025-04-08 23:04:22 +00:00
maintenance In .htaccess deny files, use "Satisfy All" 2025-04-04 13:17:15 +00:00
mw-config installer: Fix class name in example override 2025-01-25 15:07:10 +00:00
resources Commit swagger-ui's NOTICE 2025-01-15 16:09:22 +00:00
skins Update git submodules 2025-04-08 06:32:33 +00:00
tests SECURITY: Ensure emitted HTML is safe against Unicode NFC normalization 2025-04-10 15:56:06 +01:00
vendor@8964505595 Update git submodules 2025-03-26 21:44:08 +00:00
.dockerignore
.editorconfig Fix .editorconfig for tests/parser/ directory 2024-02-27 17:35:16 +01:00
.eslintignore REST: validate JSON in tests 2024-09-20 15:42:32 +00:00
.eslintrc.json eslint: Only apply client rules to client files 2022-02-09 02:40:11 +00:00
.fresnel.yml Add explanatory comment for .fresnel.yml 2022-02-01 20:32:20 -05:00
.git-blame-ignore-revs Add .git-blame-ignore-revs 2024-06-02 23:03:04 +02:00
.gitattributes .gitattributes: Ship docker-compose.yml to the tarball 2022-11-30 09:37:13 -05:00
.gitignore Branch commit for REL1_43 2024-10-22 12:47:33 -04:00
.gitmessage git: Introduce .gitmessage 2023-05-21 14:20:31 +03:00
.gitmodules Branch commit for REL1_43 2024-10-22 12:47:33 -04:00
.gitreview
.mailmap build: De-duplicate two recent CREDITS additions via mailmap 2024-09-11 10:02:02 -07:00
.phpcs.xml build: Use inline ignore for MediaWiki.Usage.DeprecatedGlobalVariables 2024-09-26 18:15:32 +00:00
.stylelintrc.json Login page: Use Codex CSS components 2023-07-06 17:20:17 -07:00
.svgo.config.js build: Update SVGO to v3.0.2 2023-06-15 12:24:22 -07:00
.vsls.json build: Upgrade eslint-config-wikimedia from 0.22.1 to 0.24.0 2023-02-07 10:17:30 -05:00
api.php Namespace includes/context 2024-02-08 11:07:01 -05:00
autoload.php SECURITY: Ensure emitted HTML is safe against Unicode NFC normalization 2025-04-10 15:56:06 +01:00
CODE_OF_CONDUCT.md
composer.json ResourceLoader: update wikimedia/minify to 2.9.0 2025-03-26 21:44:50 +00:00
composer.local.json-sample composer.local.json-sample: merge */composer.json 2022-02-07 16:24:23 +01:00
COPYING
CREDITS build: De-duplicate two recent CREDITS additions via mailmap 2024-09-11 10:02:02 -07:00
DEVELOPERS.md Codex: Allow a local development version to be used 2024-08-22 17:20:24 -07:00
docker-compose.yml dev(docker): Bump mediawiki-web container to dev/bookworm-apache2:1.0.1 2025-01-07 17:02:36 +00:00
FAQ
Gruntfile.js Merge "codex: Provide i18n function and messages" 2024-07-03 07:06:47 +00:00
HISTORY HISTORY: Add point releases 2024-10-01 02:21:50 +01:00
img_auth.php filerepo: extract AuthenticatedFileEntryPoint from img_auth.php 2024-05-16 13:22:00 +02:00
index.php Namespace includes/context 2024-02-08 11:07:01 -05:00
INSTALL Move ext-openssl from suggest to require 2024-05-05 09:42:06 +00:00
jsdoc.json Update jsdoc-wmf-theme from 1.0.1 to 1.1.0 2024-06-27 19:29:24 +00:00
load.php ResourceLoader: Follow-up creation of ResourceLoaderEntryPoint 2024-02-22 22:30:39 +00:00
opensearch_desc.php Replace direct use of $wgRestPath with wfScript() 2024-07-01 22:01:32 +00:00
package-lock.json build: Updating npm dependencies 2025-01-06 08:38:45 -05:00
package.json Merge "Update Codex from v1.13.1 to v1.14.0" 2024-10-16 17:26:41 +00:00
phpunit.xml.dist phpunit: Determine what extensions to load in unit tests via config 2023-09-25 23:03:48 +00:00
README.md docs: Link to "Local development quickstart" in README 2024-01-22 13:58:11 +00:00
RELEASE-NOTES-1.43 RELEASE-NOTES-1.43: Update 2025-04-09 12:46:31 +00:00
rest.php Use namespaced classes (1) 2024-06-16 20:18:23 +02:00
SECURITY
thumb.php Use namespaced classes (1) 2024-06-16 20:18:23 +02:00
thumb_handler.php Use namespaced classes (1) 2024-06-16 20:18:23 +02:00
UPGRADE UPGRADE: Update mailing list archive link 2024-04-14 21:36:52 +03:00

MediaWiki

MediaWiki is a free and open-source wiki software package written in PHP. It serves as the platform for Wikipedia and the other Wikimedia projects, used by hundreds of millions of people each month. MediaWiki is localised in over 350 languages and its reliability and robust feature set have earned it a large and vibrant community of third-party users and developers.

MediaWiki is:

  • feature-rich and extensible, both on-wiki and with hundreds of extensions;
  • scalable and suitable for both small and large sites;
  • simple to install, working on most hardware/software combinations; and
  • available in your language.

For system requirements, installation, and upgrade details, see the files RELEASE-NOTES, INSTALL, and UPGRADE.

MediaWiki is the result of global collaboration and cooperation. The CREDITS file lists technical contributors to the project. The COPYING file explains MediaWiki's copyright and license (GNU General Public License, version 2 or later). Many thanks to the Wikimedia community for testing and suggestions.