Apache Wicket 6.x before 6.25.0, 7.x before 7.5.0, and 8.0.0-M1 provide a CSRF prevention measure that fails to discover some cross origin requests. The mitigation is to not only check the Origin HTTP header, but also take the Referer HTTP header into account when no Origin was provided. Furthermore, not all Wicket server side targets were subjected to the CSRF check. This was also fixed.
{"openvas": [{"lastseen": "2019-05-29T18:34:51", "description": "The host is installed with Apache Wicket\n and is prone to a vulnerability affecting the cross-site request forgery (CSRF) detection.", "cvss3": {}, "published": "2017-10-10T00:00:00", "type": "openvas", "title": "Apache Wicket CSRF Detection Vulnerability", "bulletinFamily": "scanner", "cvss2": {}, "cvelist": ["CVE-2016-6806"], "modified": "2018-10-19T00:00:00", "id": "OPENVAS:1361412562310112077", "href": "http://plugins.openvas.org/nasl.php?oid=1361412562310112077", "sourceData": "###############################################################################\n# OpenVAS Vulnerability Test\n# $Id: gb_apache_wicket_csrf_detect_vuln.nasl 11983 2018-10-19 10:04:45Z mmartin $\n#\n# Apache Wicket CSRF Detection Vulnerability\n#\n# Authors:\n# Adrian Steins <adrian.steins@greenbone.net>\n#\n# Copyright:\n# Copyright (C) 2017 Greenbone Networks GmbH, http://www.greenbone.net\n#\n# This program is free software; you can redistribute it and/or modify\n# it under the terms of the GNU General Public License version 2\n# (or any later version), as published by the Free Software Foundation.\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU General Public License for more details.\n#\n# You should have received a copy of the GNU General Public License\n# along with this program; if not, write to the Free Software\n# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.\n###############################################################################\n\nCPE = \"cpe:/a:apache:wicket\";\n\nif(description)\n{\n script_oid(\"1.3.6.1.4.1.25623.1.0.112077\");\n script_version(\"$Revision: 11983 $\");\n\n script_cve_id(\"CVE-2016-6806\");\n script_tag(name:\"cvss_base\", value:\"6.8\");\n script_tag(name:\"cvss_base_vector\", value:\"AV:N/AC:M/Au:N/C:P/I:P/A:P\");\n\n script_tag(name:\"last_modification\", value:\"$Date: 2018-10-19 12:04:45 +0200 (Fri, 19 Oct 2018) $\");\n script_tag(name:\"creation_date\", value:\"2017-10-10 15:26:12 +0200 (Tue, 10 Oct 2017)\");\n\n script_tag(name:\"qod_type\", value:\"remote_banner\");\n\n script_name(\"Apache Wicket CSRF Detection Vulnerability\");\n\n script_tag(name:\"summary\", value:\"The host is installed with Apache Wicket\n and is prone to a vulnerability affecting the cross-site request forgery (CSRF) detection.\");\n\n script_tag(name:\"vuldetect\", value:\"Checks if a vulnerable version is present on the target host.\");\n\n script_tag(name:\"insight\", value:\"Affected versions of Apache Wicket provide a CSRF prevention\n measure that fails to discover some cross origin requests\");\n\n script_tag(name:\"affected\", value:\"Apache Wicket 6.20.0, 6.21.0, 6.22.0, 6.23.0, 6.24.0, 7.0.0,\n 7.1.0, 7.2.0, 7.3.0, 7.4.0 and 8.0.0-M1\");\n\n script_tag(name:\"solution\", value:\"6.x users should upgrade to 6.25.0, 7.x users should upgrade to\n 7.5.0 and 8.0.0-M1 users should upgrade to 8.0.0-M2.\");\n\n script_tag(name:\"solution_type\", value:\"VendorFix\");\n\n script_xref(name:\"URL\", value:\"https://lists.apache.org/thread.html/074b72585f4b7c6adda1af52aecbfe1be23c6d6f5bb9382270f059cd@%3Cannounce.apache.org%3E\");\n\n script_copyright(\"Copyright (C) 2017 Greenbone Networks GmbH\");\n\n script_category(ACT_GATHER_INFO);\n\n script_family(\"Web application abuses\");\n script_dependencies(\"gb_apache_wicket_detect.nasl\");\n script_mandatory_keys(\"Apache/Wicket/Installed\");\n script_require_ports(\"Services/www\", 8080);\n\n script_xref(name:\"URL\", value:\"http://wicket.apache.org\");\n exit(0);\n}\n\ninclude(\"host_details.inc\");\ninclude(\"version_func.inc\");\ninclude(\"revisions-lib.inc\");\n\nif(!port = get_app_port(cpe:CPE)){\n exit(0);\n}\n\nif(!ver = get_app_version(cpe:CPE, port:port)){\n exit(0);\n}\n\nif(ver =~ \"^(6\\.)\")\n{\n if(version_is_less(version:ver, test_version:\"6.25.0\")){\n fix = \"6.25.0\";\n }\n}\nelse if(ver =~ \"^(7\\.)\")\n{\n if(version_is_less(version:ver, test_version:\"7.5.0\")){\n fix = \"7.5.0\";\n }\n}\nelse if(ver =~ \"^(8\\.)\")\n{\n if(version_is_equal(version:ver, test_version:\"8.0.0-M1\")){\n fix = \"8.0.0-M2\";\n }\n}\n\nif(fix)\n{\n report = report_fixed_ver(installed_version:ver, fixed_version:fix);\n security_message(data:report, port:port);\n exit(0);\n}\n\nexit(99);\n", "cvss": {"score": 6.8, "vector": "AV:N/AC:M/Au:N/C:P/I:P/A:P"}}]}