The (1) filesystem::getwmllocation function in filesystem.cpp and (2) islegalfile function in filesystemboost.cpp in Battle for Wesnoth before 1.12.4 and 1.13.x before 1.13.1, when a case-insensitive filesystem is used, allow remote attackers to obtain sensitive information via vectors related to inclusion of .pbl files from WML. NOTE: this vulnerability exists because of an incomplete fix for CVE-2015-5069.
Quoting from http://www.openwall.com/lists/oss-security/2015/06/25/2 "Wesnoth implements a text preprocessing language that is used in conjunction with its own game scripting language. It also has a built-in Lua interpreter and API. Both the Lua API and the preprocessor make use of the same function (filesystem::getwmllocation()) to resolve file paths so that only content from the user's data directory can be read.
However, the function did not explicitly disallow files with the .pbl extension. The contents of these files could thus be stored in saved game files or even transmitted directly to other users in a networked game. Among the information that's compromised is a user-defined passphrase used to authenticate uploads to the game's content server.
This issue was found by Toom Lõhmus, then verified and fixed by Ignacio R. Morelle."
There have been two patches, [3] and [4]. Patch [3] did only take lowercase extensions into account and was incomplete. Patch [3] is CVE-2015-5069. Patch [4] is an additional patch, fixing the lowercase problem. Patch [4] is CVE-2015-5070.
[1] http://www.openwall.com/lists/oss-security/2015/06/25/2 [2] https://gna.org/bugs/?23504 (currently restricted)
Patches:
Incomplete fix as it only handles lowercase extensions. CVE-2015-5069 [3] https://github.com/wesnoth/wesnoth/commit/f8914468182e8d0a1551b430c0879ba236fe4d6d
Complete fix, CVE-2015-5070 [4] https://github.com/wesnoth/wesnoth/commit/b2738ffb2fdd2550ececb74f76f75583c43c8b59
The WML/Lua API in Battle for Wesnoth 1.7.x through 1.11.x and 1.12.x before 1.12.2 allows remote attackers to read arbitrary files via a crafted (1) campaign or (2) map file.