From bcd476a43f2365a48db8c17d0a7076b6a2e0ce92 Mon Sep 17 00:00:00 2001 From: Mark Sapiro Date: Sat, 3 Feb 2018 18:00:40 -0800 Subject: It's not necessary to replace _ with - in language codes for reCAPTCHA. --- Mailman/Cgi/listinfo.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'Mailman') diff --git a/Mailman/Cgi/listinfo.py b/Mailman/Cgi/listinfo.py index bab460b6..428834ba 100644 --- a/Mailman/Cgi/listinfo.py +++ b/Mailman/Cgi/listinfo.py @@ -21,7 +21,6 @@ # No lock needed in this script, because we don't change data. import os -import re import cgi import time @@ -246,14 +245,13 @@ def list_listinfo(mlist, lang): replacements[''] = mlist.FormatBox('fullname', size=30) # If reCAPTCHA is enabled, display its user interface if mm_cfg.RECAPTCHA_SITE_KEY: - rlang = re.sub('_', '-', lang) replacements[''] = ( """ 
""" - % (rlang, mm_cfg.RECAPTCHA_SITE_KEY)) + % (lang, mm_cfg.RECAPTCHA_SITE_KEY)) else: replacements[''] = '' -- cgit v1.2.3 From 2dfcd18a5d2982f2f21ff02539f992ba5041808c Mon Sep 17 00:00:00 2001 From: Mark Sapiro Date: Sun, 4 Feb 2018 08:41:19 -0800 Subject: Fix XSS and info leak in options CGI - CVE-2018-5950 --- Mailman/Cgi/options.py | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) (limited to 'Mailman') diff --git a/Mailman/Cgi/options.py b/Mailman/Cgi/options.py index 93148af8..6608df4f 100644 --- a/Mailman/Cgi/options.py +++ b/Mailman/Cgi/options.py @@ -1,4 +1,4 @@ -# Copyright (C) 1998-2017 by the Free Software Foundation, Inc. +# Copyright (C) 1998-2018 by the Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License @@ -200,20 +200,6 @@ def main(): doc.set_language(userlang) i18n.set_language(userlang) - # See if this is VARHELP on topics. - varhelp = None - if cgidata.has_key('VARHELP'): - varhelp = cgidata['VARHELP'].value - elif os.environ.get('QUERY_STRING'): - # POST methods, even if their actions have a query string, don't get - # put into FieldStorage's keys :-( - qs = cgi.parse_qs(os.environ['QUERY_STRING']).get('VARHELP') - if qs and type(qs) == types.ListType: - varhelp = qs[0] - if varhelp: - topic_details(mlist, doc, user, cpuser, userlang, varhelp) - return - # Are we processing an unsubscription request from the login screen? msgc = _('If you are a list member, a confirmation email has been sent.') msga = _("""If you are a list member, your unsubscription request has been @@ -340,6 +326,22 @@ def main(): print doc.Format() return + # See if this is VARHELP on topics. + varhelp = None + if cgidata.has_key('VARHELP'): + varhelp = cgidata['VARHELP'].value + elif os.environ.get('QUERY_STRING'): + # POST methods, even if their actions have a query string, don't get + # put into FieldStorage's keys :-( + qs = cgi.parse_qs(os.environ['QUERY_STRING']).get('VARHELP') + if qs and type(qs) == types.ListType: + varhelp = qs[0] + if varhelp: + # Sanitize the topic name. + varhelp = re.sub('<.*', '', varhelp) + topic_details(mlist, doc, user, cpuser, userlang, varhelp) + return + if cgidata.has_key('logout'): print mlist.ZapCookie(mm_cfg.AuthUser, user) loginpage(mlist, doc, user, language) -- cgit v1.2.3 From efb0588b6eca8063fcefdd376335322db1cbb758 Mon Sep 17 00:00:00 2001 From: Mark Sapiro Date: Sun, 4 Feb 2018 09:02:00 -0800 Subject: Bumped branch version to: 2.1.26 --- Mailman/Version.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'Mailman') diff --git a/Mailman/Version.py b/Mailman/Version.py index 28ac4daf..1a5775b3 100644 --- a/Mailman/Version.py +++ b/Mailman/Version.py @@ -16,7 +16,7 @@ # USA. # Mailman version -VERSION = '2.1.25' +VERSION = '2.1.26' # And as a hex number in the manner of PY_VERSION_HEX ALPHA = 0xa @@ -28,7 +28,7 @@ FINAL = 0xf MAJOR_REV = 2 MINOR_REV = 1 -MICRO_REV = 25 +MICRO_REV = 26 REL_LEVEL = FINAL # at most 15 beta releases! REL_SERIAL = 0 -- cgit v1.2.3